Simple test circuits for the Nmea1St

Discussion about the Nmea1ST - bidirectional bridge between SeaTalk1 and Nmea0183
Post Reply
Luis Sa
Site Admin
Posts: 535
Joined: Thu May 04, 2017 4:12 am

Simple test circuits for the Nmea1St

Post by Luis Sa » Wed Mar 31, 2021 12:12 am

Hello,

If you can use the USB port (that exists in most ESP32 development boards) as the Nmea0183 port you can run the software in a simpler circuit without the 12V to 5V voltage regulator, the MAX485 driver and the HCPL2731 optocoupler. Here is a possibility:

1-transistor.jpg

Unfortunately this circuit is not good as it does not allow the data line to go to 12V when Q2 is OFF. I am thankful to Dagnall for pointing this error to me. The circuit on Thomas Knauf document is not applicable here as we need GPIO18 to see a HIGH (3V3 maximum) when Data line is idle at 12V. One possibility that I did not test, but could work is this:

2-transistors.jpg

A further simplified circuit that I use for testing and development purposes (excluding the SeaTalk1 bus collision tests) is shown in the following picture:

st-4.jpg

In order to use this circuit I set the variable LoopBack as shown:

Code: Select all

boolean LoopBack = true;              // Normally when you transmit data on the SeaTalk bus you stop

and I send Nmea0183 sentences from a file to the Serial Port (USB) of the ESP32 module. These sentences are converted to SeaTalk1 datagrams and sent serially on pin GPIO17. This signal is inverted by the transistor and read again at pin GPIO18. The datagrams are converted to Nmea sentences and send out at the Serial Port and shown in a monitor or stored in a file. This is a picture of the actual circuit:

st-5.jpg

Regards, Luis

Post Reply