DIY Electronics?

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
I know a couple of guys on the forum dabble in electronics, Arduino, etc., I just can't recall who! :)

I was wondering, has anyone made any DIY NMEA 2K, i.e., Canbus stuff for their boat? What prompted this is I. saw a random ad on FB for Defender showing a Raymarine STNG Buzzer - that's right, and addressable buzzer - for $159! Seems kinda steep, and something that would be tempting to roll at home.

Thanks,

jv

Raymarine SeaTalkNG Auxiliary Alarm Buzzer

seatalkng-auxiliary-alarm-buzzer-a80614.jpeg
 
May 17, 2004
5,679
Beneteau Oceanis 37 Havre de Grace
I know a couple of guys on the forum dabble in electronics, Arduino, etc., I just can't recall who! :)
That’s me!

I haven’t built my own network, but I’ve used a Yacht Devices YDNU-02 to connect a Raspberry Pi into the existing NMEA 2000 network. The adapter is probably about the cost of that buzzer, and Pi’s are still unobtanium, but if you can find a Pi for close to MSRP and get the adapter you have a lot more flexibility. You could get a conventional buzzer and have the Pi activate it from any out of bounds NMEA signal. Then you could add other sensors and I/O to the Pi for whatever else you want.
 

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
A Pi is a lot more than an Arduino, and probably over kill for such a thing, no?
 
May 17, 2004
5,679
Beneteau Oceanis 37 Havre de Grace
Sticker price on a Pi 3 starts at $35, vs an Arduino Uno at about $25, so not wildly different. The hard part is finding a Pi for anywhere near $35. Supposedly later this year the supplies will open up more.

It looks like there are ways to use an Arduino with NMEA 2000 with Canbus, but they look much more DIY than the USB adapter that works with the Pi. I wanted the extra flexibility that the Pi would provide for things like SignalK and data logging so I didn’t dig into the Arduino options too much.

I do also use a Pi Pico microcontroller to get data from a SmartShunt and read voltages in my battery compartment, then send that wirelessly to the Pi across the boat. The Pico is only $4 and in many ways as capable as an Arduino. It looks like some NMEA 2000 / canbus libraries exist for it too so that might be worth considering if you don’t want to go the full single board computer route.
 
May 17, 2004
5,679
Beneteau Oceanis 37 Havre de Grace
You can get an Arduino for well under $10.
Replicas I presume? Yes, I suppose so. For that matter you could also get the Atmega 328p microprocessor itself that powers the Arduino for about $3. Add a couple resistors and capacitors and you essentially have your own Arduino to hook up to a Canbus adapter.
 

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
Replicas I presume?
What do you mean, replicas? As in not genuine? I'm talking about Chinese Arduinos off eBay. I figure they are all essentially the same. They use the same micros, anyway.
 
May 17, 2004
5,679
Beneteau Oceanis 37 Havre de Grace
What do you mean, replicas? As in not genuine? I'm talking about Chinese Arduinos off eBay. I figure they are all essentially the same. They use the same micros, anyway.
Technically an Arduino is a genuine product from the company that holds the Arduino trademark. The designs of their boards are all open source, so other companies are free to build their own boards with the Atmega 328p chip and the same form factor and pinout. Those should be marketed as Arduino clones, Arduino compatible, etc., and not actually Arduino. Not every Chinese manufacturer might be so precise as to be clear about that distinction. But they should functionally equivalent to a genuine Arduino, so it’s basically just an academic conversation. The clones might use lower spec voltage regulators or something, but the important part is the 328p that’s the same everywhere.
 
Sep 11, 2022
69
Catalina 34 mk 1.5 Rockland ME
I’m actually an EE by trade, but my boat doesn’t have any fancy nav systems to tap into. I’ve been looking into building something with OpenCPN but good, weatherproof displays are also $$$.

Seeed studio made an Arduino CAN library using the MCP2515 so that part should be easy. NMEA 2k sounds a little more involved and access to the standard seems pretty restricted. The buzzer message would probably need to be reverse-engineered.

The profit margins on parts like this must be insane. But sidestepping them really has to be a labor of love for all the time & money you’ll put into making a one-off alternative. I also wonder what kind of volume RayMarine even sells and how much NRE they had to invest for ABYC & NMEA compliance etc.
 

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
NMEA 2k sounds a little more involved and access to the standard seems pretty restricted.
Hey there. I don't think NMEA2K is more involved or complicated, except that it's a bit obscure, as you point out, due to lack of open access to the standards. Yet, I think you can find everything you need online, and you can watch and log messages on your bus, and find how they decode online.
 
Jan 20, 2020
34
Hunter H336 Milwaukee
I have mainly DIY electronics on my boat.
I have a Raspberry Pi4 running Openplotter, a 15.6" waterproof touchscreen at the helm, a 7" touchscreen at the Navstation. DIY GPS, AIS, Engine monitor based on ESP32 ($9 arduino), ESP32 based tank and Battery monitors. countless Temperature sensor. my old Seatalk 1 stuff - wind, Speed through water and depth are pulled into the Pi and available on the network, as is the VHF and everything is viewable on a laptop, tablet, phone, apple watch etc. Possibilities are pretty endless.

The Pi is connected to my stereo so on race days I can send my VHF sound through my stereo speakers, as well as use the Pi as a media system.

I built a NMEA2000 based battery monitor based on ESP32 for a friends boat that didn't have a PI and it works great and gives battery data for both his batteries on his Axiom MFD. The libraries for NMEA2000 are readily available and it is absolutely no problem creating something to either inject or extract NMEA2000 sentences to your network.

Take a look at the technical playlist on my Youtube channel, there are multiple DIY electronic projects: https://www.youtube.com/playlist?list=PLqHa5JFKHBLwxeCuc6uaa5TzAXVeqTyiD
 

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
I have mainly DIY electronics on my boat.
I have a Raspberry Pi4 running Openplotter, a 15.6" waterproof touchscreen at the helm, a 7" touchscreen at the Navstation. DIY GPS, AIS, Engine monitor based on ESP32 ($9 arduino), ESP32 based tank and Battery monitors. countless Temperature sensor. my old Seatalk 1 stuff - wind, Speed through water and depth are pulled into the Pi and available on the network, as is the VHF and everything is viewable on a laptop, tablet, phone, apple watch etc. Possibilities are pretty endless.

The Pi is connected to my stereo so on race days I can send my VHF sound through my stereo speakers, as well as use the Pi as a media system.

I built a NMEA2000 based battery monitor based on ESP32 for a friends boat that didn't have a PI and it works great and gives battery data for both his batteries on his Axiom MFD. The libraries for NMEA2000 are readily available and it is absolutely no problem creating something to either inject or extract NMEA2000 sentences to your network.

Take a look at the technical playlist on my Youtube channel, there are multiple DIY electronic projects: https://www.youtube.com/playlist?list=PLqHa5JFKHBLwxeCuc6uaa5TzAXVeqTyiD
Wow, very cool. I'm interested in your engine monitor. Have you open-sourced this?
 
Jan 20, 2020
34
Hunter H336 Milwaukee
Wow, very cool. I'm interested in your engine monitor. Have you open-sourced this?
of Course, the code is at:

there is a schematic and parts list. I have not been able to get the RPM working just yet, but I think I have a wiring issue. I haven't spent very much time trying to resolve it though.

the program assumes you have a Signal K server onboard, if you don't then you could adapt it to be NMEA2000 by looking at the example here:

or an easy but a little bit more expensive way would be to use a CX5003. We used one of these on a friends boat last year and it works great: Amazon.com
its a little less DIY and still much cheaper than the other brand versions - I bought it from Aliexpress for about $85
 
  • Like
Likes: Thaniel

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
of Course, the code is at:

there is a schematic and parts list. I have not been able to get the RPM working just yet, but I think I have a wiring issue. I haven't spent very much time trying to resolve it though.

the program assumes you have a Signal K server onboard, if you don't then you could adapt it to be NMEA2000 by looking at the example here:

or an easy but a little bit more expensive way would be to use a CX5003. We used one of these on a friends boat last year and it works great: Amazon.com
its a little less DIY and still much cheaper than the other brand versions - I bought it from Aliexpress for about $85
Oh, great, thank you!
 
Jan 20, 2020
34
Hunter H336 Milwaukee
I think you could probably do an addressable buzzer for <$25. ESP32 ($9), CAN board ($10), Buzzer ($2), box. Most expensive thing would be the NMEA2000 cable!! (hint - relatively cheap on Aliexpress)
 
  • Like
Likes: jviss

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
I think you could probably do an addressable buzzer for <$25. ESP32 ($9), CAN board ($10), Buzzer ($2), box. Most expensive thing would be the NMEA2000 cable!! (hint - relatively cheap on Aliexpress)
The CX5003 has quite a few negative reviews on Amazon. Do you know if there's a manual available?
 
Jan 20, 2020
34
Hunter H336 Milwaukee
It comes with a brief manual and is pretty straight forward. The only real difficulty was getting the right dip switch setting for the ratio you need, and that . You do need to add sensors to the engine for coolant temp and oil pressure. many engines only have coolant switch and oil pressure switch to activate a buzzer. There are usually extra ports in the engine to add these but you need to understand the thread before you buy and make sure the sensor you buy has the right resistance - this was some of the negative feedback. I have the sensors I used listed below:

Temperature Sender
VDO 323-900 Temperature Sender Kit

Pressure sender
VDO Pressure sender 0-10 Bar

I bought the one we used from Aliexpress: https://www.aliexpress.us/item/3256802449243272.html currently $79.20
 
  • Like
Likes: jviss
May 17, 2004
5,679
Beneteau Oceanis 37 Havre de Grace
I’ve got RPM’s working for my 3YM30 / Hitachi alternator. That alternator gives a square wave with frequency varying based on RPMs. I use an optical isolator to read those pulses into a Pico and count them per second there.

All of my code is at

 

JBP-PA

.
Apr 29, 2022
620
Jeanneau Tonic 23 Erie, PA
I think you could probably do an addressable buzzer for <$25. ESP32 ($9), CAN board ($10), Buzzer ($2), box. Most expensive thing would be the NMEA2000 cable!! (hint - relatively cheap on Aliexpress)
I suspect the most expensive part is the "NMEA 2000 Certified" logo
 

jviss

.
Feb 5, 2004
7,089
Tartan 3800 20 Westport, MA
It comes with a brief manual and is pretty straight forward. The only real difficulty was getting the right dip switch setting for the ratio you need, and that . You do need to add sensors to the engine for coolant temp and oil pressure. many engines only have coolant switch and oil pressure switch to activate a buzzer. There are usually extra ports in the engine to add these but you need to understand the thread before you buy and make sure the sensor you buy has the right resistance - this was some of the negative feedback. I have the sensors I used listed below:

Temperature Sender
VDO 323-900 Temperature Sender Kit

Pressure sender
VDO Pressure sender 0-10 Bar

I bought the one we used from Aliexpress: https://www.aliexpress.us/item/3256802449243272.html currently $79.20
I just ordered one of these. I had forgotten your note about sensor resistance range; the one I got is 0-190Ω. I hope it works out! The US-based eBay seller made me an offer for $75, so I couldn't resist. We'll see.