Upgrade options for HM from 2016?


 

Greg Joughin

New member
I bought a HeaterMeter package from my local "dealer" in early 2016 and have used it successfully for a couple of cooks per year since.

However, I've never been able to hook the HM up to my home WiFi (although it will assign IPs for its own local WiFi connection), which is annoying. I'd like to upgrade to whatever is the newest firmware/software that I can use on my hardware, and finally get the HM working on my network so I have access to remote monitoring, etc.

I've got a Raspberry Pi B+ v1.2 (2014), a four-button 3D-printed case, and don't see anything on any PCB what version of the HM hardware. My wireless dongle is an Edimax EW-7811Un (apparently 150Mbps, 802.11n). The microSD card is 128MB (not GB...!).

On the software side, I've got HeaterMeter build version 20150531B.

Can you kind folks tell me what hardware version I've got, what my options for upgrading are, and perhaps help troubleshoot my modest plans to get this all working better than it has been?
 
Last edited:
All hardware versions of the HM can run the latest firmware, so you are good to go, the only restriction is hardware version prior to 4.2 cannot use voltage mode on the blower.

You can go to https://www.heatermeter.com/dl/ to get the firmware, make sure to select your rPi version and I suggest you go with the snapshot release. You can also (optionally) enter your wifi info and click DOWNLOAD at the bottom to DL the firmware with your WIFI info built in. I suggest you try this first, it might just update and fix your wifi at the same time. Note, if you click the download.gz or download.zip links you just get the firmware with no wifi info.

You're gonna need some sort of network connection to get the files to the rPi, I am assuming you have been connecting to the HM directly in AP mode with your phone, and never managed to get the HM connected to your LAN?

Does that rPi have a wired lan port? If so, that is probably the easiest place to start. Connect to the wired lan, dl the update on your PC, connect to HM and flash the update and hope it reboots with working wifi.

Otherwise, never tried this, but I think you should be able to DL the update file on your phone, then connect the the HM in AP mode and flash the HM with the file from the phone. I don't see any reason why that shouldn't work, but again, never tried to upgrade from phone.... on second thought, if this works this might be the easiest method if you are already connected to the HM with your phone.
 
Last edited:
Yup like Ralph suggests start by going to https://heatermeter.com/dl/ and selecting Snapshot, then your Pi model on the second drop down, then enter your wifi information in the boxes below that. Download the IMG and flash it to your SD card, put it in the Pi and boot it up. It may just work! I think 128MB may not be enough SD card storage any more though, since there's like 24MB of boot space, like 20MB of filesystem, then it creates a 64MB stash space and an overlay filesystem. I can't remember the size of the overlay and it may be 64MB as well which would put the requirements around 150MB.

You'll know if it works by either it connecting to your wifi or at least showing you an IP address on the LCD (which indicates a boot, even if the network isn't connected).
 
Thanks for the info, everyone. Spectacular failure thus far:

• Got the snapshot release. Added my WiFi info before downloading. (Confirmed it's in the .img with Notepad++.)
• Used balenaEtcher to write .img to a 64GB SDHC card (that I already had).
• Put SDHC back in RPi.
• Plugged in Ethernet cable connected to switch connected to local network.
• Plugged in HM. LCD works, almost instantly showing temps from probes, but doesn't show IP info. Also has previous pit temp setting (230°F), which seems suspicious.
• Stuck!

Earlier, I pulled apart my HM to see if I could read what version of the board it was, etc., and only after I did so did I notice that there are a lot more GPIO pins on the RPi than there are sockets on the HM. I lined things up right from Pin 0. Is that correct?

What's my problem?

(Next thing I'm going to try: see if I can upgrade the original MicroSD card, even though it's 128MB. But ultimately I'm planning to get onto a new 16GB SDHC card that should arrive tomorrow.)
 
Last edited:
OK, flashed the original MicroSD card. HM seems to boot OK (I guess I've got the AVR plugged into the RPi correctly). I'm seeing an RPi MAC on my router, so I guess it's getting a wired connection IP through DHCP. But if I try going to that IP, I get nothing. I didn't ever see an IP shown on the LCD. And the original default (192.168.200.1 on the heatermeter AP) also doesn't show up as an option on the PC I've been using to connect over WiFi.

No device shown on heatermeter.com/devices, either.

Sooo... still spectacular failure. In fact, I'm worse off than when I started, because now I can't connect after booting via either SD card.
 
Last edited:
The HeaterMeter board plugs into the Pi so they match on the SD card side and there are extra pins on the USB side. If you see lights on the Pi when you plug in power to the HeaterMeter board, then you're good to go. Note that the HeaterMeter runs without the Pi, so on first boot make sure you wait a few minutes before trying to connect for the first time, and don't pull power during this first boot (not sure that would make a difference but it could be possible to break it on first boot with a power loss).

If it doesn't show an IP on the LCD within 5 minutes though it sounds like something is going wrong. Watch the LEDs on the Pi when you plug it in. The activity LED should blink like crazy as the filesystem is read, then it will be a fast steady blink (preinit stage), then a slow steady blink (services loading), then go steady on. When it is steady on, you're fully booted. If it doesn't follow this pattern then something bad is happening on boot.
 
Seems like something bad ( = nothing) is happening on boot, then. I've got no activity on the Pi. Which is weird, because I did earlier. I can also confirm I've plugged in the GPIO properly.

I re-flashed both the 128MB and the 64GB SDHC card, just in case. Still nothing. (I have confirmed the 16GB SDHC card that will arrive tomorrow is on the https://elinux.org/RPi_SD_cards "known good" list, but the Silicon Power 64GB card I'm trying right now is not listed at all.)

If I have to replace anything, I guess the RPi is the cheapest component? What versions can I use with the AVR I have?
 
I think I've solved the problem, which was solely my mistake: I am pretty sure I must have downloaded and tried to install firmware for the wrong RPI branch. Big mea culpa. I went back and re-did *everything*—including re-downloading the image file—and this time I definitely chose 'A/B/Zero/W Zero/A+/B+', which I could not swear for sure I did last time. I thought I had, but this time it felt... unfamiliar.

In any case, I've got the IP I saw in my router's DHCP table, and the HM panel is being served from that IP on my network.

Can't see my device at http://heatermeter.com/devices/, though. Not sure if that's "yet," or "won't, because of some network problem or protection that I've previously set and forgotten about."
 
Hey there ya go! You can tell if the firmware you downloaded the first time was for your Pi because the filename will have bcm2708 in it. If it was for the other incompatible Pi, it will have bcm2709 in it. Just for your own satisfaction.

The HeaterMeter will only show up in the devices webpage if it has internet access to be able to register itself. If it doesn't have internet access then you won't be able to do firmware upgrades from the device itself without taking out the SD card, and the time will always be wrong. The HeaterMeter itself should work on your local network just fine, you'll just lack those features. Note that you can't have both wired ethernet plugged in and wifi active at the same time for some reason, and I think it takes a reboot to change it if you had ethernet plugged in when it booted.
 
Yep: definitely had the wrong firmware the first time: I've got one each of -2708 and -2709, and -2709 is the earlier one I was struggling with. D'oh.

The internet access thing definitely explains why the time on my graphs has rarely been right for the past four years! But it's correct at the moment. Is there an explicit "check this device has internet access" test anywhere in the configuration menus? Or maybe I've got to try updating the firmware from a URL, I suppose.

I do indeed have both WiFi active and ethernet hooked up at the moment, so I'll have to unplug the ethernet and reboot. It's plausible that I could have the HM within a short cable run from a switch on my network, but WiFi is how I've been using it, and continuing to not have the extra cable constraint will be nice.

I think I'm almost there....
 
The internet access thing definitely explains why the time on my graphs has rarely been right for the past four years! But it's correct at the moment. Is there an explicit "check this device has internet access" test anywhere in the configuration menus?
There's no indicator apart from if the time is wrong, then it definitely doesn't have access. You can go to Network -> Diagnostics and hit the "Ping" button on the left and in 5 seconds you should see something like this if it does have access:
Code:
PING lede-project.org (139.59.209.225): 56 data bytes
64 bytes from 139.59.209.225: seq=0 ttl=53 time=240.270 ms
64 bytes from 139.59.209.225: seq=1 ttl=53 time=121.352 ms
64 bytes from 139.59.209.225: seq=2 ttl=53 time=123.221 ms
64 bytes from 139.59.209.225: seq=3 ttl=53 time=121.321 ms
64 bytes from 139.59.209.225: seq=4 ttl=53 time=124.290 ms

--- lede-project.org ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 121.321/146.090/240.270 ms
Other than making sure only one network connection (wired or wifi) is active at a time is the only advice I can give about why it won't work. It should just be another thing on your home network and expects the router to give it all the info it needs to merge onto the Information Superhighway :censored:. That would just be a working DNS server it can get to and a default route to go through.
 
Figured it out:

First, I unplugged the ethernet cable and rebooted, so I was for sure on WiFi. The IP changed as expected. Logged in at the new IP, and did the ping check. I got the same sort of results you said I should: pings in the 150ms range, 0% packet loss.

Then I tried http://heatermeter.com/devices/, but still got nothing, even after waiting a while. Hmm.

Then, on a hunch (foreshadowed in post #9, above) I tried the same site, but from a different machine, and... success!

So the problem must be the fact that my main computer is routing all web traffic through Privoxy, which means the IPs of my machine and the HM don't look the same to heatermeter.com. Sort of annoying, but it's a problem I've created myself, and I know (now) how to work around it.

Thanks again for all your help!
 
Download the IMG and flash it to your SD card, put it in the Pi and boot it up. It may just work! I think 128MB may not be enough SD card storage any more though, since there's like 24MB of boot space, like 20MB of filesystem, then it creates a 64MB stash space and an overlay filesystem. I can't remember the size of the overlay and it may be 64MB as well which would put the requirements around 150MB.

Bryan, any further insight on this? I'm running on the 128MB card and everything seems like it's OK. Is that enough? Or will it work fine now, but I'll run into trouble later as soon as I do 'X'? Basically, I'm wondering if I can stick with the existing card, or should I upgrade to the 16GB card?
 
If it is up and running and your network configuration sticks, then the main filesystems and overlay seem to be OK. To check the stash space, go to the LinkMeter -> Archive page and hit the "Stash" button to make sure that part's working as well (it should add a new archive to the list, but may need to refresh the page to have it show up if running a version from before last Friday) If both of these check out, then 128MB is plenty of space! It is good to know that's all that's needed still because I haven't tested on a small filesystem in years.
 
Looks like it's just barely marginal: it's running, and still connecting through WiFi after a power cycle, but stashing an archive fails with...
Code:
Stashing /tmp/hm.rrd to /mnt/mmcblk0p4/stash/2020-07-28.rrd
Stashing current config to /mnt/mmcblk0p4/stash/2020-07-28.json
ERR

Guess I'll just suck it up, and "waste" 16 GB on something that probably only realistically needs 150 MB...!
 
You don't have an old device in the house that might have a 2GB or 4GB card in it? I've got a stash of old microsd cards from old blackberry's and tablets from years gone by.
 
Poked around my graveyard of consumer electronics: smallest microSD card I could find anywhere was... 16 GB.

So I used the new one. Reflashed, rebooted, got the same IP, tried saving an archive, and... success!

I think we're done here. Next time I barbeque, I'll tackle tuning the PID parameters. My control system engineer buddy says (looking at my previous graphs), "Needs less P and more I." But tweaking that will be a lot easier, now that the HM is on my home network.

Thanks, all!
 
Nice! Well it is good to know it all still works even if the stash area can't be allocated. I too have a case with 12 full sized SD cards in it here in the Pi drawer of my desk, and only 2 micros that I switch between all the Pis I test with. One of the two I know has some code on it I don't want to lose so it isn't even usable. There's gotta be something we can do with these old full-sized cards from 2-8GB!
 

 

Back
Top