An instrumentation panel for displaying NMEA and SignalK telemetry data, specifically on electronic ink displays.
NMEA-0183 telemetry data is received on UDP port 10110.
Note
Please note this is ALPHA quality software.
- Essentially, the program currently only demonstrates two features separately: Telemetry receiver vs. Rendering and display.
- Many details will still need to be implemented.
- There might be dragons.
- Receive and parse NMEA sentences
- Render user interface as PIL image
- Display user interface on different backends: PNG, pyglet, PySDL2, eips
- Desktop: Linux, macOS, Windows
- E-book devices using electronic ink displays: Amazon Kindle, Kobo eReader, Tolino eReader
pip install --upgrade boatface[ui]
To install the latest development version from the repository, invoke:
pip install --upgrade git+https://github.com/maritime-labs/boatface#egg=boatface[ui]
Terminal:
# Submit telemetry messages in NMEA-0183 format to UDP broadcast. pip install calypso-anemometer calypso-anemometer fake --subscribe --rate=hz_8 --target=udp+broadcast+nmea0183://255.255.255.255:10110 # Listen on the network for NMEA-0183 messages and display them on the terminal. boatface log --source=udp+broadcast+nmea0183://0.0.0.0:10110
GUI:
# Display demo data in preview application, single-shot. boatface ui --source=demo:// --display=viewer # Display demo data on the screen, using the `eips` program, in landscape orientation. boatface ui --source=demo:// --display=eips --landscape # Display demo data on the user interface, using Pyglet. boatface ui --source=demo:// --display=pyglet # Display demo data on the user interface, using SDL. boatface ui --source=demo:// --display=sdl
An example NMEA-0183 sentence emitted by calypso-anemometer
is:
$IIVWR,154.0,L,11.06,N,5.69,M,20.48,K*65
More options:
# Enable verbose output. boatface --verbose ui --source=demo:// --display=pyglet
- SignalK Instrument panel: https://github.com/SignalK/instrumentpanel
- SignalK Instrument package: https://github.com/mxtommy/Kip
- Kindle eink UI for SignalK data: https://github.com/ieb/signalk-eink
- iKommunicate-Kindle: https://github.com/tkurki/sk-on-kindle
- Using Tolino eBook reader as display for SignalK: https://github.com/koileLab/SignalkTolino
In honour of Boaty McBoatface.
Any kind of contribution, feedback or patches are very much welcome! Just create an issue or submit a patch if you think we should include a new feature, or to report or fix a bug.
In order to setup a development environment on your workstation, please head over to the development sandbox documentation. When you see the software tests succeed, you should be ready to start hacking.
The project is licensed under the terms of the GNU AGPL license.