OpenMarine

Full Version: i2c Sensors Breaking OpenPlotter
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hey All,

I got two i2c sensors I'm trying to hook up, but they keep breaking OpenPlotter after I configure them. Initially it works, but once I reboot, OpenPlotter refuses to open. When I try to launch OpenPlotter, I get an error message saying "SignalK doesn't work. OpenPlotter will exit because it wasn't able to start SignalK." I tried reinstalling the OS twice, and it keeps doing the same thing every time.

Here is the error log from the terminal. Any ideas?


Code:
Signal K starting
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node>
*** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister>
ReferenceError: suboptions is not defined
   at Object.signalKInput [as SignalK] (/home/pi/.config/signalk-server-node/providers/simple.js:166:44)
   at new Simple (/home/pi/.config/signalk-server-node/providers/simple.js:40:34)
   at createPipeElement (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:64:14)
   at result.pipeElements.providerConfig.pipeElements.reduce (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:26:23)
   at Array.reduce (native)
   at createPipedProvider (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:24:49)
   at app.config.settings.pipedProviders.reduce (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:75:23)
   at Array.reduce (native)
   at Object.startProviders [as start] (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:73:50)
   at /home/pi/.config/signalk-server-node/lib/index.js:158:56
   at createServer (/home/pi/.config/signalk-server-node/lib/index.js:206:3)
   at Promise (/home/pi/.config/signalk-server-node/lib/index.js:143:5)
   at Server.start (/home/pi/.config/signalk-server-node/lib/index.js:142:10)
   at Object.<anonymous> (/home/pi/.config/signalk-server-node/bin/signalk-server:22:8)
   at Module._compile (module.js:577:32)
   at Object.Module._extensions..js (module.js:586:10)
Signal K starting
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node>
*** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister>
ReferenceError: suboptions is not defined
   at Object.signalKInput [as SignalK] (/home/pi/.config/signalk-server-node/providers/simple.js:166:44)
   at new Simple (/home/pi/.config/signalk-server-node/providers/simple.js:40:34)
   at createPipeElement (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:64:14)
   at result.pipeElements.providerConfig.pipeElements.reduce (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:26:23)
   at Array.reduce (native)
   at createPipedProvider (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:24:49)
   at app.config.settings.pipedProviders.reduce (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:75:23)
   at Array.reduce (native)
   at Object.startProviders [as start] (/home/pi/.config/signalk-server-node/lib/pipedproviders.js:73:50)
   at /home/pi/.config/signalk-server-node/lib/index.js:158:56
   at createServer (/home/pi/.config/signalk-server-node/lib/index.js:206:3)
   at Promise (/home/pi/.config/signalk-server-node/lib/index.js:143:5)
   at Server.start (/home/pi/.config/signalk-server-node/lib/index.js:142:10)
   at Object.<anonymous> (/home/pi/.config/signalk-server-node/bin/signalk-server:22:8)
   at Module._compile (module.js:577:32)
   at Object.Module._extensions..js (module.js:586:10)
Traceback (most recent call last):
 File "/home/pi/.config/openplotter/openplotter", line 3539, in <module>
   MainFrame().Show()
 File "/home/pi/.config/openplotter/openplotter", line 224, in __init__
   self.page_sk()
 File "/home/pi/.config/openplotter/openplotter", line 2998, in page_sk
   self.close()
AttributeError: 'MainFrame' object has no attribute 'close'
That looks like your Signal K settings are invalid. Please post /home/pi/.signalk/settings.json and/or share a screen shot of your provider settings.


Sent from my iPhone using Tapatalk
(2018-12-17, 08:11 PM)tkurki Wrote: [ -> ]That looks like your Signal K settings are invalid. Please post /home/pi/.signalk/settings.json and/or share a screen shot of your provider settings.


Sent from my iPhone using Tapatalk

I did not have a settings.json at that location. Here are the contents of the file located at ~/.config/signalk-server-node/settings.


Code:
{
 "vessel": {
   "name": "Volare",
   "brand": "Friendship",
   "type": "22",
   "uuid": "urn:mrn:signalk:uuid:c0d79334-4e25-4245-8892-54e8ccc8021d"
 },

 "pipedProviders": [
   {
     "id": "nmeaFromFile",
     "pipeElements": [
       {
         "type": "providers/filestream",
         "options": {
           "filename": "samples/plaka.log"
         },
         "optionMappings": [
           {
             "fromAppProperty": "argv.nmeafilename",
             "toOption": "filename"
           }
         ]
       },
       {
         "type": "providers/throttle",
         "options": {
           "rate": 1000
         }
       },
       {
         "type": "providers/liner"
       },
       {
         "type": "providers/nmea0183-signalk",
         "options": {
           "sentenceEvent": "nmea0183-B"
         }
       }
     ]
   }
 ]
}
The file you enclosed is not the one being used, as it is the demo settings for nmea0183 sample data playback.

Your message has the word ’simple’, that suggests you configured your data provider from the admin ui. However there is no way to configure an i2c input in the admin ui, so it is really hard to offer help when it is not clear what you are doing.


Sent from my iPhone using Tapatalk