PitDroid: An Android app for your HeaterMeter


 

Uipko Berghuis

New member
I've also a problem with getting a connection (on Android 2.3.7 [CM7]). Did not have this problem before upgrading the HM to v10. I'll have a look at the code to see if I can find something.
 

Uipko Berghuis

New member
I've found the problem as far as I can tell the output of /luci/lm/hist has changed a bit. The app was crashing on
"1383636780,nan,nan,nan,nan,nan,nan" because it was trying to parse the pit temp (second) nan as an integer. Can anybody confirm that this is changed in v10 or maybe before? I'm not totally sure if I was up-to-date before upgrading to v10

I've created a patch and sent it to Colin, hopefully he has some time to make a new release.
 

Bryan Mayland

TVWBB Hall of Fame
That's been like that since version 1. In fact, if you notice the parameter to the /luci/lm/hist is nancnt, which overrides the server's autodetection of how many nans there are.
 

Uipko Berghuis

New member
That's been like that since version 1. In fact, if you notice the parameter to the /luci/lm/hist is nancnt, which overrides the server's autodetection of how many nans there are.

Hmmm interesting, maybe something else change in my setup. Is it possible that I did not had the "time,nan*" lines before? I can't see how the app could have worked before with these value's.

Anyway I've added a check to prevent converting the nan to an integer.
 

Bryan Mayland

TVWBB Hall of Fame
The first value is actually the setpoint. There can be a nan setpoint if there's no data for that time period, such as if the device was rebooted and restored from autobackup. The linkmeterd server removes any leading nan rows, but gaps it leaves in so is it possible you've got a gap?
 

Uipko Berghuis

New member
That's right the hist starts with ~5 normal rows and then a lot of nan rows before it goes on with the normal readings. That explains why it doesn't happen always. There where other people complaining about not getting a connection, hopefully I did, by accident, hit the underlying problem here. Just out of curiosity how do I trigger this situation? And may be more important how do I get rid of the gap?

My fix for the app is to ignore all lines with setpoint=nan, I guess this is a save bet. Is it possible to loose valuable info with this approach in other words is it plausible to have a setpoint=nan and useful values for the probes?
 

Bryan Mayland

TVWBB Hall of Fame
If you have missing data you'll always have a gap. You handle it just like a missing probe temperature, right? I mean gaps in the data aren't uncommon. In the case of a blank setpoint it is probably safe to ignore the whole line but why give it a special case? It's just a series with a gap in the data.

You can trigger the situation by stopping the linkmeterd / LuCId then restarting it later. You can also reboot the device which will leave a gap since the last autobackup.
 

Riku Naskali

TVWBB Member
Does Pitdroid work with nonstandard port? I tried to input my port with ip address to Pitdroid, but it failed to connect.

Port 80 is blocked by my IP to internet, so I can't use it. Outside access works fine with browser using port 500.
 

John Bostwick

TVWBB Wizard
Does Pitdroid work with nonstandard port? I tried to input my port with ip address to Pitdroid, but it failed to connect.

Port 80 is blocked by my IP to internet, so I can't use it. Outside access works fine with browser using port 500.

It works for me inside network. the HM is connected to my router with 192.168.1.17 and if I connect my phone to wifi and put that into the PitDroid it works, although the bug that they are talking about above will make it not connect sometimes.
 

Uipko Berghuis

New member
Does Pitdroid work with nonstandard port? I tried to input my port with ip address to Pitdroid, but it failed to connect.

Port 80 is blocked by my IP to internet, so I can't use it. Outside access works fine with browser using port 500.

This an address like this "192.168.1.42:8888" should work, it works on my computer ;). I also used a dyndns url with a port number with success. Take care of not adding http:// or https:// in front of the server address. The current version of the app adds http:// in the code to the address. In the new version there's a check so you can also use http(s):// in the server address.
 

Colin Bonstead

TVWBB Member
Hey guys, I lost track of the thread because I didn't log in to check one of the updates, then it stopped emailing me until I logged in again. Anyway, Uipko has sent me his patches and I'll try to get a point release rolled out this weekend with his fixes.
 
Hey guys, I lost track of the thread because I didn't log in to check one of the updates, then it stopped emailing me until I logged in again. Anyway, Uipko has sent me his patches and I'll try to get a point release rolled out this weekend with his fixes.

Thanks Colin! How could one buy you guys a beverage?
 

Riku Naskali

TVWBB Member
Well that's weird, that's exactly how I've tried it. I've tried it with numeric ip and also with a dynamic dns and no http:// in front of the address.
 

Colin Bonstead

TVWBB Member
Ok, I need help. I have wasted sooo much time on "Dalvik error 1" while trying to compile final releases and I just can't take it any more. It's related to the gridlayout compatibility library that I use to support Android 2.2. When I compile the signed package for uploading to the Play store it decides that there are two copies of that jar file and poops out "Dalvik error 1". (So helpful, thank you Google!) In the past I've worked around this by temporarily futzing around with the build path settings, but I forgot what I did and frankly I'm fed up with the whole process. I would love for some other Android dev to tell me I'm a dumbass and show me how to fix it once and for all. I've got a new release with Uipko's fixes that I'll push out once I'm able to sign the stinking package.
 

Colin Bonstead

TVWBB Member
Well, according to the play store stats, about 13% of PitDroid users are still on 2.x. Not a ton, but I would hate to exclude them for something silly like this. I might just look around for a 3rd party alternative to the gridlayout too, I saw something that might work when I was hunting around for a solution last night.
 

Colin Bonstead

TVWBB Member
Ok, I just uploaded the latest version to the Play store. I can't find my Android 4.x phone (I actually switched to Windows Phone for my daily driver), so I only tested this on an old 2.x one. It worked there, so hopefully there won't be any 4.x issues. It includes all the fixes and tweaks from Uipko, and I switched to a new gridlayout library so I hopefully won't have any issues in the future. The update should be rolling out in the next few hours, let me know if you have any issues.
 

Riku Naskali

TVWBB Member
Thanks! Now I can connect to my server using dyndns and port 500!

However, still can't authenticate with my Android phone (it's on 2.x cm7), works fine though with my tablet on Android 4.x (cm10).

Doesn't really bother me at all, I can still view what's going on with my phone. Just need to get out my tablet or browset to change the pit temp.
 

 

Top