What are your perceptions / thoughts about signalk?

Baggywrinkle

Well-known member
Joined
6 Mar 2010
Messages
10,066
Location
Ammersee, Bavaria / Adriatic & Free to roam Europe
Visit site
I'm reasonably tech savvy, my day job is designing interfaces for automotive systems communicating over CAN, FlexRay and SomeIP ... so NMEAxxxx and SignalK is not something I don't understand.

On my boat I did have an Android Tablet which collected and displayed data from a Volvo engine, a Raymarine (SeaTalk1) network, a few NMEA0183 components and some NMEA2000 devices ... and the device which enabled it all was a Yacht Devices NMEA2000 WiFi Router (YDNR-02N) combined with an Android Tablet running a few apps. ... See Pic.


1706987530385.png

Since then, I have played around with a Raspberry Pi running VenusOS for various Victron components and setting up the Pi was reasonably straightforward .....

... however it was well beyond the capabilities of all of my sailing friends. They thought it was great that I had a Raspberry Pi that looked like a Victron GX Touch but I lost them as soon as I tried to explain the hardware they needed and how to install VenusOS with the necessary packages ... pointing them at the YouTube videos by Tobi, https://www.youtube.com/@tobisreallifeskillswithtobi, which are some of of the best I've seen, especially when combined with the SetupHelper Package were no help, they were completely lost and overwhelmed.

So IMO, a standardised message catalogue is very interesting, but if it is not adopted by the major manufacturers of marine HW then it will remain a niche ..... a bit like Linux on PC hardware. NMEA0183 and NMEA2000 messages are already more standardised than automotive busses so from my point of view these two worlds are good enough as they are.

At the end of the day, the ability to decode all the protocols from the various marine suppliers already exists, so display and control are available from 3rd parties over their proprietary systems anyway, just buy the right kit and it will work. The majority of my sailing friends just buy plotters and components off the shelf if the vendor says it will do what they want and any attempt to look below the surface just gets them confused.
 

RunAgroundHard

Well-known member
Joined
20 Aug 2022
Messages
2,243
Visit site
If your goal is to convert some analogue signal to NMEA 2000, you should be able to do that for under ten quid. A canbus transceiver and a small arduino clone etc.

But what's the real 'top level' aim here?
e.g. ' I want to monitor the engine temperature without leaving my bunk'.

Please advise what the device is, which can take my Perkins 4236 engine data (engine and gearbox oil pressure, temperature, rpm), that costs only 10 quid and can display on my Axion+. Actii Sense are charging many hundreds for the privilege.

It doesn't require any justification to you or anyone else why I am interested in this. What business is it of yours and why the need to know why I want to do it?
 

Baggywrinkle

Well-known member
Joined
6 Mar 2010
Messages
10,066
Location
Ammersee, Bavaria / Adriatic & Free to roam Europe
Visit site
If your goal is to convert some analogue signal to NMEA 2000, you should be able to do that for under ten quid. A canbus transceiver and a small arduino clone etc.

But what's the real 'top level' aim here?
e.g. ' I want to monitor the engine temperature without leaving my bunk'.
If you don't have the skill set to attach a can transceiver to an arduino clone with the appropriate SW then the cost of your time to learn, understand, implement, debug, and deploy such a device will quickly exceed the cost of an off-the-shelf unit that can connect directly to an NMEA2000 network.

I am with the others that see this as a hobbyist pass time .... it's for geeks and nerds to put no fine a point on it. That is not to belittle or discount a SignalK solution, but it is for the top end of the tech savvy sailor population IMO.
 

DJE

Well-known member
Joined
21 Jun 2004
Messages
7,666
Location
Fareham
www.casl.uk.com
I have a Digital Yacht Ikomunicate box. It receives all the NMEA 2000 data off the Raymarine network and sends it to the Windows PC at the chart table. But the only software I've found is a web app that came with the Ikomunicate called "Instrument Panel". It's OK but a bit cranky about units and it only seems to display the log reading to the nearest mile. I bought the Ikomunicate box when it first came out and I was expecting more software to become available.
What do I want it to do? First to work as a more user friendly instrument repeater on the PC with displays similar to conventional yacht instruments. Second to record all the NMEA 2000 data to the hard disk on the PC. Is there any software available to do that.
 

AngusMcDoon

Well-known member
Joined
20 Oct 2004
Messages
8,830
Location
Up some Hebridean loch
Visit site
Please advise what the device is, which can take my Perkins 4236 engine data (engine and gearbox oil pressure, temperature, rpm), that costs only 10 quid and can display on my Axion+. Actii Sense are charging many hundreds for the privilege.

It doesn't require any justification to you or anyone else why I am interested in this. What business is it of yours and why the need to know why I want to do it?
ESP32 board for about a fiver and a bit of Veroboard and a power supply for another fiver. Probably the most expensive bit would be the NMEA2000/SeatalkNG connecting cable. I did it here...

Anchor watcher YAPP - remote boat monitoring from a mobile phone

In addition to the project as presented in that post I added 2 engine exhaust gas temperature senders. The temperature and any alarm condition are sent to the NMEA2000 connection and display on an Axiom+ display. Other sensors could be added.

I didn't use the Arduino development environment, although that may be possible. I used Espressif's native development environment which is quite challenging to use, so is probably not suitable for amateur software development.

I don't see any need for SignalK. I don't want to use a RPi because they consume too much power for my boat data projects. I get my devices' consumption down to a few mA, and in some cases μA. That's the challenge for me - using every available power saving and sleep mode available . It's not something that can be done on a desktop like OS such as Linux on a Pi.
 

B27

Well-known member
Joined
26 Jul 2023
Messages
2,068
Visit site
If you don't have the skill set to attach a can transceiver to an arduino clone with the appropriate SW then the cost of your time to learn, understand, implement, debug, and deploy such a device will quickly exceed the cost of an off-the-shelf unit that can connect directly to an NMEA2000 network.

I am with the others that see this as a hobbyist pass time .... it's for geeks and nerds to put no fine a point on it. That is not to belittle or discount a SignalK solution, but it is for the top end of the tech savvy sailor population IMO.
This is true.
If people want all this technology without a lot of learning curve, they will need to get their credit cards out.

I'm not sure it's the 'top end of tech savvy', it's heavy on the 'tech' layers while actual savvy people look above that, what does this 'tech' do for me? If I want to know my engine temperature, there are various solutions including fitting a temperature gauge. Or it could go straight to my phone via bluetooth.
 

lektran

Member
Joined
18 Feb 2020
Messages
81
Location
Gosport
Visit site
I've installed signalk on a pi on my boat. The basics are relatively simple but to do anything remotely complicated requires a ton of research and forum trawling. There's a ton of potential in it though for a DIY hobbyist.

I'm still in the early stages but my goals are many:
- anchor alarm for on the boat and away from it
- engine/exhaust temp monitoring
- nmea2000 GPS to nmea0183 for my older VHFs DSC function
- publish our location to noforeignland
- bilge sensors in various areas so I know where to look in case of sudden water ingress. I've seen too many stories of people only noticing when the water level is above the sole and then no idea where it came from
- fridge temp monitoring, so we know when to defrost
- wind/pressure history to better decide when to reef
- wind/direction/speed/heel/rudder angle history to get a better understanding of our sailing performance
- diesel tank/rpm/speed monitoring to get a better understanding of fuel efficiency

The hardest part of a lot of this is getting the sensors figured out, but once that is sorted the big win is that signalk probably already has a plugin to receive the data and now you have all the information in one place and a bunch of potential tools to crunch the numbers, display the data and trigger alarms etc.

Is it easy? No. Is it substantially cheaper and more flexible than commercial solutions? Hell yes
 

st599

Well-known member
Joined
9 Jan 2006
Messages
7,530
Visit site
There are basically two methodologies available to do this at the moment. SignalK broadcasting a JSON file and incremental updates or MQTT (as used in many Internet of Things devices) having a subscribe and publish model (think Twitter for data, each software receives the data it subscribed to). It would be good for SignalK to explain on their webpage why they believe one is better than the other, as the JSON method does seem to need more memory allocated.

With NMEA deprecating NMEA2000 for OneNet, I think the move to IPv6 on boats is going to happen, so can see the pros and cons of both standards, but because MQTT is pervasive I think SignalK may struggle, even if it is technically superior (I'm not saying it is).
 

lustyd

Well-known member
Joined
27 Jul 2010
Messages
12,404
Visit site
Just had a quick Google for the MacArthur hat as it looked interesting and I have some spare Pi’s. If you want to know why this stuff isn’t more popular try doing the same.
Not available to buy and led to several different forum posts describing it in very different ways with images of clearly very different products. Bored after 5 minutes as it seems I can’t get one anyway so the whole idea is a non starter.
And that’s ignoring the fact that I can’t see the purpose compared to my already capable plotter and Cerbo combo. I do big data analytics for a living and do find this stuff interesting but it’s too much work for no apparent benefit.
 

harvey38

Well-known member
Joined
27 May 2008
Messages
1,995
Visit site
I'll stick to my Albacombi unit.

There is probably huge mark up on a plastic box containing a PCB but the software is easy to understand (ish) and it works for me.
 

Baggywrinkle

Well-known member
Joined
6 Mar 2010
Messages
10,066
Location
Ammersee, Bavaria / Adriatic & Free to roam Europe
Visit site
Basically, the fundamental change that has happened which will favour IP based communications with small devices instead of serial or CAN based systems in the future is the cost of processing power.

I know this from work, every time we re-design the control units or the base architecture of a vehicle, there are cost critical components that cannot afford the processing power to support an IP stack. They end up on LIN or CAN while the rest of the vehicle is migrating to IP based comms.

The cost of supporting an IP stack is dropping year on year, and automotive already has a low-cost physical layer in this full-duplex twisted pair solution .... BroadR-Reach - Wikipedia

The fundamentals of SomeIP are here if anyone is interested ... Vector E-Learning

The communication content is still not standardised between automotive OEMs but that is not really an issue as we have full control of the vehicle.

I would imagine that marine comms will follow a similar path while retaining the need for standardised communication as all the systems on a boat are not generally single supplier (engine, nav, power) and are not specified in detail and then integrated by the boat manufacturer.

The HUGE advantage of IP over Serial is the ability to run all other IP protocols over the same physical layer in parallel to SomeIP - but it's usually a good idea to implement virtual LANs to reserve bandwidth for important comms.
 
Last edited:

dgadee

Well-known member
Joined
13 Oct 2010
Messages
3,927
Visit site
I installed OpenPlotter on an RPi but had huge problems in having PyPilot autohelm operate at the same time as picking up AIS from wifi (NMEA0183 to Wi-Fi by YAKBITZ). I spent ages - two weeks? - trying to get it to work and then gave up and removed OpenPlotter and just used OpenCPN with PyPilot. My primary problem was I didn't really understand how SignalK communicated with the other elements and the documentation wasn't that good.

I then decided it was perhaps that the RPi didn't have enough ports (or something) and I connected the VHF directly to the RPi. Everything is now working fine. After all that earlier playing around I have found it relatively easy to set up OpenPlotter with SignalK. I would not say that I know just how it works or could resolve other problems which arose. Whether I want a lot of info coming into my nav system, I don't know. I have sailed for many years with only a depth sounder and never needed anything else (non navigational, that is). However, there are files available for 3D printing a wind vane from the PyPilot author and I might give that a go, to see whether I can input wind info to PyPilot.

So, in my experience as someone with very limited experience but the willingness to keep going until the problems are overcome, SignalK is useful and does simplify the eventual system and interconnection between the elements of my nav system. But there will not be too many everyday sailors who will put that effort in and who prefer to use commercial systems and installers.

Ps: I did write a piece for the club magazine on my OpenCPN and PyPilot experiences and a couple of people (not regular attendees at things) said that they thought the article was "very good". Whether they went off and looked further I don't know.

OOPS: SignalK! Just edited it. Anyone reading the original would have wondered what I was going on about ...
 
Last edited:

bergie

Active member
Joined
2 Feb 2021
Messages
139
lille-oe.de
Signal K sounds like a great idea - but not everybody wants to play at DIY electronics and/or programming.
Is there a site somewhere that lists commercially available products that would give a “plug and play” Signal K capability direct into an Android or IOS tablet?
The absolutely easiest way to get Signal K on a boat is to install a Victron Cerbo device and their NMEA 2000 adapter cable. Then you can enable Signal K on the device with just couple of clicks.

We do quite a bit with Signal K on our boat, including:
  • Anchor alarm, with audible alarms going to the boat speakers
  • Digital logbook with a lot of automation (engine on/off gets logged automatically etc)
  • Calibration of some sensors like the paddle wheel
  • Engine hours calculation
  • Sharing our logs on various online services like No Foreign Land and PostgreSail
  • Sharing our boat weather data with Windy
  • Sharing our AIS data with Marine Traffic
  • Small automations, like switching our B&G screens automatically between day and night modes
  • Various data analysis and visualization with Grafana
IMG_1197.jpeg

Signal K was also feeding boat GPS, depth, and AIS to Navionics back when we still used that. Now we get that and more through Orca Core.
 
Last edited:

laika

Well-known member
Joined
6 Apr 2011
Messages
8,205
Location
London / Gosport
Visit site
Most people don't want to monitor the temperature of their fridge 24x7 and produce graphs of it. They want to see their speed, depth and direction on a weather-proof device in the cockpit with minimal effort. For any commercial product that's "plug x into y", or you can happily pay someone to do it. How do you do that with Signal K? It's not clear from the home page. If you do happen to have the ability and determination to persist you'd discover that you need to write a file to an sd card, install it in a raspberry pi which involves buying the pi, and a case, assembling it, then working out how to power it and add connectivity. Already you've lost 95% of the audience.

For this to be in any way breaking out of the "hobbyist" sphere you need commercial partners. digital yacht were on board with the ikommunicate but...that doesn't seem to have progressed much further and we might ask how much did the signal k developers acknowledge the commercial imperatives to agree the standard for release and how much did this become a "cat herding" issue for digital yacht? How many plug-n-play signal K transducers do we see? Might that be something to do with the developers producing a spec by and for programmers in high level languages such as javascript rather than trying to produce a messaging protocol which caters for constrained devices or acknowledge the concerns of developers of embedded systems?

What signal K has going for it is simplifying the development of mobile apps because it's basically written by and for developers in high level languages. If you don't need an app that only supports signal K why would you bother? Many people seem to be running a signal k server simply to multiplex nmea 0183. Convert transducer signals to signal K (because then don't natively support it) then convert back to nmea (because your plotter doesn't support signal K). I may be biased but there's more efficient ways to do that.

IMHO open source nmea-alternative should have focused on being an open source nmea-alternative and then lobbied heavily to gain commercial support in transducers and display devices in a similar way to what was done with open document format. Signal K turned out not to be that project.

How to improve perception?
People need a reason to engage with this stuff. "interest" and "too much time on hands" is reason enough for some but not the mass market. To corner them you need to
* get / renew commercial partnerships and highlight the commercial implementations on the web site
* consider commercial realities in development. Sure it's being done for free but work like amateurs and you're only going to gain a hobbyist following

For the vast majority of people, there is simply no point to signal K
 

ylop

Well-known member
Joined
10 Oct 2016
Messages
2,449
Visit site
This is exactly the perception problem -

why do you think it it needs electronics or programming skills?
Where did you get that impression from?

Guessing web forums but it is a perception problem that is unfortunate, in many ways it's actually easier than setting up and running opencpn on a laptop.

I’ve not read the whole thread; I run SignalK on my boat. It’s not 100% pain free. Of course that may not really be a SignalK isssue - it may be a hardware interface problem but the front end is where I interact with so the front end will get the blame. I’ve had niggles with version management on some plugins. The reality is, despite me being proficient with tech, it was a PITA. Had I known how much time I would spend on it as a whole I might just have bought a commercial solution to get AIS to my plotter, and log wind speed etc.

If you are about to redesign it you need to decide who it is for. Look at the UI - the word websockets is tech speak; in fact the number of connections is irrelevant to your average punter (certainly doesn’t need that much real estate). Someone thought they were being clever with the plugins - but actually it just creates anomalies between online “help”.

I wouldn’t use installing open CPN as your usability benchmark. That’s like saying - it’s no harder than putting a Linux distro on your old laptop.

I think there is a reality problem not just a perception problem.

The perception is further complicated by many online posts bringing together SignalK and hardware.

Many hardware issues are a mess because of problems like Lustyd refers to - the MacHat should be the solution to lots of challenges but it’s a Work in Progress.

Of course, lots of people enjoy these things because they are tinkerers paradise.

TECHY PEOPLE CONSISTENTLY UNDERESTIMATE THE CHALLENGE IN MAKING PRODUCTS ACCESSIBLE TO NON TECHNICALLY INCLINED PEOPLE. I suspect, many quite like it this way, in hill walking terms it’s a “granny stopper” an difficult part somewhere on the path which means those who succeed in making it to the summit are part of an elite band. THAT IS OK, but don’t be disappointed if everyone else doesn’t get get excited and chooses to take an easier route to a slightly different destination.
 

dolabriform

Well-known member
Joined
12 Sep 2016
Messages
1,818
Location
Kent
freewheeling.world
TECHY PEOPLE CONSISTENTLY UNDERESTIMATE THE CHALLENGE IN MAKING PRODUCTS ACCESSIBLE TO NON TECHNICALLY INCLINED PEOPLE.

This sums up the issue.

I've played with it, and I can see lots of possible benefits, but it is not a simple case of plug this into that, which is the technical level of most people.

In order to gain proper traction beyond hobbyists, then it needs to be productised. Take open plotter, the necessary hardware bits, stick them in a box that has a NMEA2000 connector on it that will plug straight in to the bus, and put an easy to use menu on it.

Then put extra sockets on the box that productised sensors and engine interfaces can plug into, and you will have a system that people will hopefully find easy to use.

Who is the user going to call when something goes wrong?
 

Sandy

Well-known member
Joined
31 Aug 2011
Messages
21,782
Location
On the Celtic Fringe
duckduckgo.com
TECHY PEOPLE CONSISTENTLY UNDERESTIMATE THE CHALLENGE IN MAKING PRODUCTS ACCESSIBLE TO NON TECHNICALLY INCLINED PEOPLE.
When I was working it saw the issue more as techy people not understanding what the non-technically inclined people wanted or needed.

Creating some amazing bit of techy kit, but needing a PhD to understand is not good. Simple things like placing an icon at the same position on every screen in an application makes life easier especially when it is blowing a hooly and you have been woken by the crew as they are craping in their pants a bit concerned about a lee shore. 😁
 

rogerthebodger

Well-known member
Joined
3 Nov 2001
Messages
13,525
Visit site
Ease of use of any technical bit of kit is one of the most important design features.

Applications that succeed have an easy to understand operational interface as most exceed nerds don't like learning new things a people do not like change and unless they can get operating in 30 seconds they lose interest especially it its not critical t there well being.

I an ex software designer / programmer I have real life experience of software users

I made the mistake of setting up a menu once where the print function was just above the delete function and a customer kept complaining on losing the work I simply moved the menu options to separate the print and delete function and the problem was solved

Problem turned out to between chair and keyboard but user would not accept that
 

Buck Turgidson

Well-known member
Joined
10 Apr 2012
Messages
3,423
Location
Zürich
Visit site
Ease of use of any technical bit of kit is one of the most important design features.

Applications that succeed have an easy to understand operational interface as most exceed nerds don't like learning new things a people do not like change and unless they can get operating in 30 seconds they lose interest especially it its not critical t there well being.

I an ex software designer / programmer I have real life experience of software users

I made the mistake of setting up a menu once where the print function was just above the delete function and a customer kept complaining on losing the work I simply moved the menu options to separate the print and delete function and the problem was solved

Problem turned out to between chair and keyboard but user would not accept that
But that is a perfect example of the engineer not taking human factors into account at the design phase. The problem was not between the chair and the keyboard it was a design error.
Even the most highly trained and practiced humans make mistakes. It's what makes us interesting.

Edit to add: Windows OS has a similar error where the menu for ejecting a usb stick has erase and eject right next to each other. There is a secondary menu item to confirm which has probably saved many files!
 

rogerthebodger

Well-known member
Joined
3 Nov 2001
Messages
13,525
Visit site
But that is a perfect example of the engineer not taking human factors into account at the design phase. The problem was not between the chair and the keyboard it was a design error.
Even the most highly trained and practiced humans make mistakes. It's what makes us interesting.

Edit to add: Windows OS has a similar error where the menu for ejecting a usb stick has erase and eject right next to each other. There is a secondary menu item to confirm which has probably saved many files!

Yes it could be considered a design but if it was a design fault more that just the one user would be making the same error and it was only this one.

It was simply this user was not paying attention to what they were doing when printing their work.

I am a designer not a clairvoyant
 
Top