Anchor light automatic with Shelly 1

Fig. Shelly 1

Anyone who anchors is obliged to set an anchor light so that you can be recognized on the open water surface in the dark. Typically, the light is switched on manually at dusk and off again at sunrise. There is no problem switching it on. But you often forget to switch it off and the anchor light is then permanently on and consumes electricity unnecessarily.

With a Shelly 1, an automatic anchor light can be built that can switch the anchor light on and off independently. To do this, the Shelly obtains the time from the Internet and calculates the sunrise and sunset times and switches the anchor light accordingly. For this to work, the following conditions must be met:

  • Shelly V1 or V3 with original firmware
  • Permanent WiFi connection to the internet via port WiFi or mobile internet router to get the current time
  • Permanent power supply of the Shelly 1 with 12V (0.08W stand-by relay off, 0.2W relay on)
  • Connection of the switching contact from the Shelly with the switch for the anchor light (parallel connection)

The project is aimed at laypeople with little experience. The Shelly does not have to be modified or rebuilt for this. It is used as purchased and the main work is to configure the Shelly and connect it to the boat's electrical system. No major modifications will be made to the existing electrical system and an existing switch for the anchor light can continue to be used as before. The instructions presented here only work for the Shelly 1 V1 and V3. The Shelly 1 V2 cannot be used because the switch contact is not potential-free.

Basically, the Shelly can be used in two operating modes. Once with a cloud connection and once without a cloud connection. A cloud connection is not necessary for our project and the automatic anchor light also works without it. If you want to control or switch the anchor light from home via the Internet, you can also use the cloud. If you enjoy it, you can also use the Shelly1 via the cloud Control Amazon Alexa or Google Home with voice commands. The following description shows how to prepare the Shelly for the automatic anchor light.

Set Shelly to 12V supply

When delivered, the voltage selector is set to 230V AC. We have to set the jumper to the position for 12V according to the picture and supply the Shelly with 12V via N and L. But watch out! N is not equal to ground but 12V, whereas L is ground. On average, the Shelly consumes only 0.08W when the relay is not activated. However, this only works if the latest firmware V1.11.8 or newer installed and Eco mode activated.

Fig: Meaning of the pin headers


Fig: Assignment of the supply voltages for 12V


Bring Shelly 1 into your own network

How this works in detail is explained in ShellyDocumentation sufficiently well described. A static IP address does not have to be assigned. The field can remain disabled. If a usable port WiFi is available, you can use its login details. In order to be able to use the automatic anchor light regardless of location, we recommend connecting to the Internet via a mobile UMTS or LTE router. Alternatively, a disused mobile phone can also be used in hotspot mode.


Fig: Start page

Fig: Internet & Security page

Danger! You have to be careful when entering the network parameters. If you entered the WiFi SSID or password incorrectly, you will lock yourself out and no longer be able to connect to Shelly. A hard reset to factory settings is only possible via a cumbersome procedure. To do this, you have to switch the power supply off and on again and then press the switch at the SW input 5 times within one minute. The right timing is a matter of luck and requires several attempts to be successful. In the worst case, the Shelly can no longer be activated and you have to flash the firmware again. How to do that is in this one Flash guide described.

After the Shelly is in the network with Internet access, you should update the firmware, since the Shelly has been on the market for a long time and some models with old firmware are still available. The latest firmware offers some more functionalities and has been corrected for errors. The firmware update can be found at Settings ->Firmware update make.

Fig: Firmware update

Set the source of the system time

By default, the time is automatically fetched from the Internet and the correct time zone is set, provided there is an Internet connection. At the top right of the start page you can check whether the system time is set correctly. If this is not the case, you can go to Settings -> Time Zone and Geo Location make the necessary settings.

Fig. Setting the source of the system time

The Shelly does not require a permanent internet connection to update the time. It is sufficient to fetch the system time from the Internet once after the start. A port WLAN is completely sufficient. The time continues to run in Shelly even without internet. However, you should be careful not to switch off the Shelly without an Internet connection, otherwise the time cannot be fetched when you restart and the switching function can no longer be carried out correctly.

Set switching function

Via the configuration page Weekly schedule the switching function for the anchor light can be set. A timer is added for switching on and off and fixed times are set, or you can also use the sunrise and sunset times as a source. This is very practical, as the switching times are automatically adjusted to the actual position of the sun. If you want, you can change the switching times individually with an offset.

Fig: Set switching functions for sunset and sunrise

Fig: Settings for sunset

Fig: Setting for sunrise

Automatic anchor light circuit

Depending on the type of Internet access for the Shelly, you must either connect the power supply of the Shelly directly to the main switch or you can use a group switch on the control panel such as the refrigerator switch. The Shelly's potential-free switching contact is switched on the control panel in parallel with the switch for the anchor light. You can switch the anchor light either via the Shelly or directly via the switch on the control panel, whereby the switch on the control panel always has priority and can override the switching status of the Shelly. There is a problem though, when the Shelly has the anchor light on, you can't turn it off with the switch on the control panel. Either you then de-energize the Shelly or deactivate the switching states in the Shelly.

Fig: Automatic anchor light circuit

Additional information

A few other functions on board can be automated in a similar way, such as heating, ventilation, battery charging or bilge drainage. Anyone who has activated the cloud connection can then also control all functions remotely via the Internet and, if necessary, be informed by e-mail. For the Shelly 1 can be found at Thingiverse 3D printing templates for a DIN rail holder. In this way, the installation can be carried out professionally in a sub-installation.

Fig: DIN rail holder for Shelly 1 with temperature addon module

Here is some additional information about Shelly:



Lilygo T-Watch 2020 with connection to SignalK

Fig. Lilygo T-Watch 2020 (Lilygo)


Jan Dytrych has started a software project to be able to display data from SignalK and receive alarms with a smart watch. Not just any common clock under Android is used as a smart watch. He uses the smart watch Liligo T Watch 2020. The special feature of this clock is that it has an ESP32 installed as a processor and can be programmed via the Arduino IDE or PlatformIO. The manufacturer Liligo supports the watch with a number of libraries that make programming much easier.

The Liligo T-Watch 2020 has the following components:

Fig. Hardware Lilygo T-Watch 2020 (Lilygo)

  • CPU: ESP32, dual-core MCU, 240MHz
  • FLASH: QSPI Flash 16MB
  • WiFi 802.11bgn 2.4GHz
  • Bluetooth 4.2 BR/EDR, BLE
  • Display: 1.54 inch color TFT, capacitive touchscreen, 240 x 240 pixels
  • 3-axis accelerometer BMA423
  • RTC clock: PCF8563
  • IR receiver
  • speaker
  • Button: power button
  • USB to TTL: CP2104 (Micro USB)
  • Lithium battery 380 mAh, 3.7 V, exchangeable Type: YX-W9A
  • Operating temperature range: -40 ~ +85 degrees
  • metal body
  • Water tightness none
  • Silicone strap 270mm
  • Weight: 58.5g

A USB cable is supplied with the T-Watch 2020, which can be used to charge the watch and transfer programs. The watch has an aluminum metal case and the design is based on the Apple I-Watch. The watch is comfortable to wear with the non-replaceable silicone strap. The only weak point is that the watch is not waterproof.

Properties of the firmware

The firmware for the clock is at GitHub hosted and has the following features:

  • Clock function main screen with status bar
  • Setup screen for Date, Time, Alarm time, WiFi, SignalK
  • Custom screens for values from SignalK
  • SignalK events wake up the clock and display messages
  • Sleep mode with display off for long operation up to 24 hours
  • Wake up the display with a tap or twist of your wrist
  • Day/night mode via double tap
  • Language customization via source code
  • pedometer

Fig. Start screen, warning message and SignalK values

Settings and Configuration

The basic settings can be made on the watch via the display. The program is available for designing user-defined image content for SignalK values TWatchSK Designer for Linux, Mac and Windows. This makes it very easy to create new display pages for SignalK and transfer them to the clock via a USB connection. The configurator allows a wide variety of representations and color selection for the values to be displayed.

Fig. TKWatchDesigner with result


With his open source software project, Jan Dytriych has developed a cool application with which it is possible to view and monitor data from SignalK on the wrist. The alarm messages in particular are a useful function for being informed about limit value violations. The project is very well documented on Github and those interested should find all the necessary information. With the T-Watch 2020, Lilygo has provided interesting hardware for little money, with which a large number of projects can be implemented. The use of the popular CPU ESP32 simplifies software development for makers, as they can develop in familiar environments with known knowledge. The only downside of the T-Watch 2020 is that it is not waterproof. Whether this is a KO criterion remains to be seen in practical use on the boat. Let's hope that Liligo will also release a waterproof T-Watch in the future.


Project Homepage:

TWatchSK Designer:

Lillygo T Watch 2020:


Fig. Lilygo T-Watch 2020 (Lilygo)

Fig. Opened cover, lithium battery on the right

Magnetix - a digital compass with NMEA2000


I've always found the idea of not only showing the course on my plotter when the boat is moving, but also when it's bobbing along quietly, I've always found it exciting.

After searching the I-Net for different manufacturers, it quickly became clear that I might not need an e-compass on board at current prices. Due to the corona restrictions and the more free time being spent at home, the idea of building the compass myself came up.

The construction of the electronic compass with an output to the NMEA2000 network was inspired by a post by Andreas in the "" forum.
Thanks to many tips in different forums, it was successful. The compass is ready, but not yet tested on the boat (status: 2022.01).


Magnetix is an electronic compass that transmits its data on the MNEA2k bus. A CMPS14 serves as a basis as a sensor, an ESP32 as a calculator, a Waveshare SN65HVD230 (don't forget to break out the resistor) as a link to the bus and an LM2596 as a voltage converter. A 0.91 inch OLED with 132×32 pixels is used for the display in the housing.

The housing for the electronics is a Bocube from "". Both the bracket and the housing were 3D printed for the sensor. The brackets for the OLED and the touch sensors (VA screws) were also created with a 3 printer.

The connection between the compass sensor and the ESP is made via a KAT5 network cable, in which two cables are always connected to form a pair. Although the protocol between the CMPS and the ESP is a short range protocol (I2C), I have no problems with a cable length of ~70cm

Power is supplied via the NMEA bus and is ~1LEN. A built-in plug from Techno-Spark is used to connect to the network.

The ESP gets the data via the I2C bus, converts the whole thing into an NMEA2K data set (127250) and sends it to the network.

The compass identifies itself on the bus as "Magnetix Alpha" and can also be found under that name in the network's sources.

variables in the code

Complete source code
devotion []
is an array with 36 possible entries. A deviation table can be stored in it, which automatically corrects the given course for the respective courses.
This can be used to set a - horizontal - correction for a deviation of the compass line from the boat axis.

[-] Values for a port correction

[+] Values for a starboard correction


Operation is limited to the two touch surfaces (screws):

touch surface function
1 auto calibration on
2 autocalibration off
1 & 2 initiate new calibration


The display is divided into three areas:

Left (in 90° rotated font)
Current function of the sensor
"calib" the sensor is currently being calibrated, which was triggered by touch 1&2.
"inacc" if the sensor is not fully calibrated (not all sensor responses are 1) “inaccurate” will appear. The HDM data was not switched off, as messages 0 occur very often.

It may have to be adjusted after field tests on board

"ON" The sensor is in "autocalibration" mode
OFF The "autocalibration" mode is switched off
S Sensor system status followed by two numbers
A. 'Status of the accelerometer
M Magnetic sensor status
The three details are each specified by the following numbers:
00 nothing is OK
11 everything OK
01 or 10 partially OK
(Unfortunately, what these numbers mean exactly is not clear from the documentation of the CMPS14)
Right of the line
M magnetic course
R roll of the sensor
P pitch of the sensor

construction and assembly

I built the whole thing in a standard housing in which I built a base plate as a support for the perforated plate and the voltage converter. The only thing to note when assembling is that the terminating resistor on the CAN module (Waveshare SN65HVD230) has to be broken out. Otherwise the Waveshare SN65HVD230 terminates the entire NMEA bus. The wiring can be in the Circuit diagram to be checked.

Unfortunately, in the first version, I placed my brackets for the display and the touch surfaces flush with the upper edge of the case. However, since the cover “pulls” itself completely over the lower housing, it no longer closes. 🙁


2022-03-01 New bracket for the case with a wall bracket to compensate for a wrong horizontal installation -> Thingiverse


the libraries used appear in the header of the INO file and are not discussed further here.

Links and Materials

All 3D printing components
ESP-32 Dev Kit C V4
Wave share SN65HVD230
0.91 inch OLED I2C display 128 x 32 pixels
LM2596S DC-DC power supply adapter step down module
PCB Board Set breadboard breadboard circuit board×4-stuck

However, I can't find my measurements in the list there!

PG - bushings

(think of mother)

Micro-C chassis connector
basics This year's winter tinkering: A NMEA heading sensor or electronic compass pitch and roll compensated

touch functions
NMEA basics AK Homberger Workshop (ESP -> NMEA2k)

Examples I2C NMEA


Air pressure level sensor

Fig. Control box with pump, pressure sensor and valves

In the Facebook group Raspberry Pi for Boats I saw a cool solution for level measurement. Erik from Finland constructed a monitoring system for 4 tanks with an air pressure sensor. The functional principle is based on the displacement of liquids in a measuring tube. A corresponding air pressure then builds up in the measuring tube, which is proportional to the level. The system uses a pump that builds up pressure in a hose system until the air flows out at the end of the hose in the tank. Depending on the length of the hose, the pump works for between 5 and 10 seconds, after which the static pressure in the hose system is measured, which is proportional to the static pressure of a column of liquid. So that you can control 4 tanks, 5 valves are built into the system, which establish a connection to the respective tank from which you want to determine the fill level. With this cool solution, he circumvents the problem of pressure loss in the hose system, because before each measurement he briefly starts the pump and refills the air that has escaped. At that time I had also experimented with hose systems and considered the solution to be unusable because I could not compensate for the pressure loss. The problem was that air has a very low density and can diffuse through hoses or escape at hose connectors. The air pressure can then not be maintained for several days or weeks. You can get around this by using continuous metal lines without connectors, which then makes the whole thing more complex. At the time I was involved in my project Engine diagnosis decided to install the pressure sensor directly in the tank and measure the liquid column directly.

Erik's solution has the advantage that there are no dangerous voltages on the tank and, in principle, you can monitor any number of tanks with the method. He uses a Raspberry Pi as an evaluation unit and displays the measurement results on a website. He housed all the electronics on a simple strip circuit board. Erik has the project on his Homepage described.

You can find one in the sailing forum interesting discussion with further information on this topic.

Fig. Pneumatic system structure


Fig. Hose end in the tank


Fig. Pump and valve control

Fig. Display and control unit

Volvo Penta NMEA2000 interface

First of all, a few important notes that you should definitely pay attention to.

Disclaimer: The descriptions of the wiring and the pin assignments correspond to what I found in my boat. Therefore, if you want to recreate the interface, you have to make sure that the wiring and pin assignments on your own boat are identical or adapt the interface accordingly. The entire description of this solution is in an experimental state and comes without any guarantee. Changes to the cabling of the boat or the electrical and electronic conditions can lead to damage or critical situations. You do so at your own risk.



The basic installation of a Volvo Penta engine (engines D1 and D2) with EVC consists of various sensors on the engine that are connected to the EVC / MDI (electronic vessel control / motor data interface) are connected. These data are sent from the MDI to the speed instrument via a CAN bus. Often there is only the tachometer with a small LCD display to show data. However, additional instruments can be purchased and connected behind the rev counter via the so-called Easy-Link.




The speed is displayed continuously. Other values, such as cooling water temperature and charging voltage, are only alerted in the event of an error, but are not displayed continuously. The interface described here connects the engine's CAN bus with an NMEA2000 bus. The information in the VP-CAN bus, which is available as J1939 datagams, is read, evaluated and written to the NMEA2000 bus as NMEA2000 datagrams. The data implemented so far are

  • Engine speed
  • Charging voltage
  • Cooling water temperature
  • Engine hours

In the NMEA2000 bus, the information can be displayed, for example by a plotter, and provided with warning levels.

When my boat was transferred over the Unterems in the direction of DEK, that saved me from very big problems. Due to the large amount of sediments in the Ems, the outer cooling circuit was increasingly clogged. Via my plotter (MFD) I was able to notice the temperature rise early on and react accordingly. Without the interface and the display in the MFD, the alarm would have come at some point, and then I would hardly have had any options for action, that there would have been no opportunities to moor or anchor. I should have continued driving with the risk of the machine overheating.



The Volvo Penta - N2K Interface consists of hardware and software components.


To physically connect the interface to the VP-CAN bus of the engine, you need an adapter cable with a Y-branch. The connection of the cable from the MDI to the tachometer are so-called 6-pin 'Deutsch plugs', male and female. (e.g. You connect the six pins of the plug with those of the socket. In addition, one derives 12v +, GND Can high and CAN low.

In order to physically connect the interface to the N2K bus (either Seatalk NG or NMEA2000), you also need a suitable cable. My interface is connected to a Raymarine Seatalk NG network. So I cut through a STNG standard spur cable to get a cable with a plug and an open end.


CAN bus transceiver

I use an SPI-MCP2515-CAN-Transceiver-TJA1050 to connect the interface to the engine's CAN bus at protocol level. This transceiver is controlled by the MCP_CAN_lib from Cory J. Fowler.

To connect the interface to the N2K bus at the protocol level, I use a Waveshare SN65HVD230. This transceiver is controlled by Timo Lappalainen's NMEA2000 library.

Since the ESP32 requires a voltage supply of 5V and the CAN bus is supplied with 12V, you also need a stepdown converter to 5V.




The code is available here:

It is based on code from:

Timo Lappalainen

Andreas Koritnik

Cory J. Fowler


These libraries are required:



Volvo Penta - N2K Interface: How to proceed

  1. Obtain the hardware components
    • ESP32 development module
    • MCP2515 CAN transceiver
    • SN65HVD230 CAN transmitter / receiver
    • DC-DC step-down converter 5V
    • A pair of 6-pin "Deutsch plugs" (male / female)
  2. Create the Y-branch cable. (See page 3)
  3. Carry out the wiring. (See page 4)
  4. Obtain the required libraries.
  5. Compile and flash the software.
  6. Install everything on your boat.
  7. Have fun!


Connection of the interface to the VP CAN bus


The tachometer with integrated LCD display is connected to the engine's MDI via a cable harness and a 6-pin Deutsch connector. The connection is called “Multi-Link” at Volvo Penta. The data are provided as CAN-based J1939 datagrams.



A Y-branching cable is required for connection to the bus. The cable is connected between the connector of the cable harness and the speedometer.


Pin assignment:

  • 1 not used
  • 2 CAN low
  • 3 not used
  • 4 minus
  • 5 CAN high
  • Plus, 5V




Ventus W132 - conversion to NMEA2000 wind sensor

First of all, a few important notes that you should definitely pay attention to.

Fig .: Exterior view

  • NMEA0183 and NMEA2000
  • Only three other parts (ESP32, roll pin, CAN BUS) are required
  • Angular resolution in 0.1 ° steps
  • Data can be displayed in the browser (in AP mode even without an external network)
  • Code fully commented on GitHub

This project describes the conversion of the replacement anemometer Ventus W132 with minimal material expenditure. The entire project, including the purchase of the W132, can be implemented for less than € 50.

The detailed documentation for the conversion as well as the commented software can be found on GitHub:

The corresponding thread in the SegelForum can be found here:

Since existing hardware is modified here, many critical work steps such as printing the housing or post-processing for weather resistance are no longer necessary.

The wind speed is measured by a Hall sensor, the direction by a magnetic rotation sensor. This enables extremely precise information, especially with regard to the wind direction.

The size of the housing allows the use of an ESP32, which enables the creation and transmission not only of NMEA0183 datagrams via WiFi, but also, for the first time, of NMEA2000 data.

In addition, the data can be displayed graphically in the browser. The sensor can be calibrated or the transmission of NMEA2000 data activated / deactivated via a settings page.

A software update via the network is also possible.


Fig .: Circuit diagram


Fig .: List of materials


Fig .: Settings

Yachta wind sensor

First of all, a few important notes that you should definitely pay attention to.

Fig: Yachta wind sensor

The Yachta wind sensor is a further development of a wind sensor from the Yachta user at bei Thingiverse was presented. The technical principle of operation is based on one Hall sensor for measuring wind speed and on one magnetic rotation sensor for measuring the wind direction. Udo from the german sailing forum took up the idea and made some improvements to the wind sensor. The shell wheel of the wind turbine was dismantled into several parts, so that 3D printing is easier. In addition, he has revised the electronics. Another magnetic rotation sensor has been selected that is easier to obtain. The one that is popular with hobbyists as an evaluation and communication unit ESP-12E used. In addition to the Yachta wind sensor, Udo has also redesigned another wind sensor and further improved some points in the mechanical structure. The objective of Udo's constructions was that the wind sensors could be easily reproduced without the need for special metal parts. As a hobbyist, you can obtain all the necessary parts from specialist retailers and hardware stores.

Both Udo and Jukolein have written firmware for the Yachta wind sensor that has different functionalities. With both firmware, the measurement data can be saved as NMEA0183 telegrams transmitted via WiFi and processed in appropriate software such as AVnav, OpenCPN. With the firmware from Jukolein, the measurement data can also be displayed on a website. Norbert's firmware for the WiFi 1000 wind sensor can also be used for the Yachta wind sensor. This firmware is universal and supports other commercial and non-commercial wind sensors as well. In terms of functionality, this firmware offers the greatest possibilities and also has a web interface for visualization and operation.

Fig: Board wind sensor Yachta

Fig: Built-in circuit board

Udo's circuit board was revised again by Norbert and improved in some points. The board can be easily accessed via the internet Aisler can be obtained in small numbers. All the necessary manufacturing data are stored at Aisler. The ordering process is very easy.

This wind sensor clearly illustrates the possibilities that DIY projects with open software and open hardware offer. Without the openness, further development and improvement by different people would hardly have been possible.

Properties of the Yachta wind sensor

  • Measurement of wind speed 0… 75 kn and wind direction 0… 360 °
  • Angular resolution 0.1 °
  • Robust mechanics (3 ball bearings)
  • Without special metal parts
  • All components can be found in specialist shops and hardware stores
  • Simple 3D parts
  • Weight approx 210g
  • Weatherproof and UV-stable
  • No cables required for sensor signals
  • Digital signal transmission via WiFi
  • Supply voltage 6… 25V
  • Current consumption 30mA @ 12V (0.36W)
  • 12V supply possible via toplight
  • ESP8266 for WiFi and data transfer
  • Update rate 1 reading per second
  • No built-in instrument necessary
  • Visualization in OpenPlotter on a laptop, mobile phone or tablet
  • Web interface for operation
  • No extra software necessary (the display is the display)
  • Supports the NMEA 0183 protocol
  • Firmware update possible via internet

Firmware properties

Udo firmware

  • Web configuration for IP settings port 80
  • UDP port 2948
  • UDP NMEA0183 telegram MWV

Jukolein firmware

  • Web configuration and graphic visualization
  • Web server port 80
  • UDP port 8080
  • TCP port 8080
  • UDP / TCP NMEA0183 telegram MWV
  • Firmware update OTA via Arduino IDE

Wifi 1000 firmware

  • Web configuration and graphic visualization
  • Web server port 80
  • TCP port 6666
  • TCP NMEA0183 telegrams MWV, VWR, VPW
  • TCP NMEA0183 customer-specific telegrams INF, WST, WSE
  • JSON interface via
  • Firmware update via internet via GitLab
  • Android app


The Yachta wind sensor works well in combination with a Raspberry Pi with, for example, OpenPlotter or AVnav to be used. The Raspberry Pi then provides an access point in the WiFi network. The wind sensor connects to the WiFi network and transmits the NMEA0183 data telegrams to the Raspberry Pi. All end devices also connect to the WiFi network and can graphically display the measurement data processed by OpenPlotter or AVnav.

Fig: Connection options

Direct communication from the mobile phone with the wind sensor is also possible if no measurement data processing software is used. A small web server is implemented in the firmware of the wind sensor, which can display the measurement data directly. However, the performance is somewhat lower than with a Raspberry Pi. It makes sense to only connect 2… 3 end devices to the wind sensor at the same time and display data. There is also an Android web app that can be used to display the measurement data. The WebApp is a frameless web browser that displays the content of the website and at the same time ensures that the screen of the mobile phone does not switch off automatically as long as the app is running.


A Repository at GitLab created. All manufacturing documents can be found there. The mechanical assembly instructions consist of a series of pictures showing the individual steps of assembly. It's easiest if you look at that complete repositories as zip files download The board can be ordered from any board manufacturer with the help of the Gerber data. The easiest way to order circuit boards is via Aisler, since all Gerber data is already stored there. A small series of assembled and programmed boards was launched. If you are interested, you can leave a message here using the contact form.

Caution: If you assemble the board yourself, you should make sure that the output voltage of the DC / DC converter is set to 3.3V before soldering. Otherwise the ESP-12E will be destroyed by overvoltage.

Detailed assembly instructions can be found here:


Universal wind sensor firmware

First of all, a few important notes that you should definitely pay attention to.

The universal wind sensor firmware supports various wind sensors. It is based on the firmware for DIY wind sensor WiFi 1000 and has been expanded accordingly to include further types of wind sensors. Different types of sensors, such as analog, magnetic and digital, can be connected. The corresponding wind sensor is selected in the firmware. No further settings need to be made. With the support of commercial sensors, their product properties can be improved, since in addition to wired data transmission, transmission via WiFi is also possible.

The following DIY wind sensors are currently supported:

WiFi 1000 (ESP8266, 2x Hall sensor)
Yachta V1.0 (ESP8266, 1x Hall sensor, 1x AS5600 magnetic field rotation sensor)
Jukolein V1.0 (ESP8266, 1x Hall sensor, 1x AS5600 magnetic field rotation sensor)
Ventus W132 (with changes to the wind sensor, external board, ESP8266, 1x reed switch, 1x AS5600 magnetic field rotation sensor, 1x BME280 environmental sensor)

The following commercial wind sensors are to be added in the future:

Davis Vintage Pro 2 (no changes to the wind sensor, external board, ESP32, 1x analog, 1x hall sensor)
NASA / Clipper wind sensor (new PCB board in the wind sensor, ESP8266, 1x Hall sensor, 1x AS5600 magnetic field rotation sensor)

Connection scheme

Fig: Wemos D1 mini

Input assignment

Sensor type Wind speed Wind direction temperature
WiFi 1000 GPIO5 Hall sensor GPIO4 Hall sensor GPIO12 (1Wire) optional
Yachta V1.0 GPIO2 Hall sensor GPIO5 (SCL) AS5600*

GPIO4 (SDA) AS5600*

GPIO12 (1Wire)
Jukolein V1.0 GPIO2 Hall sensor GPIO5 (SCL) AS5600*

GPIO4 (SDA) AS5600*

GPIO12 (1Wire)
Davis Vintage Pro 2 GPIO7 Hall sensor A0 (Analogue) GPIO12 (1Wire) optional
Ventus W132 GPIO14 Reed switch*** GPIO5 (SCL) AS5600* , BME280**

GPIO4 (SDA) AS5600* , BME280**

GPIO12 (1Wire) optional
NASA / Clipper V1.0 GPIO7 Hall sensor GPIO5 (SCL) AS5600*

GPIO4 (SDA) AS5600*

GPIO12 (1Wire) optional

Annotation: *AS5600 I2C address 0x36, ** BME280 I2C address 0x76, ***Pullup 10k and 100n interference suppression capacitor

Remote control for anchor winch

First of all, a few important notes that you should definitely pay attention to.

Fig: radio remote control

It is often the case that the anchor winch can only be operated via permanently installed switches and the switches are mounted in such a way that the anchor halyard or the hauling up cannot be properly seen. The use of an additional remote control is much more practical. This allows you to operate the anchor winch from any location and is no longer subject to any restrictions. This is a great advantage, especially for single-handed sailors.

The solution is Retrofit kits which can be purchased in different versions on the Internet. The remote control should have at least two independent switching channels and enable inching operation. It should be ensured that the remote control receiver unit has potential-free switching contacts (relay). The remote control can be added to the existing switches by simply connecting the switching contacts in parallel.

Features of the remote control

  • 433 MHz radio technology
  • 2-channel (up / down)
  • Inching operation
  • Range approx. 30 m
  • Radio transmitter with battery (12V, not waterproof)
  • 2 potential-free switching contacts as output
  • Power supply 12… 24V
  • Consumption of the receiver unit approx. 50 mA at 12V

Fig: Terminal assignment of the receiver unit

Remote control for Raymarine Evo Pilot

First of all, a few important notes that you should definitely pay attention to.

Fig: Remote control for Raymarine Evo Pilot

The user matztam from the sailing forum has presented a remote control for the Raymarine Evo Pilot. The remote control transmits on 433 MHz and converts the received signals into the NMEA2000 network. In this way, the settings for the Raymarine autopilot can be made very conveniently. The remote control consists of two parts. One from the hand-held control unit and the other from a QIACHIP RX480E / TX118SA radio receiver. The housing of the remote control is made of 3D printed parts. The same goes for the rubberized buttons. The front and back were lasered out of Plexiglas plates. An Arduino STM32F103 decodes the received radio signals and then feeds them into the NMEA2000 network. The remote control has a contactlessly chargeable battery (Qi) just like cell phones can be charged.

At Github you can find all the documents you need to replicate the remote control.

The remote control has the following features:

  • Radio technology 433 MHz
  • Keys: +1, -1, +10, -10, Stand By, Auto, Wind, Track
  • LiPo battery
  • Qi charging technology (contactless)
  • Receiving unit
    • Arduino STM32F103
    • NMEA2000
    • Bus connector

Fig: Housing stack

Fig: Rubber buttons 3D printed

Fig: Housing intermediate parts

Fig: Circuit board with buttons

Fig: Qi charging electronics