Driving dozens of sensors and relays on Core2 plus a temperature sensor

  • I am creating an exciting application where I need to read many sensors and also drive many relays. Also I need a Temperature sensor. and all on Core2.
    Now I succeeded to run PAHUB together with ExtIO2 so I can read many sensors and drive many relays...which is great!
    However, when I want to include a DS18B20 temperature sensor, I need the OneWire library. But when I add this library it throws errors below.
    What do I need to do to make it work?

    #include <M5Core2.h>
    #include "ClosedCube_TCA9548A.h"

    #include "UNIT_4RELAY.h"
    UNIT_4RELAY relay;

    #include "M5_EXTIO2.h"
    M5_EXTIO2 extio;
    #include <OneWire.h>

    errors after compiling:

    In file included from /home/pi/Arduino/PAHUB_4RELAY/PaHUB_4RELAY/PaHUB_4RELAY.ino:19:
    /home/pi/Arduino/libraries/UNIT_4RELAY/src/UNIT_4RELAY.h:6:14: error: expected ',' or '...' before numeric constant
    #define addr 0X26
    /home/pi/Arduino/libraries/OneWire/OneWire.h:134:40: note: in expansion of macro 'addr'
    static uint8_t crc8(const uint8_t *addr, uint8_t len);

  • for benefit of community, I could solve myself: changed Onewire.h line 134 from addr to addr2. And it works 🙂