May 25, 2026, 08:11:18 PM

Recent posts

#1
New Products release / Six new models of OV5647 5-Meg...
Last post by olimex - Today at 10:36:20 AM
Six new models of OV5647 5-Megapixel cameras with adjustable lenses for ESP32-P4-DevKit and ESP32-P4-PC are in stock. NV suffix version is with IR cut-off filter removed for night vision apps. https://olimex.wordpress.com/2026/05/25/six-new-models-of-ov5647-5-megapixel-cameras-with-adjustable-lenses-for-esp32-p4-devkit-and-esp32-p4-pc-are-in-stock/ #esp32p4 #ov5647 #computervision #iot #mipi #csi #raspberrypi
#2
ESP32 / Re: Olimex ESP32 POE
Last post by LubOlimex - Today at 08:10:33 AM
Each ESP32-POE is tested empirically after manufacturing. The test includes programming at least two times.

Double check cabling, port selection, programming settings and configuration. Try with another software tool.

Try reinstalling the CH340 driver.

My advice is to also first try with the tools supported by the chip manufacturer Espressif -  like esptool, ESP-IDF, ESP32 package for Arduino IDE.
#3
ESP32 / Re: ESP32-PoE-ISO UART1 issue
Last post by bartgrefte - May 24, 2026, 10:54:51 AM
Then why does the MOD-RS485-ISO have a half-duplex mode which according to the manual is the default mode? It wasn't actually default by the way (neither was passthrough mode which required a factory reset), there was only one jumper on the board and it wasn't used for half-duplex mode.

Since it seems the MOD-RS485-ISO does not actually support half-duplex mode, why is this even in the manual and why are there jumpers for this?

Finally found the AMS1117's so that I could test the 3.3V FTDI-cable (with 5V VCC) directly on the MOD-RS485-ISO, without having the ESP32-PoE-ISO involved.

When connecting it to my laptop and testing with ModBus Poll (which I confirmed working with a RS485 USB stick) I got "insufficient bytes received" and when I checked the communication traffic the data looked the same as when I connected Rx and Tx together: what is received is the same as what was send. Is this to be expected?

Currently waiting for "dumb" RS485-UART adapters that are 3.3V compatible.
#4
ESP32 / Olimex ESP32 POE
Last post by bend - May 23, 2026, 06:24:52 PM
hi,
I bought 2 olimex Esp32 POE
i try to flash wled on it
it failed on both devices with running message : preparing

Any Tips to flash these devices?
regards
#5
ESP32 / Re: ESP32-PoE-ISO UART1 issue
Last post by LubOlimex - May 22, 2026, 08:49:47 AM
Nowhere did we mention that we used or tested ModBus. Never have I or any colleague explored empirically that compatibility until now.

The one thing I can try to do is to give the firmware source to AI and ask it to the change default mode of operation from full-duplex to half-duplex and make it compatible by default with Modbus and ESPEasy. I would test it a bit. If this succeeds I can send you the hex and you can change the firmware via PIC16-compatible programmer (attached over the ICSP connector) and test again.
#6
ESP32 / Re: ESP32-PoE-ISO UART1 issue
Last post by bartgrefte - May 21, 2026, 06:42:47 PM
"Well, read again slowly your last reply. Voila. That is how Schottky diodes work - it blocks current from travelling in reverse direction and also why the Schottky is fine on GPI36 (it has only one direction)."
Yes, but that does not explain why I am not getting a beep with the continuity measurement between UEXT-GPI(O)36 and the one on the side of the board. Correct me if I'm wrong, but shouldn't that, just like directly over the diode, also give a result/beep in just one direction? I'm getting nothing, in either direction. Only when measuring directly over the diode I get a result.

"and there is also pull-up resistor on the wire...."
Which is not active when the circuit is unpowered, so I am still wondering why directly over the diode there's a result, but not between the two GPI(O)36 pins. If the circuit where active and with that the pullup, then yes, but during the continuity test the circuit and with that the pullup was not active.

Plus when I Googled I came across that other topic (where my startpost was split from) so I thought something might've been wrong with UART1.

"- Connect RX to TX via jumper wire like this:"
That was on my to do list, but due to a move, everything is somewhere else and partly still in boxes. Have been having problems finding stuff, like the jumper wires. Just found one, hooked it up, connected ModBus Pull (which also failed to make contact to the meters) to the serial server in ESP Easy and after checking the communication window in ModBus Pull I see Rx data that matches the Tx data and when disconnecting the jumper wire, no Rx data. So it seems the UART does work.

"it is in the compatibility between MOD-RS485-ISO's firmware and the software libraries (ESPEasy, Modbus) you'd want to use."
Including ModBus Pull on Windows which I tested through the serial server plugin on ESPEasy. Once I've found the AMS1117's (got a 3.3V FTDI-cable with a design flaw) I'm planning on testing that directly on the MOD-RS485-ISO module, see if I can rule the combination ESPEasy and MOD-RS485-ISO out.

"There is no point of using MOD-RS485-ISO if you are going to use Modbus, that is what I am saying"
Well, something like that could've been mentioned in the FAQ on the product page ;) , if I had known this, I would've bought something else. Though those dumb boards (MAX485 ?) aren't isolated as far as I know. Thought getting an isolated board was a good idea.

"Re-write parts of ESPEasy/Modbus so that it is compatible with MOD-RS485-ISO"
Do you have any insight on where ESPEasy's SDM*** library might be failing with this? I assumed ModBus was as simple as: Master (ESPEasy plugin) sends command with request for data from a certain register, MOD-RS485-ISO passes it along over RS485, ModBus-meter responds and sends the requested data back, MOD-RS485-ISO passes it along over UART to the ESP32.
#7
ESP32 / Re: ESP32-PoE-ISO UART1 issue
Last post by LubOlimex - May 21, 2026, 01:53:27 PM
Well, read again slowly your last reply. Voila. That is how Schottky diodes work - it blocks current from travelling in reverse direction and also why the Schottky is fine on GPI36 (it has only one direction).

Just take my word for it - there is a hardware connection between ESP32 module pin #4 and UEXT pin #4 and it is visible in both the schematic and the PCB. It is not a straight wire, it has a diode on its way, and there is also pull-up resistor on the wire....

Listen, just do the following test, it is the easiest test, which people that test UART do first:

- Connect RX to TX via jumper wire like this:



- Open Arduino IDE, install the ESP32 support for Arduino and use this code:

uint32_t c = 0;

void setup() {
  Serial.begin(115200);
  Serial2.begin(115200, SERIAL_8N1, 36, 4);
}

void loop() {
  Serial2.printf("P%lu\n", c++);
  delay(500);

  if (Serial2.available()) {
    Serial.println(Serial2.readString());
  } else {
    Serial.println("BREAK");
  }
}

- Download it to the board, refer to my settings (you'd have different COM port):



- Open serial monitor - you'd see pX every half a second; remove one side of the wire, message will change to BREAK, connect it back pX will resume again. Like here:



Now when it is clear that issue is not with the UART. You'd realize the problem is elsewhere, it is in the compatibility between MOD-RS485-ISO's firmware and the software libraries (ESPEasy, Modbus) you'd want to use.

Honestly, after analyzing and working on this for a few hours I don't think the default firmware of MOD-RS485-ISO would work with ESPEasy or Modbus - the main problem is that the board is designed for full duplex and ESPEasy and Modbus are made for half duplex; standard libraries like Modbus, ESPEasy, etc. expect either a dumb transceiver with controllable DE/RE or an auto-direction adapter. The firmware gives them neither in default pass mode. Also the firmware of MOD-RS485-ISO is like an alternative of ESPEasy and Modbus, it was made for people that want to use simple commands. There is no point of using MOD-RS485-ISO if you are going to use Modbus, that is what I am saying, since MOD-RS485-ISO has more hardware than required, and it is more expensive than a dumb transceiver. Like all possible ways forward are:

- Get another simpler RS485 transceiver and leave MOD-RS485-ISO for another task that doesn't require ESPEasy or Modbus;
- Use MOD-RS485-ISO without ESPEasy with its own commands, implement similar behavior to what ESPEasy does;
- Re-write parts of ESPEasy/Modbus so that it is compatible with MOD-RS485-ISO;
- Re-write the MOD-RS485-ISO firmware.

The software effort to modify ESPEasy or the firmware would be huge and would require a lot of knowledge.

That being written, take into account that the software of MOD-RS485-ISO is open source and sources are available to improve and study and modify.
#8
ESP32 / Re: ESP32-PoE-ISO UART1 issue
Last post by bartgrefte - May 21, 2026, 12:18:34 PM
As for the schottky diode, I did a continuitytest over the diode, beep in one direction, no beep other way round. No beep between UEXT pin 4 and GPI(O)36 pin on the side of the board, in either direction.
#9
ESP32 / Re: ESP32-PoE-ISO UART1 issue
Last post by bartgrefte - May 21, 2026, 10:51:12 AM
"GPIO36 can only be input which is fine for RXD"

I am aware of that, GPI(O)36 is selected for Rx1 (HW Serial1 in ESPEasy) and 4 for Tx1 and ESPEasy is also aware 36 is input only (there's an arrow next to it indicating input only, can't even select 36 as Tx). But that does not explain why a continuity test does work between the GPI(O)36 pin on the side of the pcb and the ESP32, but not between UEXT pin 4 (GPI(O)36/Rx1) and both the other GPI(O)36 as well as the ESP32, doesn't it?

"I have no idea where are you looking at the schematic but the connection between GPI36 and the main module is visible. Here is an excerpt with wire path circled"

I am looking at https://github.com/OLIMEX/ESP32-POE-ISO/blob/master/HARDWARE/ESP32-PoE-ISO-Rev.M/ESP32-PoE-ISO_Rev_M.kicad_pcb in KiCad, where I followed the trace and couldn't find a connection to the solderpad of UEXT pin4. That, plus the failed continuity tests and data being send but not received, made me think UEXT pin4 isn't connected to anything.

"I believe the issue is somewhere in the pass part of the firmware, which is probably not a real problem for you, since you can use the I2C pins, but can be a problem for somebody that doesn't have the free pins."

Well, I was planning on using the Rx/Tx pins since I2C will be used by other things.

"Meanwhile, I will try to create simple Modbus demo for Arduino IDE to demonstrate using Modbus between two ESP32-POE-ISO boards and two MOD-RS485-ISO"

I have been using ESPEasy for that, specifically plugin https://espeasy.readthedocs.io/en/latest/Plugin/P078.html , but instead I also tried the serial server and then ModBus Poll on Windows through a virtual comport. Again, data is being send, nothing received.
#10
ESP32 / Re: ESP32-PoE-ISO UART1 issue
Last post by LubOlimex - May 21, 2026, 08:19:53 AM
No, but I can confirm the opposite. Let me explain why you are measuring wrong:

1. Notice how we named GPIO36 as GPI36. This is not naming error. GPIO36 can only be input which is fine for RXD. This is the way the ESP32 chip and modules were designed, some pins can only be inputs. So GPIO36 actually can't be output or serve for TXD.

2. There is D4 SCHOTTKY diode to prevent parasitic powering over the RXD pin and act as protection.

3. I have no idea where are you looking at the schematic but the connection between GPI36 and the main module is visible. Here is an excerpt with wire path circled:



I believe the issue is somewhere in the pass part of the firmware, which is probably not a real problem for you, since you can use the I2C pins, but can be a problem for somebody that doesn't have the free pins.

Meanwhile, I will try to create simple Modbus demo for Arduino IDE to demonstrate using Modbus between two ESP32-POE-ISO boards and two MOD-RS485-ISO.