Notes on Lollette LE3U PLC

Raspberry Pi connected to Lollette LE3U
Raspberry Pi connected to Lollette LE3U over Modbus RTU (RS485).
  • Lollette LE3U is a “copy” of the Mitsubishi FX3U PLC for $60 on AliExpress while the original costs around $1000.
  • All configuration is done using Mitsubishi’s proprietary software GX Developer or GX Works2 which cost another $500 but have a 60-day free trial available online.
  • It features 14 digital inputs, 6 analog inputs, 2 analog output and 10 relay outputs.
  • The RS485 port is not configured by default so you can’t control any of the relays or read input values without first uploading new configuration program.
  • Programming is done using visual Ladder language which is somewhat confusing to get started until you realise that it’s pretty much a mapping of input triggers, registers and their values.
    • Each physical input maps to a register which can then change another output register depending on certain rules.
    • Configuring parameters is “moving” 1-byte or 2-byte strings into registers.

Configure RS485 Modbus

To configure the device as a Modbus “slave”, hook into the M8002 event and configure the following registers:

  • D8120 with the details for the serial protocol. Set it to H4081 to enable Modbus RTU slave protocol with 8 data bits, 0 parity bits, 1 stop bit and a 9600bps transfer rate.
  • D8121 for the device ID or station number. Set to K1 where 1 is the device ID.
  • D8129 for the communication timeout (optional). Set to K100 where 100 is the timeout in milliseconds.

The 4-byte values are entered as a string of matching hex values starting from the lowest bit (please ignore the actual register values since this is from a different device):

Example of register value bit mapping to H notation.

See these two videos for detailed instructions:

2 Comments

  1. István Magi says:

    Hello! Please help! What Modbus functions are implemented in the LE3U PLC, because it does not execute the 02 Modbus command for me (it does not accept the received data from the Slave device). It executes the 03, but the Slave device does not recognize it (only the 02).

    • Kaspars says:

      Hey! I haven’t played with the device since I published this post so unfortunately I don’t have any practical examples or snippets for how to do it. See the links in the footer of the post — there should be additional videos for how to configure other Modbus functionality, I believe.

Leave a Reply