Virtuelles Multifunktionsdisplay für den Raspberry Pi. Ein SocketCAN-Interface für NMEA2000 sowie ein Luftdrucksensor wird empfohlen.
Go to file
Thomas Hooge 81836bc5f1 NMEA2000-Code entfernt. Wird über eigenständige Bibliothek eingebunden. 2025-03-11 14:10:20 +01:00
fonts Erstveröffentlichung Weihnachten 2024 2024-12-24 09:36:04 +01:00
images Einige kleine Fixes und Ergänzungen 2024-12-24 13:23:55 +01:00
pages NMEA2000-Code weiterbearbeitet 2025-02-07 19:48:32 +01:00
.gitignore Erstveröffentlichung Weihnachten 2024 2024-12-24 09:36:04 +01:00
INSTALL Gleitenden Durchschnitt implementiert 2024-12-28 08:40:51 +01:00
README NMEA2000-Code entfernt. Wird über eigenständige Bibliothek eingebunden. 2025-03-11 14:10:20 +01:00
TODO Einige kleine Fixes und Ergänzungen 2024-12-24 13:23:55 +01:00
obp60.conf NMEA2000-Code weiterbearbeitet 2025-02-07 19:48:32 +01:00
obp60.py NMEA2000-Code entfernt. Wird über eigenständige Bibliothek eingebunden. 2025-03-11 14:10:20 +01:00
obp60.svg Erstveröffentlichung Weihnachten 2024 2024-12-24 09:36:04 +01:00
obp60_48x48.png Einige kleine Fixes und Ergänzungen 2024-12-24 13:23:55 +01:00

README

Multifunktionsdisplay (MFD) virtuell: OBP60v

Hinweis: Dieses Programm dient in erster Linie dazu die GUI der "echten"
OBP60-Hardware zu designen. Eine eigenständige Nutzung ist selbstverständlich
"auf eigene Gefahr" hin möglich.

Für Informationen zum OBP60 in Hardware siehe:
  - https://open-boat-projects.org/de/diy-multifunktionsdisplay-obp-60/
  - https://obp60-v2-docu.readthedocs.io/de/latest/

Fehlermeldungen und Patches gerne an thomas@hoogi.de senden.

Basishardware
- Raspberry Pi 4

Zusatzhardware:
- NMEA2000 Interface
  - PiCAN-M (hiermit wird entwickelt)
  - Waveshare RS485 CAN HAT (ungetestet)
- BME280-Sensor über I2C
- GPS über USB/seriell angeschlossen

Zusatzsoftware:
- OpenCPN

Abhängigkeiten
- python-can
- heapdict

Für GPS
- python-serial
- python3-nmea2

Für BME280
- smbus2
- bme280

Zur Steuerung des Geräts sind 6 Tasten vorhanden. Numeriert von 1 bis 6 von
links nach rechts. Die Tasten können angeklickt werden und führen dann direkt
eine von der jeweiligen Seite abhängige Funktion aus.
Die jeweilige Funktion wird durch ein Symbol oberhalb der Taste dargestellt.
Die Tasten 3 und 4 sind für die Seitennavigation vorgesehen: zurück und vor.
Sie können jedoch von einer Seite bei Bedarf übersteuert werden.

Wischgesten werden simuliert, indem die Maustaste auf einer Tastenfläche
gedrückt und auf einer anderen Taste losgelassen wird.

Folgende Wischfunktionen sind implementiert:
  1. Programmende durch die Wischfunktion "2" -> "1"
  2. Tastensperre an: "6" -> "1"
  3. Tastensperre aus: "1" -> "6"
  4. Systemseite: "4" -> "5"

Routen und Wegepunkte können von OpenCPN empfangen werden. Dazu muß eine
passende serielle Schnittstelle für den NMEA0183-Ausgang definiert werden.
Im System kann diese in der Datei rc.local aktiviert werden:
  # Create virtual serial connection
  socat pty,rawer,echo=0,group-late=dialout,mode=0660,link=/dev/ttyV0 \
        pty,rawer,echo=0,group-late=dialout,mode=0660,link=/dev/ttyV1 &
OpenCPN sendet dann Datensätze über ttyV0 und dieses Programm
empfängt sie über ttyV1.