I have an EmonBASE with the ATMega based radio module that’s starting to exhibit some power problems. It looks like the USB connector may be coming loose with slight knocks to power causing the system to reboot, not come online, or come up only at the compute layer (no radio signals received). Before I dive into troubleshooting this, I’m wondering what the options are to replace the compute module, keeping the radio module.
Can the existing SD image and the old ATMega board be moved over to a new Raspberry 4 or 5 compute module? These newer modules probably don’t fit the old OEM shop transparent case, but that may be a small annoyance in order to have USB-C power connectors and other improvements. If these newer modules don’t work, any thoughts on the newest modules that will work?
Hi @davidski - by “compute module”, are you just referring to a normal Raspberry Pi? If so, you can do a 1:1 swap with the same model (e.g. if you are currently using a 3B, you can just swap the SD card and RF module to a new 3B). Going from say a 3B to a 4, you would (likely) have to start again with the SD. Back it up, it’s worth a try!
Just for reference, the Raspberry Pi Compute Module is an actual product, but nothing OEM sells uses it.
Doh! I didn’t realize that was specific terminology. Thanks for that!
Yes. My shop-supplied Raspberry PI is a Pi2. If I’m going to have to replace that, I’d rather get something a bit more modern (USB-C style power connector is my big wish). I suppose an SD reimage and a backup restore wouldn’t be that hard. But the RFM modules should be pin compatible across different generations, right?
Yes, the GPIO header is consistent across all RPis so you can use the same RF module.
Going from a 2 to a 4/5, you’ll definitely want to install the OS from scratch and then restore as much data as you want/need. The RPi 2 is an older 32 bit ARM core, the 4/5 are modern 64bit ARM cores.
Hi @davidski. I am going through the process of upgrading an emonbase to raspberry pi 5.
The Pi5 uses the latest OS and is not compatible with the latest emonSD image, so you will need to install the OS, then use the scripts to build emoncms and then restore from a backup.
The was a bit of fiddling to get the RF module working as the serial port on the Pi5 has moved.
Mine is not quite finished as i am having some difficulties with openssl 3.0, which is not so backwards compatible with an old Daikin wifi module that get some data from. I have had emoncms up and receiving RF data from my emontx3s and i am witing some notes on th process.
Brilliant! Sounds like I timed this well. I don’t need all the horsepower of a Pi 5 and may go with the cheaper/more available RPi4B. Do post your notes on the forum when you can! Looking forward to it!
I am still working through this and expect to get notes sorted today. The issue i remember is that the Pi5 now has a dedicated serial port seperate to the GPIO header. To activate the serial port on the GPIO header, the configuration needs to be altered. The raspi-config tool does this.
Again, apologies for being a bit vague, I think i have got through all the configuration issues but they are still in scribble form waiting incorporation into shareable notes.
Anyway, as I said, I have got emonCMS running on Pi5 at least once and will be happy to assist you sorting yours out if you need.
Had a bit of a read about this (helpful for other projects, too!). This RPi forum thread is relevant. Essentially they’ve changed the mapping of the hardware UARTs a bit. You can add dtparam=uart0 to config.txt to ensure the “normal” behaviour is maintained (the raspi-config tool does the same thing).
Circling back to this thread for any future readers.
I picked up a Raspberry Pi4B and a RFM69HCW module from AdaFruit. I installed the EmonSD 01Feb24 image on a fresh SD card.
I was first able to just move the RFM69/AtMega module from the old EmonBASE over with no code changes required (after restoring a fresh backup from the old system).
Not being quite satisfied, the following stanza in my emonhub.conf allows me to use the RFM69HCW module:
A nice feature of emonhub, I could leave the SPI and the RFM2PI stanzas in at the same time, letting me swap hardware (powered down) without having to change the config.
I also changed this emonPiLCD2.py line to pin 5, which allows the AdaFruit OLED to work with button 1 corresponding to the OLED config supplied from OEM.
This took a bit of sleuthing and I’m feeling content so hopefully this helps someone else.