The LinkMeter Snapshot and YOU

John Bostwick

TVWBB Wizard
I put a new AVR Firmware snapshot up this morning. I did a pretty big refactor on the internals of the device Menu system and moved a lot of stuff into the classes where they belong. It started as just me adding the ability to have more than one dynamically updating display in the HeaterMeter devices menus, which was the probes / output home display we all know. As I started to implement it I realized it was a bit of a mess so what could have been done in an evening stretched into breaking the existing code, then procrastinating for a month because the code was so broken that I didn't want to deal with it. In addition to adding more functionality, a few bugs were found and squashed, and it should be easier to extend now. The downside is that a ton of code got moved around or rewritten so there's a chance I have broken something in the LCD display / buttons / menu system. I've tested everything I can think of and it all seems to work the same as it did before the changes, but I have not bundled this into the Pi firmware image just yet. I'll wait to hear if anything is broken for a while.

This does add a new troubleshooting feature to the HeaterMeter device itself, the Internal Diagnostics Display. Full information is in the documentation, but to enter the hidden menu, go to the "Manual fan mode Yes/No" menu on the device and hold the left button until the display switches to the diagnostics info for Probe0. Here you'll find the raw ADC readings, probe type, bandgap information, noise values, measured blower output voltage, and button readings.

I've also fixed the bug where when unplugging a thermocouple that's at a temperature less than ~430F, it would publish one erroneous reading around 430F before actually returning to OFF.

To install the latest AVR Firmware, just go to LinkMeter -> AVR Firmware in the webui. Select "From Online Repository" and select the most recent snapshot which is 20190327B.


I noticed that bug of the temperature, and I just thought I had an soldering issue, lol
 

Bryan Mayland

TVWBB Hall of Fame
I noticed that bug of the temperature, and I just thought I had an soldering issue, lol
haha it used to be broken initially, then it worked properly, then the hard noise limits were removed so it stopped working, then I fixed it, then I broke it again when working on the issue where it would get stuck transitioning, and now it is working properly again! It has been on my todo list to fix for like 6 months now and I noticed it every. dang. time. I unplugged a thermocouple. Finally got the menu changes done and it took like 2 minutes of looking at the code, 5 minutes to make the change, then 15 minutes of testing.

The other fix that's coming soon is that you currently can't scroll backwards through the probes on the device LCD home screen if one of them is unplugged. The updates to the menu system should make this trivial to do, although first I need to unwind the way it is done now (chaining menu transitions) first which will take considerably longer to do. I'm just happy to have time to start knocking these things out as I'm between jobs right now. Contractors are sort of always between jobs though!
 

Bryan Mayland

TVWBB Hall of Fame
Updated the AVR Firmware to 20190418B
  • Fixes LCD backlight menu item which would visually reset to old value every time you changed the value (it would save it properly, it would just blink NEW -> OLD)
 

Bryan Mayland

TVWBB Hall of Fame
AVR Firmware 20191226B:
  • Increased precision of "Long PWM Mode" (used when min fan speed is not 0%). Previously it would turn on at T+0 and then turn off on the next 1 second interval after the needed output percentage. For example with 100% min fan speed, an output of 50% would give you 5 seconds of ON time and an output of 51% would give you 6 seconds of ON time. Now you'll get 5100ms of ON time. This has been on the TODO for, what, 4 years now? This is mainly for SSR users who previously would effectively only have 10 output levels.
  • Disable the initial BEEP when you first plug in HeaterMeter.
  • (Internal) Allow disabling of the initial 100% 333ms fan speed boost that occurs when turning on from 0% fan output.

Those changes aren't in the snapshot image yet, just the AVR Firmware -> Online Repository until I am confident enough that I didn't break anything.

v15 is close but I am waiting to finish a feature I am working on, which is a new Networking menu on the HeaterMeter device LCD. It allows you to see the current registered IP as well as the IP addresses of all the adapters. That part along with the underlying subsystem that allows the Pi to create menus on the HeaterMeter is working currently, but I also want to add the ability to have wifi profiles for client mode / AP mode and switch between them from the LCD menu. I haven't settled on any of the 9000 ways I've thought of to store / edit the profiles though so it is taking a long time as I think it through. The AVR firmware above does not have this built in yet so don't go looking.
 

Bryan Mayland

TVWBB Hall of Fame
AVR firmware 20200107B:
  • Enabled noise diagnostics in the standard build, no special firmware necessary any more

New snapshot firmware
  • Includes AVR firmware 20200107B (and 20191226B changes)
  • [www] Adds support for Inkbird thermistor probes used in models IBT-2X, IBT-4XS, IBT-6X. I calibrated one of these from 45F to 200F and it should be within about 1F across that range. I wouldn't recommend using one for a pit probe because I can not do the correlation up to temps above boiling.
  • [www] Reorganized the list of themistor presets
  • [www] Modified the noise graph display. Now shows probe names instead of ADC port number in reverse order, and added a button to turn off noise dumping. To turn on noisedumps, click a probe's noise icon (yellow / red lightning bolt) in its respective box when logged in. It takes up to 10 seconds for the dump to update so be patient. To turn on noise dumps even if no probe is showing a noise warning indicator, press 'N' on your keyboard or use the configuration page's "Raw set command" to set "tp=,5"
  • [www] Pause updating the graph on the home page when the browser tab isn't visible to save CPU cycles
  • [www] Fix HTML error in credits page
  • [wrt] Silence net.nf_conntrack_max is an unknown key error
 

Bryan Mayland

TVWBB Hall of Fame
Snapshot firmware:
  • Fix linkmeterd starting so late that it can't be called from rc.local. If you want to call lmclient from your rc.local, it would not be a terrible idea to add a `sleep 1` or `sleep 2` before the call to make sure linkmeterd is fully up and running first (or keep calling it until you get an "OK" response)
 

Bryan Mayland

TVWBB Hall of Fame
AVR Firmware 20200120B
  • Forces the reporting of the noise dump info on the next cycle to reduce latency in changing state

Snapshot firmware
  • Include AVR Firmware 20200120B
  • [www] Noise graph now appears the same size as the main graph when not logged in
 

Gary V

TVWBB Fan
For all users that there that use MS Edge, well quick keys that work in Chrome now work in the new Edge. "P" and "Output %" now bring up PID screen
 

Bryan Mayland

TVWBB Hall of Fame
Oh that's a good point! Once MS pushes the new Edge to everyone, you'll get all the features other browsers have.
  • Pushed updates - IE and old Edge would poll every 10 seconds. Pushed updates gives you up to the second updates.
  • PID Output details - what Gary mentioned. Click the "Output %" or press the "P" key to see the P I and D terms contributing to the Output.
  • Noise graphs - See raw dumps from the ADC to judge the quality of your power supply / probe wires. Click the noise icon when it appears, or press the "N" key.
 

JKalchik

TVWBB All-Star
For all users that there that use MS Edge, well quick keys that work in Chrome now work in the new Edge. "P" and "Output %" now bring up PID screen

Ah.... you got the Edge update. Apparently, it's now got a lot of Chrome guts in it.
 

Bryan Mayland

TVWBB Hall of Fame
AVR firmware 20200209B
  • Send servo percentage in HMSU update sentence
  • Disable RF broadcast of output percentage by default

Snapshot 20200209
  • [hm] AVR firmware 20200209B
  • [wrt] Snapshot builds now use the snapshot date instead of the luci/LEDE revision numbers. This version is now on the top of every page instead of the cryptic r3425-23545fe672ca, and releases will have the release name there.
  • [www] Add fan.s to the /hmstatus JSON. This is the servo output percentage.
  • [lm] In addition to the Output percentage being stored in the database, we now also store the Fan percentage and Servo percentage. A new database has to be started for this to be recorded, which means you'll need to Reset Database from the Archive page, or if it has been more than 2 days since your HeaterMeter was powered up, it will start a new one automatically.
  • [www] The Output bar on the home page now will show the Fan and Servo percentages in the text, but only if they're not 1-to-1 mapped to the Output % (i.e. If Output = Fan = Servo, only output will show).
  • [www] Instead of "Show fan speed" checkbox, there's now a dropdown to select which output to display in the graph, Output (composite), Fan, or Servo. There are different colors for each, Fan is slightly darker than the blue we were using, and Servo is lighter. All Output colors can now be modified in usercss with the classes .ooutcolor, .ofancolor, .osercolor
  • [www] The graph tooltip now lists all 3 output percentages regardless of display mode.
  • [www] Fix graph tooltip displaying under the output bar.



There were a LOT of internal changes needed to get these new fields handled, stored, and displayed touching every bit of code from status to alarms to database, so please keep a skeptical eye on things just in case I might have broken something. I've tried to test all the combinations of old and new database, AVR firmware, linkmeterd and webui to make sure half updated systems and old databases still work right, but there's just so much changed that I could have missed your favorite value which now is not displaying correctly.
 
Last edited:

Gary V

TVWBB Fan
Very nice update. It came up as I was finishing a spatchcock chicken so i did not get a chance to try the update. I did update this morning and i ended up having to remove sdcard and flash it outside of case. I could only find an image and using the avrfirmware in linkmeter did no have that update listed. No big deal, just removed card and format/flash and reinstalled. Nice being able to configure wifi so no cable hookup is required when you install card. Will put through it`s paces midweek when i grill some ribs.

One thing i have noticed so far is when you check the invert output on the servo, it does not change that output display on the graph to match. Example is my Tom Kole ver2 damper is showing the servo at 85%, but the servo is barely open. Not sure that this might be a problem with the fan as well.

Other than that, I likey
 
Last edited:

Bryan Mayland

TVWBB Hall of Fame
You're right, I forgot to update the heatermeter.hex that's available in the online repository-- FIXED.

To update the whole firmware though (which includes the AVR), just go to System -> Backup / Flash Firmware then either paste the URL to the image or you can upload a file you've already downloaded. When upgrading, you don't need a preconfigured image with your wifi settings if you have the "Keep settings" checkbox checked. If you do it this way, you don't have to take the SD card out to upgrade the firmware, and all your settings are retained.

When I check the Invert Servo checkbox it does exactly what it says, 100% open becomes 0% open and the webui matches what the servo physically is doing. Same thing with the fan, 100% output becomes 0% output and vice versa. If that's not what you're seeing then maybe post an image or copy your Fan and Servo lines from the Configuration page here and I can set my settings the same to test. Also make sure your version number on the top of the Configuration page says "LEDE Reboot SNAPSHOT 20200209".
 
Last edited:

Tom O.

TVWBB Member
I downloaded the latest Snapshot.

My Heatermeter is currently running a cook. I saw the "AVR Firmware" tab on the "config, home, etc." screen. When I open it, it asks if I want to "Update" using one of the three listed methods. Can I just select the "Local Machine" and point it to the .img file for the Snapshot I just downloaded to my hard drive a minute ago?

Tom
 

J Grotz

TVWBB All-Star
so what is the secret to attaching pictures

Don't bother to learn it. The forum is switching to new software on Wednesday. The new software includes photo hosting capability.

If you want to get something posted before then, use a free image hosting site like imgur.com.

Once you have registered and uploaded your photos, your Images page will have thumbnails of all of your uploaded images. Click on the image you want to post, and you will see your image with a list of link codes in a column on the right...



Click the blue copy button next to the BBCode (see the red arrow I added). Then paste that link where you want it in your TVWBB post.

This may only work from a real computer. Some tvwbb users that only/primarily use mobile devices report this method does not work for them
 

Top