Welcome back, Francis – long time, no see.
I think so.
I’ve never felt the need to back up an existing sketch. You can’t (easily) disassemble it to get back to the ‘C’ language code to read what it should be doing, so there doesn’t seem a lot of point (to me). We can always find a sketch which will work, particularly if we know what’s running in your emonBase. What would probably be at least as useful would be a dump/printout of the message your emonTx sends on the serial output as it starts up. This should give us details of the software and some of the settings.
Personally, I would avoid using the .hex file and instead compile and upload using your Linux computer (as I do).
No, wrong. Those two files are two parts of the same sketch. Load both into the Arduino IDE at the same time, the first one into one tab, the second into another tab, and compile the first. The second will be included automatically. The “_config” file contains the code for the on-line configuration via the serial interface (the FTDI connector and your programmer).
You also want to connect RTS to the reset line RST on the emonTx so that the programmer can time the upload correctly. Without that, I understand you must manually press the ‘Reset’ button on the emonTx at exactly the correct moment in order for the upload to be accepted by the emonTx. (The programmer you can get from The Shop has that connection.)
You’ll also need a special OEM version of JeeLib (if you choose that) because your emonTx V3.2 will have the RFµ 328 processor module (so there’s the main PCB, on which sits the RFµ 328 and on that sits the RFM12B radio module). You cannot upgrade to using LowPowerLabs radio format messages, you must stay with JeeLib format. You are not likely to have “RFM69 Native” format running in your emonBase, so I think you should use JeeLib Classic option for the radio.
You might find this useful: The emonPiCM
Instructions for setting up the Arduino IDE complete with all the libraries needed are in the ‘Docs’ section here. Installing the Arduino IDE – Ubuntu Linux — OpenEnergyMonitor 0.0.1 documentation