First of all, a few important notes that you should definitely pay attention to.
Fig.: Clipper Wind daughter display
The Clipper Wind daughter display is actually intended to receive wind data from the main unit as a NMEA0183 telegram MWV to receive and display. To do this, NMEA0183 data is sent from the main device to the daughter display. However, the data interface is not compatible with RS422 and cannot be connected to other devices. The article shows how you can use a serial/USB adapter in conjunction with a matching circuit on a Raspberry Pi to send data to a Clipper Wind. For example, wind data from SignalK, OpenPlotter or AVnav can be displayed quite inexpensively with the Clipper Wind daughter display.
The daughter display is connected to the main device via 3 lines:
Line | meaning | comment |
Red | + 12V | Supply voltage |
Blue | NMEA | NMEA input with 12V level, inverted |
umbrella | GND | Dimensions |
However, the built-in interface does not correspond to the RS422 standard, so the signals from devices from other manufacturers cannot be processed. The interface is based on 12V signals, which are also inverted. Of course, this means that communication with common interfaces from other manufacturers cannot work. Through reengineering of the interface, it has emerged that the interfaces have the following technical specification:
- Communication type: Serial, 8N1, RS232-like
- Signal level: 12V, inverted
- Unipolar data transmission
- Reference potential: GND
- Simplex operation (receive only, MWV)
- Speed: 4800 bds NMEA standard
This results in the need to invert the signals and amplify them to 12V.
USB serial converter for connecting to the Raspberry Pi
With a simple USB-serial converter and a few additional components you can build a functioning matching circuit yourself.
Fig.: USB serial converter circuit diagram
The USB-serial converter is first set to 5V TTL signals. There is a small jumper on the right side near the pin header. The function of the circuit is quite simple. The signal comes from the TX output of the USB-serial converter and is connected to the base of the transistor via a 4k7 resistor. The transistor circuit works as an inverter. The 1k resistor on the collector of the transistor serves as a pull-up resistor for the NMEA output. The emitter is connected to GND and forms the reference signal. If a low signal arrives via USB and is output via TX, then the transistor is non-conductive and the pull-up resistor pulls the voltage at the NMEA output to 12V. With a high signal, the transistor between collector and emitter becomes conductive and connects the NMEA output to ground. The signal is then inverted.
The Clipper Wind daughter display only processes MWV NMEA0183 telegrams. The display ignores all other telegrams that are also sent over the line. A USB cable with a mini USB plug is used on the USB-serial converter. On the Raspberry Pi, the interface speed must be set to 4800 Bd.
Danger! At the low speeds of 4800 Bd, you have to be careful not to send too much data in too short a time, because the interface speed does not allow this in all cases. A character is transmitted with approx. 10 bits. With 4800 Bd you can transfer a maximum of 480 characters per second. With appropriate telegram filters you can ensure that only MWV telegrams are transmitted to the daughter display.