62 lines
2.0 KiB
Plaintext
62 lines
2.0 KiB
Plaintext
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.
|