PitDroid: An Android app for your HeaterMeter


 
Has anyone seen The Pit Pal for android. I links to the BBQ Guru. It has some nice features, I am not a programmer but I am willing to help. One feature that would be nice is the enter data on the meat, and it pulls in the weather for your location. You can then email the data to yourself for an archive
 

Bryan Mayland

TVWBB Hall of Fame
FYI Colin, the JSON data format will be changing in the next LinkMeter version:
-- the "temps[].ar" field (alarm ringing) is removed
-- a new "temps[].a" field is added, contains "l" (low alarm limit) "h" (high alarm limit) "r" (ringing indicator, L or H). The limits are negative if the alarm is disabled.

Example
Code:
{"time":1361984419,"set":68,"lid":0,"fan":{"c":0,"a":0},"temps":[
    {"n":"Pit","c":null,"a":{"l":200,"h":300,"r":null}},
    {"n":"Outdoor","c":72.9,"rf":{"s":0,"b":0},"a":{"l":-100,"h":-200,"r":null}},
    {"n":"Ferment","c":32.7,"rf":{"s":0,"b":0},"a":{"l":-100,"h":-200,"r":null}},
    {"n":"Ambient","c":80.3,"a":{"l":-100,"h":80,"r":"H"}}
]}
 
I first want to say this app is great and appreciate all the hard work. I updated the heatmeter and now the app does pull in the data. Is there plans on updating the app?
 

Colin Bonstead

TVWBB Member
I started my new job this week, so I haven't had as much time to mess around with PitDroid. I will update it to the new format soon though, and I'll look into getting the alarms to sound in silent mode. I googled that the other day and apparently all you do is turn up the volume, sound your alarm, then turn it back down. Seems kind of a gross way to do that, but if it works it works!
 

Colin Bonstead

TVWBB Member
I uploaded a new version, with better alarm sound support. I didn't bother updating the JSON format, since it doesn't affect PitDroid currently. When I put in proper admin support I'll switch it over to using the internal alarm points though, since then I'll be able to update them too.
 

Alan Erickson

TVWBB Fan
Pretty neat app.

In the screenshot, what's the -123.7 number? Edit: Nevermind. I got it figured out. Variance from setpoint.

Screenshot_2013-03-09-21-53-26_zps26f68a3a.png


Also, the alarms aren't always triggering for me. The text turns red but the alarm doesn't sound. If I rotate the screen (portrait to landscape), then it goes off. Also, not sure if there's supposed to be an alarm silence or not.
 
Last edited:

Colin Bonstead

TVWBB Member
Because of how Android works the alarm runs in a background service. That means it's somewhat separated from the app. So, even though a probe is over or under an alarm point in the app, the service won't know about it until it does its scheduled check. To get it to work in the app I would have to write separate alarm code for that. Not a big deal, but it just hasn't been something I've prioritized right now. I'm assuming that in general you don't need "to the second" accuracy for the alarms, since smoking is a pretty slow process.

The reason the alarm goes off immediately when you rotate the screen is because when you change orientation in Android it restarts your app by default. That causes it to reschedule the background service timer, which causes it to check right away and trigger.

As for why you'd want a dedicated app instead of the webpage, one reason is that the web page isn't touch optimized. Your big fat finger doesn't work too well with those little buttons. Also, having a dedicated app means we can have stuff like alarms. With the web page, as soon as you switch to another app or your phone goes to sleep the page gets shut down.
 

Colin Bonstead

TVWBB Member
Actually, it already does that RJ. If you have an alarm set it creates an Android service, which puts a persistent notification up to indicate that it's monitoring, and to show an alert if you go over your alarm point. Also, if you select that notification it will bring the app to the foreground. At one point I had it printing the current temperatures up there, but it was kind of annoying since they way Android works the notification will flash every time you update it. I don't start the service and the notification if you don't have an alarm set though, because according to the Android guidelines you're supposed to stop pestering the user and go to sleep when you're not focused. It was funny when I was looking for info about how to make a persistent notification a lot of the replies to threads asking about that were people telling them not to do it. Android really does not want you to keep working or notifying the user if you aren't the active application. PitDroid is somewhat of an exception in that case though, since it's more like an alarm clock.

As a side note, I realized the other day that there isn't any notification currently if you have an alarm set and PitDroid can't contact the HeaterMeter. (Maybe your net connection is down, or the HeaterMeter melted.) In my next update I'll make it so it'll retry a few times, then sound the alarm and let you know that something may be wrong. Also, assuming no one runs into anything terrible I'll go ahead and make a 1.0 version and submit it to Google Play, so people can just install it the normal way, and get updates automatically.
 
Thanks for the reply, i hadn't set any alarms as i was using it on a gas smoker that keeps a consistent temp. I'll play with that next time.

Thanks again for the great app.
 

Shane Woessner

TVWBB Member
I just uploaded a new version with alarm support, the details are in the first post.

Hey Bryan, the graph is done with a library I found, AndroidPlot. The data I am just polling. I looked into using the streamed version, but it doesn't seem like something Android supports. If you want data pushed to you, you're supposed to use some Android cloud thing. Oh, and if anyone wants to look at the code, it's on GoogleCode. I licensed it under the Apache 2.0 license, so people can do what they want with it.
Any way you can make this easily downloadable to tinker with? I have not coded in ages but looks interesting and would like to fiddle with it a bit. Works great for me so far testing with warm water!!
 

Colin Bonstead

TVWBB Member
Well, depends on your definition of easy Shane. The code is all on the GoogleCode page, but it's not in a zip or anything, you need to sync it with Subversion. Once you've got it it's pretty much ready to go though. Just install the Android SDK and open the project in Eclipse.
 

Colin Bonstead

TVWBB Member
FYI, I made some updates and built a 1.0 version today. I uploaded it to the Play store, so you shouldn't have to go through any hoops now, just search for it and install it from there. It said it would take a couple hours before it shows up though. (Also, did anyone know you have to pay $25 to be able to put apps on the Play store, even if they're free? Boo, there goes brisket money!)
 

Jason J

TVWBB Fan
FYI, I made some updates and built a 1.0 version today. I uploaded it to the Play store, so you shouldn't have to go through any hoops now, just search for it and install it from there. It said it would take a couple hours before it shows up though. (Also, did anyone know you have to pay $25 to be able to put apps on the Play store, even if they're free? Boo, there goes brisket money!)

I would be happy to donate some money help cover that cost. Let me know how or if I can.
 

Dale Ward

TVWBB Fan
Google play will not install just offering to uninstall or open. Currently running 0.3
I uninstalled then installed it from google play
 
Last edited:

 

Top