RS485 Voltage Levels on COMMU Module

  • Hi,

    I want to use the RS485 from the COMMU module.

    But I am wondering why the differential voltage between A and B from RS485 signal is so small (800mV).
    I tried to connect it to a smart meter, but communication with M5Stack Core and COMMU via modbus protocoll isn´t possible.

    Configuration, software and signal see pictures. What´s wrong? I have no more ideas. So I assume, that voltage leves are to low.

    3_1656018851170_K1024_IMG_20220623_200921.JPG 2_1656018851170_K1024_IMG_20220623_200857.JPG 1_1656018851169_K1024_IMG_20220623_200837.JPG 0_1656018851169_K1024_IMG_20220623_200759.JPG

  • Hello @RoToR

    when I send something from the M5Stack and measure between A and B (w/o anything else connected) I get an amplitude of about 1.5 V.

    Have you tried with a 120 Ohm resistor at each end?

    Have you tried w/o the ground wire?


  • @felmue, thanks for your measurement.

    I don´t understand ...
    3,3V and 5V measured on M5Stack are good.

    With 120 Ohm differential voltage it`s 200mV, so with load even worse.
    Ground wire disconnected, same issue.

    I downloaded the test software to M5Stack and took a separate USB power supply, but the same ...

    It seems, that there is not enough power on SP3485 chip.
    Do I have to enable something?

    I already changed the M5Stack and the COMMU, without success.
    I will cross change again.

    What do you measure without sending a message? I measure 0.57V. Should be much more, when I take a look on the schematic with the assumption, that A/B output is not low-ohmic.


    I just tested a new M5Stack and another COMMU module. Same issue.

    For RS485 communication I took RS485 unit library. Could this be the problem?

    Now I will compare the schematic from RS485 unit with COMMU module.


    It is comparable, should not be the issue.

    Is there a design issue with the COMMU boards? Mine are from October 2011.
    Or are both COMMU modules broken?

    What else could I do?

  • I ordered now at Amazon an external UART/RS485 adapter, which will arrive tomorrow. Will test it on Sunday.

    My conclusion up to now is, that the COMMU is unfortunately not suitable for UIFlow, because today I also wanted to test the CAN Bus, but the CAN library is not usable, because it is only for CA-IS3050G Chip, which has only RX and TX.
    If I would have the time, I would programm it in Arduino, but that´s not the case, so for me the COMMU modul is rubbish and a waste of time.
    It would be really a great module, if it would be supported by UIFlow ...

  • Hello @RoToR

    one difference between the RS485/TTL unit and the COMMU is that the RS485 circuit in the former is powered by 5 V whereas the latter is powered by 3.3 V. (Not sure why M5Stack engineers decided to use 3.3 V in the COMMU module.)

    I've done my measurements with the RS485 board that was included with the LAN module. When I power it with 3.3 V, with 120 Ohm resistor and not sending anything I get about 1.5 V between A and B. When I power it with 5 V, same conditions, I get about 2.5 V between A and B.


  • @felmue thanks, I see. They are connected to 3,3V, could be the reason. But I will no more waste my time with this modules. I am testing the other RS485 adapter this weekend and report.
    Hopefully they have the same behavior as yours. These values I expected from the COMMU ...

  • Just a short feedback.
    I tested now the new RS485 to TTL converter.
    It is working well together with the smart meter. Now communication is possible. All voltage levels are much higher.


    The COMMU module is rubbish! Should not be used for RS485. I lost a couple of hours to fix this issue.

    Now I have the issue to convert the float values from the smart meter into decimal / integer.
    Any idea, how to do this with UIflow? is there a function available?