Separating serial connections RAK11301 + 5860 + UART

I’ve got a sketch that takes incoming TTL data on the UART and parses it. The listener is on Serial1 and it’s doing exactly what it needs to do. Now I want to take the messages and send them to Hologram via the 5860, using the BG77 Hologram_Tcp example as the basis.

The problem I’ve run into is that both the UART and the modem are designated as Serial1 and I want to have them both listening concurrently. How do I disambiguate the interfaces?

Hi @phil ,

Do you mean you have two UART modules that needs to communicate to Serial1 UART lines simultatneously?

I am not sure if this is possible without using a switch IC.

What I mean with switch IC is like this:

image

No, I have the UART listening on RX01. My issue is that both the UART and the modem are referenced by Serial1 and I need to distinguish between them.

Hi @phil ,

I still do not get it. Maybe I do not understand how the devices the UART and the modem (I think this is the RAK5860) are connected to WisBlock Base and RAK11310 core.

Yes, it is the RAK5860 in IO slot A on a dual IO 19011 base board. The UART is exposed on pins TX01 and RX01 of J18 and I am only using RX01. I tried moving the modem to IO slot B and nothing changed.

I hope I understand now that the UART device and RAK5860 share same UART lines.

This is tricky. One possible way to make this work is use RX1 to parse the data from your UART device then use TX1 to send command to RAK5860.

However, this is only possible to work if you can isolate both TX side of the UART device and RAK5860. Electrically speaking, if they are connected physically together, I am not sure what will happen since both pins are not in high impedance state (I assume since they are both output).

If you really want to push this, since RAK5860 has discreet 1.8V to 3.3V level shifter, you can probably remove all this components so that the RX1 of RAK11310 will now be independent solely on the UART device. You sacrifice getting feedback from RAK5860 on this approach.

image

These are just ideas I can share. We are hacking a way to make this work and I am not sure if this is a good idea.

I don’t actually need to listen to the RAK5860 except when actively sending data to the Hologram network. So I could power off the modem except at transmit times (once every 5 or 10 minutes) and that way I know that what comes in on RX01 is TTL coming from the external control board.

I’m prepared to sacrifice incoming data during transmit cycles, as all totals are cumulative and parameters are sent repeatedly.

[EDIT] Thinking about this a little more…I’d rather not power down the modem repeatedly, as in some locations it can take a while to get a good signal from the tower. I wonder if I can use ATQ to mute the TX line of the BG77.