eModbus / eModbus

Modbus library for RTU, ASCII and TCP protocols. Primarily developed on and for ESP32 MCUs.

Home Page:https://emodbus.github.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add option to use software serial

I-Connect opened this issue · comments

Hi,

We ran out of HW serials, would it be possible to use/add a constructor for software serial?

We use this library for that:
https://github.com/plerup/espsoftwareserial

Thx

Someone did that in a fork of eModbus already, so yes, that is possible. It is not on our roadmap yet, but I definitely will have a look at it.

Hey Michael, thx. do you know which fork, there are a lot :-)

Then maybe I will use the fork until it is implemented in the original lib.

Hi,

We ran out of HW serials, would it be possible to use/add a constructor for software serial?

We use this library for that: https://github.com/plerup/espsoftwareserial

Thx

Hai @I-Connect,

I suggest to change the UART HW Serial port to the other IO Pin explicitly, Any pins other than Read only pin & Strapping Pins works. It will closely behave like a HW serial pin.

the fork you mentioned also had some adaptations for the esp8265 (which did not compile for an esp32), I started with your lib and changed only the software serial part serfreeman did. It seems to work (with SW serial) although it only works on core 1 for me but that could have to do with all the other tasks I am running...

If you want I can create a pull request...?

If you want I can create a pull request...?

Although this will be welcome, wait a sec, please. @bertmelis currently is trying to refactor the async TCP interface in the fix-async branch that I would like to merge first and independently. You could of course use that branch to create your PR, since I reckon the affected sources will be disjunct.

There are indeed only changes in the RTU files so it should not bite but I understand you want to wait, no probs... currently have it implemented in a fork

Let me know when you are ready

👍🏻 Will do.

Closing this as now it is possible to use any Stream-based interface.

thx!!