PitDroid: An Android app for your HeaterMeter


 
Well, after an hour and a half of frustrating back and forth I figured out the magic settings to make the GridLayout library work. Basically, it worked fine during all my testing over the weekend, but when I went to make the special version for the Play store it gave me a cryptic error. When I "fixed" that it made it start crashing. Now I fixed it for real. Sigh, what a waste of time. Anyway, the fixed version should hopefully be downloading to your phone soon, sorry for the inconvenience.
 
Bad news, App loads again but still crashes if you touch the graph

Update: You can click back and forth between tabs but if you touch the graph about 10 seconds later it crashes
 
Last edited:
Looks like you're right. I'm sure it's something related to the fact that there's no data, because as soon as you actually connect to the HeaterMeter it works fine. I'll fix that in the next version but I don't think I'll put out an update just to fix that, since it's pretty easy to avoid.
 
Mine hasn't crashed in over an hour. zoomed/scrolled the graph quite a bit. My heatermeter has been chugging away in the basement for 2 days now (Left it on while I'm at work so I can get forwarding working).
 
I'm totally jealous at the moment over this app, cause I don't have a smart phone, my phone is only clever! I can't run android apps but I do have a web browser on the phone, problem is when I try to load the LinkMeter home page it tells me the web page is too large to load. Is there by chance a special smaller page that I can load on my not so smart phone? I don't so much need to change anything, I would just like to view the temperatures from the phone if possible....
 
What is this, 1999?! I can probably put that in the next version, a super low-resource page with just the temps on it.

Well, tonight I'm gonna party like its 1999! LOL
But seriously, a low resource page that just showed the temps would be great, at least for my clever phone...
 
Hi Colin,

Looks like you're right. I'm sure it's something related to the fact that there's no data, because as soon as you actually connect to the HeaterMeter it works fine. I'll fix that in the next version but I don't think I'll put out an update just to fix that, since it's pretty easy to avoid.

I'm a Android developer and I would like to do some work on the app, so that I can give something back to this great project! Do you already have an idea how to handle this? Can I get access to the repos or do you want me to send patch files?

To get familiar with the code I've had a look at this issue. I've a (quick) fix for this problem I can send you the patch if you are interested in this fix?

Cheers,
Uipko
 
My phone will run JAVA apps, but not Android. Any chance of you putting out a JAVA app?
I started to extract the APK to java code, got about halfway through and got too deep, as I am not a java programmer. I would really like to be able to monitor my pit from my phone....
Thanks for your work developing this app, even if I can't use it....
 
My phone will run JAVA apps, but not Android. Any chance of you putting out a JAVA app?
I started to extract the APK to java code, got about halfway through and got too deep, as I am not a java programmer.

Sorry, IMHO that's not an realistic option. J2ME (JAVA for mobile devices) is way different compared to Android. Starting from scratch would probably the easiest way. Before Android was around I did look into development for J2ME devices for an app with GPS but did not manage to sort it out in the time available. So I don't have real J2ME experience, so maybe I'm totally wrong on this.

But if your smoker/bbq is smarter than your phone maybe it's time for a new phone ;)
 
Yeah I would agree with Uipko, it is like trying to run a windows app on linux because they're both written in C. While something like WINE can get the code to run, the services and libraries it hooks to just aren't there. The android UI library would be downright impossible to replicate even for a java professional.
 
Hey Uipko, sorry for the delayed reply, I've been a little busy and haven't been checking the thread. If you've got improvements go ahead and send me a patch and I'll put it in for the next version. If you end up working on PitDroid more I'll give you commit access to the repo, so you can check in yourself. Thanks for the offer of help BTW!

For anyone that cares, I have done a little work here and there for the next release (still having wrist issues, so I'm taking it easy overall). I've got the auth code working in a simple test case, so the next step is to plug in some kind of admin command, like setting the pit temp. It's still pretty rough right now though, so I need to do some more coding and testing on it before it'll be ready for a public release.
 
Is this too big to load on your phone? It is 1.8KB. I'm trying to get a feel for what size is ok and how it looks
http://home.capnbry.net:22675/luci/lm/light

That actually loaded on my phone just fine, saw all the temps and fan speed etc... Would be great if I could get that working on my HM so I can keep track of my pit temp on this autistic phone I have....

Edit: Just FYI, it seems the title HeaterMeter and the time are quite large on that page, taking up valuable screen space (compared to the text size for the temperatures) It woud be nice if it were the other way around, showing HeaterMeter and time in smaller text and the temperatures either the same or larger. (but not much larger)
 
Last edited:
Great! It will be in the next LinkMeter package release.

I am wondering when the next release will be published? If it's going to be a bit before the release I am wondering if there is anything I can do to mod my system to have the page that works on my phone? or maybe beta test the build you are running?
 
It will probably be a couple of weeks before the next version but you can install the development version from a command line:
opkg --force-reinstall install http://home.capnbry.net:22674/rpi/packages/linkmeter_7_brcm2708.ipk

If you get a ton of errors saying:
check_data_file_clashes: Package linkmeter wants to install file...

Then just execute the opkg command again until it takes it. On my system every first time I try it won't do it, but the second always works.
 
It will probably be a couple of weeks before the next version but you can install the development version from a command line:
opkg --force-reinstall install http://home.capnbry.net:22674/rpi/packages/linkmeter_7_brcm2708.ipk

If you get a ton of errors saying:
check_data_file_clashes: Package linkmeter wants to install file...

Then just execute the opkg command again until it takes it. On my system every first time I try it won't do it, but the second always works.

OK, great, only thing is I am a little linux challenged...
I downloaded that .ipk file, put it on the SD card, then booted the rPi and entered the console. I then typed your command as above substituting the .ipk file name for the URL you listed, but it says it can't find the file. Do I have to put some kind of path in front of the file name? Like I said, I don't know the basic linux commands, if you could help me out I would appreciate it.
Thanks

EDIT: I typed out the URL in the command line (instead of trying to find the file on the SD card) and it seemed to work on the second try. I would still like to know how to locate the file on the SD card though....

I am going to see if I can find the low resource page now and load it on my phone...
Thanks again for all your work and support....
 
Last edited:
I can't seem to load the "light" web page, not sure if my upgrade went bad or what? At the top of the config page it says HeaterMeter | OpenWrt Attitude Adjustment 12.09-rc1 | Load: 0.17 0.09 0.05

I am assuming rc1 means "release candidate 1" so I think it must be upgraded?

When I try to load the URL http://MyIPAddress/luci/lm/light I get the following:

/usr/lib/lua/luci/dispatcher.lua:448: Failed to execute call dispatcher target for entry '/lm/light'.
The called action terminated with an exception:
/usr/lib/lua/luci/controller/linkmeter/lm.lua:13: module 'luci.json' not found:
no field package.preload['luci.json']
no file './luci/json.lua'
no file '/usr/share/lua/luci/json.lua'
no file '/usr/share/lua/luci/json/init.lua'
no file '/usr/lib/lua/luci/json.lua'
no file '/usr/lib/lua/luci/json/init.lua'
no file './luci/json.so'
no file '/usr/lib/lua/luci/json.so'
no file '/usr/lib/lua/loadall.so'
no file './luci.so'
no file '/usr/lib/lua/luci.so'
no file '/usr/lib/lua/loadall.so'
stack traceback:
[C]: in function 'assert'
/usr/lib/lua/luci/dispatcher.lua:448: in function 'dispatch'
/usr/lib/lua/luci/dispatcher.lua:195: in function </usr/lib/lua/luci/dispatcher.lua:194>
 

 

Back
Top