Heatpump Monitor Build Firmware Upload Problem

(Westerner) #1

I am putting together the OEM HeatPump Monitor, following the build guide at
I have reached the stage where a test upload of the atmega328 firmware is recommended. When compiling the file, I get the following errors:

HeatpumpMonitor_AutoTemp:220:38: error: ‘mbus_set_address’ was not declared in this scope


HeatpumpMonitor_AutoTemp:225:25: error: ‘mbus_request’ was not declared in this scope


HeatpumpMonitor_AutoTemp:325:37: error: ‘mbus_request_data’ was not declared in this scope


Compiling the mbus.ino file, I get several errors regarding ‘customSerial’, the first of which is:

mbus:46:13: error: ‘customSerial’ was not declared in this scope

     if (customSerial->available()) {

Is there something I am missing or doing wrong?

(Trystan Lea) #2

Hello @Westerner, it sounds like you may have only loaded the main part of the sketch but not the mbus.ino tab, it should look like this:

(Westerner) #3

Ta-da! Thanks @TrystanLea; I was compiling the two ino files in separate windows, rather than in the one window - I assumed that they were separate programs, rather than being two elements of the same sketch. Presumably the following warning after compiling is within tolerance? “Sketch uses 16082 bytes (49%) of program storage space. Maximum is 32256 bytes.
Global variables use 1732 bytes (84%) of dynamic memory, leaving 316 bytes for local variables. Maximum is 2048 bytes.
Low memory available, stability problems may occur.”

(Trystan Lea) #4

Great, yes that error is fine, I also see that.