SignalK / signalk-autopilot

Apache License 2.0
16 stars 13 forks source link

How to best get started #5

Closed godind closed 10 months ago

godind commented 4 years ago

Wow...first, what you guys have built is simply out of this world! I am stunned. I decided I'd put my spare time and passion for tech and sailing to use and contribute around using a Pi as a chart table instrument package instead of the traditional marine hardware displays. My ultimate goal is operating my autopilot from the cabin and NOT buying a second control head (p70s).

FYI - I am really new to this, all aspects of it: TS, Node, SignalK, git, you name it, so please bare with me a bit.

I've decided on Kip Dashboard; added a theme, added new gauges, and reached out to repo owner and figure out Git what-is/how-to (commit/push/pull and such) as a learning process. Now tackling step 2 - autopilot.

Goal Build a Kip AP GUI widget. Keep it simple.

Questions

  1. How do I get started on the right track and best leverage/fork the incredible work you have done?
  2. I see sbender9/signalk-raymarine-autopilot and SignalK/signalk-autopilot. Which one to use?
  3. Can I simply do a spin off of the UI Module and not touch the back-end API or, create a new repo and import the back-end API?
  4. What's the best way to simulate SignalK n2k autopilot for development purposes? I found a few SignalK n2k stream files that people shared. Do you recommend an approach? Note Kip connects to the Signalk demo site stream. It's super practical but I don't see AP data on this stream.

Advice on the best approach will be much appreciated!

sbender9 commented 4 years ago
  1. See #3. If you build this as a web app (like Kip), you can make it available on the App Store for others to use.
  2. This replaces sbender9/signalk-raymarine-autopilot (it will eventually be deprecated/removed)
  3. Yes, you can just build a new UI and use this backend/plugin. (WilhelmSK does this)
  4. You can use demo.wilhelmsk.com:3000 , it has autopilot data. (Here's a file that also does: https://www.dropbox.com/s/wesky0kgqignrmh/signalk-rawdata.log.to.langford.bz2?dl=0). File is better since you won't be using my bandwidth.
godind commented 4 years ago
  1. See #3. If you build this as a web app (like Kip), you can make it available on the App Store for others to use.

I will build as a fork to Kip. He, so far, asked for a pull request. He is publishing to SignalK App Store. That's how I found Kip.

  1. This replaces sbender9/signalk-raymarine-autopilot (it will eventually be deprecated/removed)

Got it.

  1. Yes, you can just build a new UI and use this backend/plugin. (WilhelmSK does this)

This is probably too big a question but I'll push my luck! If I want to build as a Kip widget, whats the best way to fork signalk-autopilot and integrate to it to the Kip repo? I plan to change the UI and leverage Angular material UI component library benefits and design to my liking. I'm such a new-bee that I don't get how to best approach the code sharing aspect.

Clarification: Do I understand correctly that signalk-autopilot is composed of 2 modules: UI and Back-end? Or does it actually mean signalk-autopilot is only a UI, but that it will not work without SignalK and it's back-end API?

If I have questions, what's the best way to reach out? I there a group of some sort?

  1. You can use demo.wilhelmsk.com:3000 , it has autopilot data. (Here's a file that also does: https://www.dropbox.com/s/wesky0kgqignrmh/signalk-rawdata.log.to.langford.bz2?dl=0). File is better since you won't be using my bandwidth.

Awesome. Got the file local. Thank you so much!

godind commented 4 years ago

I configured your raw file as NMEA200 (canboat), seems to work but I get the following PGN error for Victron. Any clue?

Apr 13 17:57:07 ERROR 2020-04-13T21:57:06.995Z [analyzer] PGN 130816 malformed packet from 204 received; expected 1 but got 59 ERROR 2020-04-13T21:57:06.998Z [analyzer] PGN 130816 malformed packet from 204 received; expected 1 but got 59

Apr 13 17:57:07 ERROR 2020-04-13T21:57:07.006Z [analyzer] Error reading message, scanned 0 from 1492269979892;I;{"updates": [{"source": {"label": "victron_1"}, "values": [{"path": "electrical.chargers.victron.load", "value": "OFF"}, {"path": "electrical.chargers.victron.yieldTotal", "value": 16.61}, {"path": "electrical.chargers.victron.panelVoltage", "value": 17.41} ...

sbender9 commented 4 years ago

Configure it as a Multiplexed Log

sbender9 commented 4 years ago

You do not need to fork this repository. This has a front end component and a backend component. You can use the backend component as is. You do not need to modify anything in this repository. It will not work without this plugin installed in your node server.

Join us on slack for more interactive conversations: http://slack-invite.signalk.org/

apps_and_clients is probably the best channel to discuss this stuff.

godind commented 10 months ago

Resolved.