Canbus Electrics

pmagowan

Well-Known Member
Joined
7 Sep 2009
Messages
11,838
Location
Northern Ireland
sites.google.com
I am revamping the electrics on a Sweden 41 and was wondering if anyone else had canbus based electrics. It seems ideal for a boat that rather than have all the wires trailing back to the one panel at the chart table you only need a reasonable sized +ve and -ve and a signal wire going round the boat. Then you can have a series of switching nodes at convenient locations. Microcontrollers, like the arduino, can also control RGB LEDs and so you can have adjustable lighting. You can also reprogram any of the switches to other functions as necessary e.g press switch to turn light off/on, press and hold for 2 seconds to turn all cabin lights off/on.

Has anyone done this?
 
It's the standard on large yachts now - look at systems like ETA PowerPlex for example. Can be controlled from physical switches (programmable in various ways, as you say) or from dedicated touchscreens or via various interfaces from a boat's integrated control system. Some brands have collaborated with Raymarine, Garmin, etc to have their kit controllable from the boat's plotters. The switching nodes can detect overcurrent, shorts, open-circuits (wire break or old-fashioned bulb failure) and so on.

It's a damn sight more expensive than just running some 1.5mm2 thin-wall to a switch, though :)

Replicating these systems yourself with Arduinos and relays might be an interesting project, but not worth it on a normal yacht from a rational point of view. So by all means crack on if the experience of creating such a system is valuable to you :)

Pete
 
Has anyone done this?
I know one boat what has this and it is "challenging" to fault find when things go wrong.

Personally, although I know way more than is good for me on the subject, would not touch it with a barge pole on a small boat.
 
Last edited:
I'm not an engineer, I just have some experience of electricity in challenging environments (old motorbikes, cars & boats :)). 12v and a bit of current has a hard enough time dealing with moisture & salt, I would imagine that a data link would have even more trouble. I'm sure it's great if you can keep everything dry and vibration free, but...

I do wonder if we won't end up in a similar situation as with many modern cars, where repairs are beyond the ability of most of us, and they end up getting scrapped while the body and mechanicals are fine, but some electronic glitch costs more to repair than the vehicle's worth.
 
Nigel Caldwell did a lot of work on this and wrote about it, hence worth looking up.
 
I've done it on my boat. Used a commercially available domotic system for houses/hotels/etc.
I've done it first in my house, was happy and implemented it on the boat as well.
V+ V- is 12-15V in most such systems, a normal green bus cable moves about in a star or however you wish system.
Controllers placed in each cabin, process signals from normal toggles, or pushbuttons, sensor input, etc and take action (either locally or sending messages to other devices)
All working fine and doubles as alarm for whatever you wish (atm only wired three extra bilge switches to SMS me if something's wrong, but it's also a burglar alarm, fire alarm, etc.
Now running for the 5th year, still adding features and reprogramming it (I have the source code to do so) so a fun way to spent some time on board when not going anywhere.

cheers

V.
 
Used to fit a lot of Lutron to commercial buildings. Currently fitting a Czone kit to a substantial vessel in Ipswich. After seeing it at the boat show I was impressed with the functionality of it all but in 15 years time..... I'm not so sure. When things start to maybe go wrong, spare parts I'm sure will be an issue.

Nice thing to have though!

I've done it on my boat. Used a commercially available domotic system for houses/hotels/etc.
I've done it first in my house, was happy and implemented it on the boat as well.
V+ V- is 12-15V in most such systems, a normal green bus cable moves about in a star or however you wish system.
Controllers placed in each cabin, process signals from normal toggles, or pushbuttons, sensor input, etc and take action (either locally or sending messages to other devices)
All working fine and doubles as alarm for whatever you wish (atm only wired three extra bilge switches to SMS me if something's wrong, but it's also a burglar alarm, fire alarm, etc.
Now running for the 5th year, still adding features and reprogramming it (I have the source code to do so) so a fun way to spent some time on board when not going anywhere.

cheers

V.
 
I saw something from Raymarine I think, it described a system being developed by them doing remote switching and control over data link. This was a few weeks ago
 
I am going to try and mock up a standard node with the arduino nano. If I can hook it up to a couple of relays and create some terminals for RGB and low amperage loads and a few for inputs then I should be able to use the same nodes for any area. I can join them all up using I2C. A raspberry pi could be the main computer and run a display/media. Nanos are cheap and I can easily have a bag of spares to replace any node that gets iffy. Should be able to seal them up pretty well though of I am using a standard design. Should be fun and if it doesn’t work I can wire normally.
 
I am going to try and mock up a standard node with the arduino nano. If I can hook it up to a couple of relays and create some terminals for RGB and low amperage loads and a few for inputs then I should be able to use the same nodes for any area. I can join them all up using I2C. A raspberry pi could be the main computer and run a display/media. Nanos are cheap and I can easily have a bag of spares to replace any node that gets iffy. Should be able to seal them up pretty well though of I am using a standard design. Should be fun and if it doesn’t work I can wire normally.
If you want to have a play then esp8266 boards are cheap and run faster than arduinos.
https://www.ebay.co.uk/itm/WIFI-Nod...ard-based-ESP8266-CP2102-module-/272041591472
With a Pi you can do the lot over wifi, no need of any wires at all. EasyEsp makes setting up , well, easy :) Then communicate with the Pi over MQTT or UDP. An extra usb wifi dongle & network to log onto then you can turn your lights on and off when you are at home :)
Maybe not great idea to do on a boat but great fun for a few quid :cool:
 
Hi,
Eynhallow a Southerly 46RS was fitted with an Empir Bus from new, this a CAN Bus system which controls all the electrical switching on board, it's 10 years old and works reasonably well, although of the 4 Southerly 46's built, I think 2 have or are in the process of removing the Empir Bus and replacing it with a hard wired system, so that tells the story of how hard it is to maintain in the long term. There appear to be very few people in the marine industry who understand and can fault find the system.

I've had one major problem with the system, the bus uses MOSFET switches to turn the electrical loads on and off, each output board has 8 outputs which are nominally rated at 8 amps. Southerly paralleled up multiple outputs to drive loads in excess of 8 amps, However, the design of the boards is poor, there is insufficient heat sinking to safely allow the simultaneous use of several outputs at 8 amps. The result is that the MOSFET's overheat and start to degrade, they get a progressively higher resistance in the on state, which causes an increasing voltage drop across the MOSFET, and a corresponding low voltage available to the device being supplied.

Because the MOSFET's degrade slowly over time, the fault is often hard to find, for example, my main VHF slowly lost range, but still worked, at first I thought it was a problem with the VHF and it took a while to find that it was actually a power supply problem. Setting aside the wisdom of powering the VHF from a CAN Bus system, I fixed the problem by powering the VHF from the main bus bar, via a fuse. I've power other high loads, from the bus bar, via a relay and a fuse, but used the original Epir Bus output to trigger the relay, the relay only takes a few 100 mamps and it allows the original switching network to be used..

Eyhallow has the original Empir Bus, which as far as I'm aware, isn't compatible with Raymarine's version of NMEA 2000, but the new version is, and can be controlled from newer MFD.

Empir Bus was developed for the Swedish Navy, with along term supply agreement for spares, so spare are, and will be available for some time yet, but at a price!

I think if I was to replace the Epir Bus, I'd go for an ethernet based system, with multiple microcontrollers and a DC ring main. Ethernet and TCP IP are well known and understood and it would be directly compatible with laptops, windows, Unix's ect, and components are readily available and cheap.
 
I am going to try and mock up a standard node with the arduino nano. If I can hook it up to a couple of relays and create some terminals for RGB and low amperage loads and a few for inputs then I should be able to use the same nodes for any area. I can join them all up using I2C. A raspberry pi could be the main computer and run a display/media. Nanos are cheap and I can easily have a bag of spares to replace any node that gets iffy. Should be able to seal them up pretty well though of I am using a standard design. Should be fun and if it doesn’t work I can wire normally.

With a boat that has a B&G Fastnet backbone- I've grafted in NMEA 2K for modern additions and some wireless controlled multichannel relays for remote switching of various loads. There are some Arduinos servicing sensors fed to NMEA2K. The I2C bus is extremely local and no use over any distance. Fine for multiple sensors feeding and right beside a microcontroller. Just make sure the data cabling is twisted pair and shielded. With plenty of inexpensive wireless relay boards around - the complication of smart nodes on a power bus all over the place can be avoided.
 
I want to keep the relays to a minimum because of the noise they generate, the power they consume and the fact they degrade. I suspect I will use a few for the higher powered outputs. from what I have researched I2C should be fine for something this size and it is well supported in arduino with large online communities using it and sharing code. It should be a relatively simple system, essentially turning off and on switches to button pushes. I am fiddling with darlington arrays to do the job of switching. Once I have the basics done then I should be able to include some diagnositics. The idea is to make it cheap and easy to work and fix. This really comes out of the problem of the hornets nest of wires at the chart table. Makes sense of the wires can go to a 'smart' junction box near their origin.

I think a lot of the proprietary systems have problems because they are closed systems. That means that only people the company approves can get access to them. With arduino there seems to be lots of open code and help if there are problems. I am learning while playing and so I will include lots of comments in my code to explain to my future self what is happening if I need to repair something.
 
Last edited:
I2C is an 'Inter IC' bus. It's intended for connecting a bunch of chips on a PCB, or at most across a backplane.
It could be a very poor choice for comms over any distance.
It's not really a bus that you'd choose for devices powered from different fuses for instance.

I think you need to be clear about your aims, and also the 'ground rules'.
In my view, the ground rules for designing systems in a typical cruiser-racer amateur yacht might include:
1) must keep various systems working when other sub-systems fail
2) should not introduce new single points of failure that take out multiple functions
3) the environment is damp on a good day and the possibility of two feet of water in the cabin should be considered....
I wonder what others would add to that?

I do agree with the sentiment that yachts these days have far too much spaghetti shoved behind a panel near the chart table.
On one of my boats, I called a halt to that, instead of adding yet another breaker for the Eberspacher, I decided that didn't need to be switched from the chart table. So I added a secondary switch and breaker panel in the aft cabin for a few functions. That saved a lot of work and a few metres of fat wire.

I've been on yachts when a fault in one instrument locks up the whole instrument bus. That was fraught, and made me wish for the nice simple standalone Nasa depthsounder my own boat had at the time.

Apart from a few cabin lights and the stereo, there is not much on a yacht which doesn't have potential safety implications if it won't work.

As an aside, my mate had some issues with his BMW late last year. Odd things happening, random tailights coming on and tailgate window popping open while driving.
I thought this was going to be some scary-complex CANbus issue, but actualy it was plain old multiple wires. The only canbus involved runs from the dash to a box of nonsense in the passenger footwell, from there it's old skool copper spaghetti. Something like 22 wires alongside the tailgate hinge? That's an 08 plate car.
 
CAN bus is very common on boats these days and typically fitted from factory on new ones. It's then called NMEA 2000. It used to be mostly a marine instrument thing, but is increasingly used to send all kinds of data around the boat, from tank sensors to engine data to remote controlling media players.

Mechanically the connectors may or may not be compatible with DeviceNet ones, but electrically they're the same and you can definitely send your own data over it too (and, with some care and reverse engineering even interact with the data from your existing boat kit).

Quick intro here: https://lassekarstensen.wordpress.com/2016/08/09/nmea2000-and-canbus/
 
I've done it on my boat. Used a commercially available domotic system for houses/hotels/etc.
I've done it first in my house, was happy and implemented it on the boat as well.
V+ V- is 12-15V in most such systems, a normal green bus cable moves about in a star or however you wish system.
Controllers placed in each cabin, process signals from normal toggles, or pushbuttons, sensor input, etc and take action (either locally or sending messages to other devices)
All working fine and doubles as alarm for whatever you wish (atm only wired three extra bilge switches to SMS me if something's wrong, but it's also a burglar alarm, fire alarm, etc.
Now running for the 5th year, still adding features and reprogramming it (I have the source code to do so) so a fun way to spent some time on board when not going anywhere.

cheers

V.

Vas. Which system did you install ?
 
Top