M5Stack ESP32 with POE - does it work?

Hi there

I use a Hydreon rain-sensor (which i can absolutely recommend) with this ESP-Home code: Hydreon Rain Sensor — ESPHome

Recently I noticed that M5stack offers an ESP32 with POE-support ESP32 Ethernet Unit with PoE | m5stack-store , AMAZING :wink:

question: Does anyone have a M5Stack ESP32 with POE and an ESPHome-component installed on it?

I read that only a few Ethernet-chips are supported: M5atom M5stack POE esp32 support The ESP32 with POE has a IP101G chip, where as this guide Ethernet Component — ESPHome says it must be an IP101.

all the best

Andrew

2 Likes

If you take a look here Add IP101 support to Ethernet component by kbx81 · Pull Request #3751 · esphome/esphome · GitHub at the discussion when IP101 was first introduced into esphome, you’ll see that the author did it to support a IP101GRI chipset, so my answer would be that the G is supported.

There is a 65 page hardware datasheet here too https://datasheet.lcsc.com/szlcsc/IC-Plus-IP101GR_C79324.pdf

thats great, many thanks. BTW: I just noticed another potential interesting ESP32 with POE: wesp32.com/

I might give both a try :wink:

Add this to your list :slight_smile:

1 Like

Is anybody using this module? What is interesting using POE is, you get 5V at the 4PIN socket. In addition you have 2 GPIOs what you can use for TTL/UART. The problem now is that you actually need 3.3V instead 5V, any idea how to workaround?

I am using them as Bluetooth Proxies. I bought some cheap u.fl antennas (ASIN: B077SVP7PN) and cut holes in the cases to connect them to the ESP inside.

I came up with a GREAT workaround, I designed a slim board on EasyEDA that has two Grove connectors on it, and passes the 5V through but also level-shifts so the ESP32 sees 3.3V. Spent $150 for a few dozen. They work great. Because they are slim, I just put them in shrink tubing so they’re robust too. Somebody should be selling this.

I have an example of this working at GitHub - DrJohnM61/poesp32-esphome: esphome built on a M5Stack ESP32 Ethernet Unit with PoE (poesp32)

@DrJohnM61 Thanks so much for this write up, after a few hours messing, I’ve finally got it running, and it’s now rock-solid! The only change I made was putting ota: in the yaml, so once in my home assistant’s ESPhome config, I can now keep it up to date, and change the config wirelessly.

Cool - I am pleased that you found it useful. Are you just using it as a switch/relay or something else? (I was wondering if the two GPIO pins could also be used as sensors).

@DrJohnM61 I have a few uses in mind for these devices. One will sit with the thermal store water tank using Dallas sensors to monitor tank temperatures. two will monitor gate alarms. and a third one will monitor the water level in the sewage treatment plant… not sure if I should go simple with a float switch, or look into some fancy water level sensor. I wanted PoE as some of these areas have marginal wifi coverage, and I wanted something more reliable, especially for the sewage treatment plant. The box had languished unused for a while, and I hated the fact it had gotten the better of me!

On a separate note, great to see a fellow digital user, ex-deccie here and OpenVMS system manager for many years!

Thx @DrJohnM61, followed your guidance with no issues at all. ‘Gate Control’ as a device showed up for configuration on the Integrations page (as well as a ‘New Device’ notice). And following entering the encryption key, the device became listed within the ESPHome devices tille.

Now to have a go at reconfiguring to fulfil my immediate requirement of reading a DS18B20 sensor, plus getting OTA set-up.

I presume the former simply involves redefining one of the Grove plug pins as the 1-Wire bus and configuring the yaml in accordance with:
https://esphome.io/components/sensor/dallas

Many thanks for your documentation on this.

Cheers

Interesting that I made some minor changes to the config yaml, which, while it all compiles AOK, fails to serial upload now due the following error:

================================= [SUCCESS] Took 25.27 seconds =================================
INFO Successfully compiled program.
ERROR Cannot upload Over the Air as the config does not include the ota: component

I’ve even resorted to attempting to reflash using the original unchanged yaml config file with the same result.

I guess the issue is that I initially included OTA set-up but that raised issues so I removed it in order to just focus on the Dallas component.

Does anyone know how to turn off the OTA component in the compiling in order to clear this issue?

SOLVED: For anyone else encountering this who is early in their engagement with ESPHome, on the first upload ESPHome installs a complete set of its compiled code. Thereafter it only uploads the user generated component. And as the OTA code is a part of its core code it won’t be erased if you subsequently remove it from your config. To remove OTA and regain the option to do a direct serial upload, it is necessary to fully erase the flash memory independently of ESPHome using esptools.

If you have esptools pre-installed the command line instruction would be:

$ esptool.py -port /dev/cu.usbserial-0000xxxx erase_flash

where /dev/cu.usbserial-0000xxxx is replaced with whatever your serial adapter is called.

1 Like

By the way @DrJohnM61, my very first programming exposure was Basic on a PDP11. Paper tape input with the boot address entered via toggle switches on the front panel! First o/p of any consequence; a routine to design a single NPN transistor amplifier that for a given input of required gain and precision, auto selected the bias resistors from standard EIA tolerance ranges.

Strewth I daren’t contemplate the amount of paper consumed to tweak the alignment offsets needed to get the calculated values to match the official numbers and take inventory simplification into account. Look up tables weren’t an option given working memory limitations.

The PDP11 was a nice machine. RSX-11+. Although having to work with overlays for those memory limits…

My preference was the DEC10 (36 bit word) and later, the DEC20 but the big turning point was the introduction of the VAX and VMS

Those were the days…

They were.

Did not find other ‘inside pictures’, PoESP32 does operate from a general ESP32-WROOM.
And this can offer more then the onboard connector, drilled a small hole and added an extra uart on GPIO32 & 33:

1 Like

any specific reason why you used only GPIO32 & 33 and not added more others?

btw, if you connect u.fl Wifi/BLE antenna, you can use Wifi & Bluetooth with PoESP32 device.
for some reason m5stack marked Wifi/BLE as disabled on their website, but it’s just works.

Did not need more for that location, of course there can be added more than just these 2.

1 Like