Arduino + RS-485 + Ethernet + Radio

  • Dear associates!
    I ask to help me with the solution of a task:
    I try to realize a gateway on basis of Arduino UNO, which is possible to connect sensors on RS-485 and RFM69 radio interfaces.
    The Arduino is required to be connected in local network.
    For this I plan to connect MAX485 module with AltSoftSerial library according to the following scheme:
    D8 -> RO,
    D9 -> DI,
    D10 -> not used,
    D2 -> RE/DE.
    At the same time I plan to put the Ethernet W5100 module which standard scheme:
    D13 -> SCK,
    D12 -> MISO/SO,
    D11 -> MOSI/SI,
    D10 -> SS/CS.
    And the RFM69 module with the adjusted scheme:
    D7 -> DIOO,
    A2 -> MISO,
    A1 -> MOSI,
    A0 -> SCK,
    D6 -> NSS.
    I'm not sure for 100% that Arduino will be able to support all these modules at the same time.
    But that most of all concerns me, this simultaneous use of pin D10 - MAX485 and W5100 modules.
    What I can make in this situation? Whether modules will work or what changes it will be required to make?

  • I have just started using mysensors myself but the shared D10 pin you mention is an issue for sure..

    Both the ethernet module and the RFM radio use an SPI connection to communicate. The SPI bus can be shared between multiple devices is you want (MOSI,MISO, SCK), and do so based on a separate signal "Chip Select" Each device sharing the SPI bus need to have their own dedicated CS signal to know if it is their turn to use their shared SPI bus.

    In you proposal however, software based SPI is used ,so both of your devices have their own data pins.. But they still need their own dedicated CS signal. Which is the signal you intend to share.. that wont work,.

    Also, I have been asking around if you can create a combined gateway node for both wireless (NRF/RFM based) and wired (RS485 based) communication.. From what I gather, it is not possible to combine these functions. 2 separate gateway nodes are needed.

Log in to reply

Suggested Topics

  • 7
  • 10
  • 2
  • 1
  • 2
  • 16
  • 4