Hard to believe the amount of time I’ve spent on this thing. I’m still too deeply buried in R&D right now to fully develop another full article on my thermostat but here is some info to add to the previous blog entry on the subject. The Node-Red/ESP-GO thermostat is now in operation. As always the front panel is an issue and the laser engraver turned out to be less of a blessing than it first seemed, thanks to it’s inability to handle clear Perspex so its back to traditional DIY techniques.
I’ve now published updates to ESP-GO-3 using Espressif Non-OS SDK 3.1 – which in itself is still only on GIT at the time of writing. My thanks to helpers on the Espressif forum – I didn’t absolutely need this for the thermostat project but the 5K of saved iRam gives me bags of room for expansion, so now was as good a time as any to upgrade to the latest SDK.
Some new visuals – here is my Grafana logging – accessible externally thanks to PIVPN as is the stat.
Above is my Grafana info screen – monitoring and logging the two stats (main and aux – I have a third on test, all have now survived power cycling both for the stats and Node-Red without failure or needing intervention). Also monitoring (temperature in the hot water tank cupboard from the mains controller supplying on-off instructions to the air—source heating system.
Lots more below the line…
Continue reading The Thermostat Continues
While working on my thermostat I found myself repeating the same code all over the place – as I use function nodes for inline debugging and info – far more useful at times than the debug output.
I’ve now attached this simple code here to a function in my init page. I can use the global var “handyDate” all over the place as many times as required. This function is triggered by an inject node every second. I could have converted the timestamp info from the trigger but this is just as easy.
var date = new Date();
var hour = date.getHours();
hour = (hour < 10 ? "0" : "") + hour;
var min = date.getMinutes();
min = (min < 10 ? "0" : "") + min;
var sec = date.getSeconds();
sec = (sec < 10 ? "0" : "") + sec;
var year = date.getFullYear();
var month = date.getMonth() + 1;
month = (month < 10 ? "0" : "") + month;
var day = date.getDate();
day = (day < 10 ? "0" : "") + day;
global.set("handyDate"," at " + hour + ":" + min + ":" + sec + " on " + day + "/" + month + "/" + year);
Back in 2017 I wrote a blog entry called “A Thermostat Weekend” – some weekend that turned out to be. Well, to cut a long story short, the stat worked but I was at the time just finding out all about NEST and other modern stats and so my ESP-GO/Node-Red thermostat development started gathering dust.
Then we fitted a new Air Source Heat Pump heating system and it looked like my thermostat skills might be redundant. This new system came with a Salus IT 5000 Thermostat – absolutely lovely App, nice display and this I thought would well and truly bury my interest. How wrong could I be.
Here is the latest version of my stat web display (Dashboard) – I removed the redundant FROST setting and improved the formatting today (29/02/2019). More soon no doubt
I found some issues with the original QDTECH display in terms of reset reliability bearing in mind I’m short of IO pins and reset is hooked to processor reset (I just realised I can reclaim SS pin and potentially use it to reset the display) and I’ve changed to an ILI9341 for the final version as well as fixing some bugs with AWAY timing, VASTLY improving the web stat (Dashboard) css and adding multi-functions to the two available inputs – so that “up” and “down become “auto” if pressed simultaneously OR if either of the two buttons are long-pressed. The larger display also shows full time, day and date as well as “away” status. Also not yet shown here but I’m considering touch panels for up and down depending on Aidan’s perspex engraving skills.
Buttons now have long-click functionality to handle AUTO…. Display shows humidity and more… fixed “away” timing bug in online display… this will look a LOT prettier when the front panel is done (that’s a 5v power supply in there on the left).
Continue reading The 2019 Thermostat ReThink
Another item in the post this morning – for when the old fashioned inclinometer will no longer do – how about one powered by a pair of AAA batteries… this one came complete with full English instructions from GearBest.
Here’s the link: https://goo.gl/sBVWVT
A neat little gadget, the “Mini Digital Protractor Inclinometer Angle Gauge” is around £12.40 (free shipping) and while not something most of us would use every day, is a lot more convenient than my old spirit inclinometer and probably more accurate. I end up using such tools pretty much on a once-a-week basis.
Resolution 0.05 degree, accuracy +-0.2 degrees, repeatability 0.1 degree.
Continue reading Digital Mini Inclinometer
Today in the post I received a Bosch Go Professional Screwdriver from GearBest.
Here’s the link: https://goo.gl/3FD61q
Every word of the manual was in Chinese – but thanks to Google I immediately found the multilingual pdf manual online complete with a comprehensive English section.
As it turns out, the manual isn’t really needed, well, I didn’t need it anyway. Plug the screwdriver into any USB power unit (or any handy USB supply) - with the lead supplied – (that’s what I did) and lo, a short time later, one fully charged screwdriver. Of course it was probably most of the way there before I started.
Continue reading Bosch Go Professional Screwdriver
No, not a review, yet… but I can see that coming. This is about PC backlit keyboards and the problems you can have with both cheap and expensive versions.
My first gripe is the number of sellers on the web who claim to be UK based, then what you get is the US-based keyboard (hash where the POUND symbol should be and other keys out of place).
That narrows your choice down a little – the next item is just as important.
It seems that despite the optimised (often pained in) photos in the ads, that some keyboards (including both of my current keyboards) use one LED per key despite having say, numbers and symbols either alongside or above-below… and not enough light for both. Colour-sequencing is all very nice for a gimmick but after the novelty wears off and you get down to some solid typing, often at an angle to the keyboard and with less than ideal background light, you’d be better off with normal white key-tops than some of the pretty backlighting out there. On one of my keyboards, the numbers (not the number keypad) are just fine but the symbols above them are all but un-readable. Similarly with the function keys.
I’ve shown one of my keyboards in the second photo here as an example – virtually no backlighting on the “ins”,”Del” and other symbols. The first photo is a typical ad with all keys brightly lit.
Finally three other points worth mentioning: make sure you get a mechanical keyboard (the cheap ones without springs are truly awful) and check for real injection-moulded keys, not just paint around letters, symbols and numbers as the latter will wear away on frequently used keys in no time. Those wonderful colour combinations are great for a gimmick but do they include the option to go for one colour for all keys (like a nice red or green)… neither of my keyboards do, so watch out for that one.
If anyone has already been through this, comments are most welcome.
I just spent ages debugging issue with theSunCalc module used in Node-Red-Contrib--BigTimer.
It turns out that the getMoonTimes module doesn’t seem to handle the alwaysUp and alwaysDown methods the way one might expected – these do not return FALSE if not TRUE – they return undefined – that took some figuring out.
I started with try-catch but that failed also. Simply checking as follows did the trick:
if (typeof moons.rise==='undefined')
date2=moons.rise; moonrise = (date2.getHours() * 60) +
if (typeof moons.set==='undefined')
date3=moons.set; moonset = (date3.getHours() * 60) +
I’m pretty sure this is now fixed as of BigTimer 2.1.7
Thanks to Aidan Ruff for his help in this one.
Can I give the Raspberry Pi any MORE to do? This started off as a plea for help – as I could not find a way to get reliable reporting of changed devices on my network – as you’ll see, now CRACKED thanks to readers and in particular Mr Shark.
I’ve tried Glasswire on PC, Nmap on Pi and Advanced IP scanner on PC… the latter detects devices like ESP8266 on the network no problem – but could I HELL find a way to show JUST devices connected since the last scan.
Continue reading Devices recently connected to the network