Olimex ESP32-POE Reboot Loop

I’m trying to use OMG on an Olimex ESP32-POE board to be able to read my car battery from a BM2 device. I had already installed the ESP32 in an outside enclosure with an external antenna and wired it for PoE but it was running ESPHome (which I cannot get to read the BM2 traffic).

I uploaded the latest OMG binary and all seemed well but the device keeps rebooting into WifiManager and I don’t want to use WiFi - I want to use ethernet.

I looked at the User_config.h file for a custom binary and configured the ethernet module (the defaults already work with this board but I uncommented the ESP32 Ethernet option).

After flashing the board was still rebooting into WifiManager so I disabled that in the config now my board has gone AWOL. I’ll have to go retrieve it later and flash it over USB but I just wanted to check a few things before I continue - does this board support pure-ethernet connectivity leaving the radio free for BLE?

For the avoidance of doubt as there a few variants of this board, this is mine;

I flashed the esp32-olimex-gtw-ble-poe firmware originally and then built my own based off the same template.

Hi @DJBenson

What do you mean by latest here, the 1.7.0 release or the latest development binaries?

While I don’t have any experience with the Olimex POE boards, I would assume that the comment and example given in the docs requires the MQTT and possibly network credentials to be define manually in the build_flags!?!

Can you also post the adjustments you made - to your portable config file I would assume?

The latest release binary from GitHub, so 1.7.0, but also built from source.

The board “worked” to a certain extent with the 1.7.0 firmware - it was given an IP address using DHCP and I was able to configure MQTT using the portal. It also created the entities in MQTT but it kept going offline and rebooting back into WifiManager as if it needed a wifi connection. It also seemed to lose its config as part of this reboot.

EDIT: Regarding config, as per my original post I made the changes in User_config.h and not the Platformio file. The changes I made were;

  • Uncommenting #define ESP32_ETHERNET=true
  • Populating the MQTT details
  • Enabled the ZgatewayBT and ZsensorBME280 modules

Which appears analogous to the build props you’re directing me towards.

I also amended the pin config in the Config_BME280.h to suit my setup.

Disabling WifiManager is what seems to have “killed” it (as in made it disappear offline) so I’ll need to flash it locally again.

I wonder if switching from ESPHome to OMG is maybe causing an issue.

I’ve amended my local build files to set the build properties in the Platformio file and re-commented all the other changes (with the exception of the pin configuration for the BME280 as I don’t know how to do that other than in its own file).

Will try flashing a clean build and see how I get on.

If you can build from source I would suggest you use the latest development branch source.

And with the example posted in the docs, and the comment for the environment, it looks that the MQTT credentials are required to be defined in the build through the additional build_flags

Any config set by MQTT commands needs to be saved to be persistent over restarts.

AFAIK WifiManager also manages the Ethernet connection, albeit its name usggesting only WiFi - a bit like rtl_433 also working with 868 MHz devices :wink:

Now that you need to flash the board locally again, keep it attached and monitor the serial output if you still experience any issues with the latest development source.

Just be careful with not having POE and serial connected to the board at the same time, as you don’t have the ISO version of the POE board!

1 Like

That’s exactly what I’m doing :slight_smile:

The device was configured with WifiManager and the OMG portal but neither persisted - is this expected behaviour?

Haha that explains that then! :smiley:

Noted - thanks.

Right I’ve flashed the device over serial but I’m still not getting the behaviour I expect. The board boots into WifiManager mode, which disables all other features, and it seemingly stays that way until I click “Exit”. There is a WifiManager_ConfigPortalTimeOut flag which defaults to 240s (4 minutes) but the device has been up for > 8 minutes now.

EDIT: ate a sandwich, refreshed the page and it was back in the OMG portal so it does time out at some point :smiley:

Did you have Ethernet (non-POE!) connected to the board during start up, and did you monitor the serial output in VSC/PlatformIO to see the startup log?

With the suggested build_flags above there should not really be any need for a portal to enter any information when starting the board.

And could you post your custom environment, in case some of the (possibly also missing) BME280 definitions are causing a problem.