Supervisory control and data acquisition, or SCADA, systems sit in the background in industrial settings, performing all kinds of important jobs but in an ad-hoc setup, depending on the precise requirements of the installation. When we think about home automation systems, they’re pretty much the same deal: ad-hoc systems put together from off-the-shelf components and a few custom bits thrown in. [Stefan Schnitzer] clearly has significant knowledge of SCADA in an industrial setting and has carried this over into their home for their entry into the Hackaday 2024 Home Sweet Home Automation Contest. Continue reading “2024 Home Sweet Home Automation: A DIY SCADA Smart Home”
Modbus6 Articles
Vehicle-to-Grid Made Easy
As electric cars continue to see increased adoption, one associated technology that was touted long ago that still hasn’t seen widespread adoption is vehicle-to-grid or vehicle-to-home. Since most cars are parked most of the time, this would allow the cars to perform load-levelling for the grid or even act as emergency generators on an individual basis when needed. While this hasn’t panned out for a variety of reasons, it is still possible to use an EV battery for use off-grid or as part of a grid tie solar system, and now you can do it without needing to disassemble the battery packs at all.
Normally when attempting to use a scrapped EV battery for another use, the cells would be removed from the OEM pack and reorganized to a specific voltage. This build, however, eliminates the need to modify the packs at all. A LilyGO ESP32 is used to convert the CAN bus messages from the battery pack to the Modbus communications protocol used by the inverters, in this case a Fronius Gen24, so the inverter and battery can coordinate energy delivery from one to the other automatically. With the hard part out of the way, the only other requirements are to connect a high voltage DC cable from the battery pack to the inverter.
[Dala], the creator of this project, has taken other steps to ensure safety as well that we’d recommend anyone attempting to recreate this build pays close attention to, as these battery packs contain an extremely large amount of energy. The system itself supports battery packs from Nissan Leafs as well as the Tesla Model 3, which can usually be found for comparably low prices. Building battery energy storage systems to make up for the lack of commercially-available vehicle-to-home systems isn’t the only use for an old EV battery, though. For example, it’s possible to use Leaf batteries to triple the range of other EVs like [Muxsan] did with this Nissan van.
Reclaiming A Pi-Based Solar Datalogger
There’s quite a few devices on the market that contain a Raspberry Pi as their core, and after becoming a proud owner of a solar roof, [Paolo Bonzini] has found himself with an Entrade ENR-DTLA04DN datalogger which – let’s just say, it had some of the signs, and at FOSDEM 2023, he told us all about it. Installed under the promise of local-only logging, the datalogger gave away its nature with a Raspberry Pi logo-emblazoned power brick, a spec sheet identical to that of a Pi 3, and a MAC address belonging to the Raspberry Pi Foundation. That spec sheet also mentioned a MicroSD card – which eventually died, prompting [Paolo] to take the cover off. He dumped the faulty SD card, then replaced it – and put his own SSH keys on the device while at it.
At this point, Entrade no longer offered devices with local logging, only the option of cloud logging – free, but only for five years, clearly not an option if you like your home cloud-free; the local logging was not flawless either, and thus, the device was worth exploring. A quick peek at the filesystem netted him two large statically-compiled binaries, and strace
gave him a way to snoop on RS485 communications between the datalogger and the solar roof-paired inverter. Next, he dug into the binaries, collecting information on how this device did its work. Previously, he found that the device provided an undocumented API over HTTP while connected to his network, and comparing the API’s workings to the data inside the binary netted him some good results – but not enough.
The main binary was identified to be Go code, and [Paolo] shows us a walkthrough on how to reverse-engineer such binaries in radare2
, with a small collection of tricks to boot – for instance, grepping the output of strings
for GitHub URLs in order to find out the libraries being used. In the end, having reverse-engineered the protocol, he fully rewrote the software, without the annoying bugs of the previous one, and integrated it into his home MQTT network powered by HomeAssistant. As a bonus, he also shows us the datalogger’s main PCB, which turned out to be a peculiar creation – not to spoil the surprise!
We imagine this research isn’t just useful for when you face a similar datalogger’s death, but is also quite handy for those who find themselves at the mercy of the pseudo-free cloud logging plan and would like to opt out. Solar tech seems to be an area where Raspberry Pi boards and proprietary interfaces aren’t uncommon, which is why we see hackers reverse-engineer solar power-related devices – for instance, check out this exploration of a solar inverter’s proprietary protocol to get data out of it, or reverse-engineering an end-of-life decommissioned but perfectly healthy solar inverter’s software to get the service menu password.
Hacker Dictionary: RS-485 Will Go The Distance
RS485 is a communication standard that should be part of the advanced hardware hacker’s arsenal; it’s not commonly encountered, but powerful exactly when you need it. It’s a physical layer interface for wired communications that uses a single differential pair for noise immunity, has good long-distance properties, and allows many connections to a single bus. Because of that, you will encounter it in security systems and even cameras, wired sensor networks, DMX512 lighting and all sorts of industrial electronics. For our hobbyist goals, you can absolutely use RS485 to build your home (or room) automation system, or a relatively large robot – without all those worries that wireless brings.
The name might remind you of RS232, and that’s because both RS232 and RS485 are standards that come from EIA (Electronics Industries Alliance). It also might remind you of RS422, if you’ve ever seen this name mentioned online – RS422 and RS485 are closely intertwined, sharing most of the physical layer, and I’ll show how exactly they relate. Continue reading “Hacker Dictionary: RS-485 Will Go The Distance”
Jetson Nano Robot
[Stevej52] likes to build things you can’t buy, and this Jetson Nano robot falls well within that category. Reading the project details, you might think [Stevej52] drinks too much coffee. But we think he is just excited to have successfully pulled off the Herculean task of integrating over a dozen hardware and software modules. Very briefly, he is running Ubuntu and ROS on the PC and Nano. It is all tied together with Python code, and is using Modbus over IP to solve a problem getting joystick data to the Nano. We like it when existing, standard protocols can be used because it frees the designer to focus more on the application. Modbus has been around for 40 years, has widespread support in many languages and platforms.
This is an ongoing project, and we look forward to seeing more updates and especially more video of it in action like the one found below. With the recent release of a price-reduced Jetson Nano, which we covered last week, this might be an excellent project to take on.
Meter All The Phases: Three Phase Energy Meter With OpenWrt
Keeping track your overall electricity usage is a good thing, and it’s even better if you know where all the kilowatt-hours are going. [Anurag Chugh’s] house has the three phases coming from the electrical distribution box tidily organized: One for the lighting and fans, one for household appliances, and one for the hot water supply. To monitor and analyze the electrical fingerprint of his house, [Anurag] installed a 3 phase energy meter and hooked it up to the internet.
Continue reading “Meter All The Phases: Three Phase Energy Meter With OpenWrt”