Why do this, what am I aiming for and how will I go about it?

Motivation

Using Yacht Devices YDRI-04, I can sense voltage and current on the bilge pump run circuit. The YDRI emits battery-shaped PGNs, but only instantaneous readings, not cumulative ones like amp-hours or capacity remaining. YDRI does also have a state-based trigger for virtual switches, so you can set a switch when the pump has been running for more than 10 minutes continuously, or when it has cycled on and off more than a few times in an hour. These would be good alarm conditions. You can also set the switch if the pump has not run for 10 hours (currently the max, though YD is thinking about upping it to 24h). However, the YDRI has no persistent memory, any timeline is restarted when the N2K network power cycles. This might be rare on a solid boat like mine, but it means a cumulative pump run time display would be forever out of reach unless statistics can be stored in some persistent memory somewhere.

Using YDGW-02, I can extend the N2K network onto any other wifi-capable computer, and can also browse the built in Web Gauges from such a machine. But the Web Gauges do not have a dedicated Bilge Monitor display. The only gauges they have which read battery PGNs (from the YDRI) are battery-style displays, current and voltage.

So there's a need for a NMEA compatible bilge pump monitor. I suffered a silent pump failure on my maiden voyage up from HHI -- the newly installed pump got stuffed with an old rag and wouldn't run. I didn't know it, but the manual backup was also plugged and would not have worked if I had needed it. I "just happened" to notice the breaker popped and started investigating, eventually fishing out of the bilge the offending rag (and a few of its friends) and rebuilt the manual pump, so things are working now.

Goals

But I want a monitor that will warn me when:

  1. the pump runs for "too" long in one cycle (e.g, for me, ~~ 10 minutes) -- there's too much water in the bilge right now!
  2. the pump runs "too" frequently (e.g, for me, ~~ 2-3 cycles in an hour) -- there's a fairly big leak, though the pump is currently keeping up.
  3. the pump doesn't run "often enough" (e.g, for me ~~ at least once per day). -- I have a dripping stuffing box, the pump should run every few days at least.

Plus I'd like to monitor historical statistics, such as:

  1. Cumulative minutes of pump runtime
  2. Number of on-off cycles

Ideally, these would offer max/min/avg over weeks, months...

And, for robustness if the persistent memory turns out to be interrupted:

  1. Display "

Alternatives

Blue Seas (and other mfgs?) have dedicated displays with much of this around $400. (I don't know about the "often enough" capability) But that's too pricy for me and apparently other boaters, who ask on forumns about cheaper workarounds.

Ways and Means

NMEA 2000 is open but not free standard. YD is not a hackable platform. But Signal K is, and already has interfaces to everything I need to reach as well as running on small cheap computers that do have persistent storage. So that's the direction.

To use this, I'll install a RasberryPi-based Signal K server, powered by the N2k network (or adjacent). I'll end up rendering this display (and many other instruments) on a separate tablet or phone via browser. (maybe even back onto N2K MultiFunctionDisplays someday). Will continue to use the dedicated chartplotter and Raymarine instruments, so I don't depend on or overburden the SK server with map rendering or autopilot management.