Was als Versuch begann, ein Marine-Linux-Betriebssystem zu entwickeln, erwies sich als viel interessanter. Unser Schwerpunkt lag auf der Entwicklung eines Marine-Computer-Betriebssystems für den Einsatz auf Booten zur Navigation und auf Touchscreens im Cockpit eines Bootes. Die Seeschifffahrt ist von Natur aus sehr anspruchsvoll. Viel anspruchsvoller als ein Autocomputer. Es bestand Bedarf an:
gute Touchscreen-Unterstützung (auch bei kleinen Bildschirmen) (GTK3, Wellensittich)
Möglichkeit zur einfachen Verbindung mit einer Vielzahl von Sensoren: GPS, IMU, Umgebung (Temperatur, Druck, Luftfeuchtigkeit, Wind), Autopilot, Bilgenwasserstand und vielem mehr (SignalK/Kplex NMEA sind integriert)
Fähigkeit, andere Hardware zu steuern (beginnend mit der Steuerung der Bootssteuerung und des Autopiloten). Wir haben pyPilot integriert.
Abrufen, Verarbeiten, Kartieren und Visualisieren von Wetterinformationen (auf einem Boot ist es oft eine Frage des Überlebens)
Wetterrouten und Klimatologie
ein Mediaplayer (wer auf einem Boot keine Musik abspielen möchte, also hier ein MPD-Player, Mopidy und mehr)
Internetkonnektivität, VPN, Mobilfunk 4G/LTE, Satellit, WLAN
Himmelsnavigation (hat uns Astronomie-Software gebracht, also packen wir Stellarium und mehr)
Kartografie und Navigation (Wir verfügen über OpenCPN-, FreeBoard-SK- und AvNav-Kartenplotter). Während unser Schwerpunkt auf Seekarten lag, kann unsere Distribution problemlos an ein Autonavigationssystem angepasst werden.
Software Defined Radio SDR (HAM-Radio-Community könnte Interesse wecken), AIS, Wetter (NOAA, Wetterfax, NavTex), Inmarsat-Flotte
Satelliteninternet über Iridium
geringer Stromverbrauch (also haben wir es für die ARM-basierten Prozessoren gebaut)
Wir gehen davon aus, dass unsere Distribution anderen Interessierten als Grundlage dienen kann, um Folgendes zu entwickeln:
Linux-Distribution für die Hausautomation
Amateurfunk-SDR-Linux-Distribution
Wetterstation unter Linux
Astronomiebezogene Linux-Distribution
Musik-/Mediaplayer-Linux-Distribution
Generisches Linux-Touch-Tablet unter ARM-Himbeer-Betriebssystem
Auf Autos spezialisierte Linux-Distribution
WLAN-Router
Der Code zum Erstellen dieser Distribution kann mithilfe der nachstehenden Anweisungen leicht angepasst werden. Sie müssen es nicht auf Ihrer eigenen ARM-Hardware aufbauen. Der unten beschriebene Prozess erklärt, wie Sie es über CircleCi direkt aus Ihrem Quellcode auf GitHib erstellen und auf CloudSmith oder an einem anderen Ort verteilen können. Es erfordert nicht so viel Aufwand oder Codierung, etwas Engagement ist (sicherlich) erforderlich.
Dritter Platz beim RealVNC Raspberry Pi Prize 2023.
Um zu beginnen, ist es einfacher, ein vorgefertigtes Bild über die unten stehenden Links herunterzuladen (oder Sie können Ihr eigenes erstellen, indem Sie den Anweisungen im nächsten Kapitel folgen). CircleCI ist das Tool, mit dem das Betriebssystem-Image erstellt wird.
HINWEIS: Vergessen Sie nicht, nach der Installation das WLAN-Land festzulegen.
Binärdateien können heruntergeladen werden von: https://cloudsmith.io/~bbn-projects/repos/bbn-repo/packages/?q=lysmarine
Das Hosting des Paket-Repositorys wird freundlicherweise von Cloudsmith bereitgestellt. Cloudsmith ist die einzige vollständig gehostete, cloudnative, universelle Paketverwaltungslösung, die es Ihrem Unternehmen ermöglicht, Pakete in jedem Format, an jedem Ort und mit absoluter Sicherheit zu erstellen, zu speichern und zu teilen.
Wenn der Cloudsmith-Download-Link für Sie nicht funktioniert, lesen Sie die Anleitung „Erste Schritte“. Es enthält einen alternativen Download-Speicherort für Veröffentlichungen auf GitHub https://github.com/bareboat-necessities/lysmarine_gen/releases
Erste Schritte: https://bareboat-necessities.github.io/my-bareboat/bareboat-os.html
Bareboat Necessities Marine OS-Forum: https://github.com/bareboat-necessities/lysmarine_gen/discussions
https://github.com/bareboat-necessities/lysmarine_gen/issues
Raspberry Pi 4 oder höher (oder CM4-Modul 4 GB mit WLAN oder Raspberry Pi 400)
4 GB Speicher oder mehr (2 GB funktionieren auch, aber nicht für viele gleichzeitige Programme)
Touchscreen mit einer Auflösung von 1024 x 600 oder höher und einer Größe von 10 Zoll oder mehr (800 x 480 und 7 Zoll funktionieren auch, aber einige der Programme öffnen zu große Dialogfelder)
Geeignetes (sofern Sie nichts Besseres finden) wasserdichtes Touchscreen-Display für Ihr Cockpit (TouchThink TPC-CD-M101, 10,1", 1280x800, IP65): https://www.touchtecs.com/
WLAN- und LTE/4G-Router (keine Voraussetzung, gl-x750 Spitz OpenWrt-Router): https://www.gl-inet.com/products/gl-x750/
Quark-elec Marine-Multiplexer scheinen eine gute Produktlinie zu haben (oder Sie können einfach dieses BBN-OS-Image verwenden, aber angesichts aller wasserdichten Anschlüsse und Hardware-Anpassungen sind diese kommerziellen Multiplexer die bessere Wahl): https://www.quark-elec.com/product -category/marine/multiplexers/ Eine weitere (noch günstigere) Option: http://www.yakbitz.com/
Mehr über Hardware: https://bareboat-necessities.github.io/my-bareboat/
Standardmäßig sind Passwörter auf „changeme“ eingestellt, die Sie ändern müssen. Der Standardbenutzername in den Anmeldebildschirmen ist „Benutzer“.
OpenCPN und Plugins
AvNav
GPSD
KPlex
SignalK und Plugins
Freibord-SK
SK-Instrumententafel
KIP-Dashboard
PyPilot
BBN-Launcher
SK-Segelanzeige
XyGrib Weather GRIB Viewer App
Stellarium
CanBoat
Segel-CAD
Rennanweisungen / Planungs-App
Schiffsspezifikationen-App
ColReg
Checkliste für Segeltörns und Verpflegung
Knoten
JTides
PC-NavTex
Chromium-Webbrowser
E-Mail-Client
FB Messenger Caprine
YouTube-App
Facebook-App
Internetwetter
Dockwa (Liegeplatz- und Marina-Buchungs-App)
NauticEd (Segelausbildung)
Blitzkarten
Windig
Seeverkehr
Mopidy Media Player mit Web-Benutzeroberfläche (YouTube, lokale Liste, Internetradio, MPD-Unterstützung)
MusicBox (Musikplayer)
Iris (Musikspieler)
VLC (mit IP-Kamera-Unterstützung)
Kühn
MotionEye (Kamerasteuerung)
shairport-sync (AirPlay)
raspotify (Raspotify)
Qualle (Quallen)
Kubischer SDR
Flarq
Fldigi
GNU Radio Companion
CuteSdr
GPredict
Gqrx
Hamfax RadioFax
JNX NavText
JWX WeatherFax
Noaa-apt Satellitenwetter
PreviSat-Satelliten-Tracker
Quisk SDR
Multimon-ng, Netcat
Zwitschern
GNU AIS
DireWolf
YAAC
morse2ascii
APRX
dump1090-fa
PiAware
APM-Planer 2
RTL AIS
RTL-SDR
GNSS-SDR
HackRF
AirSpy
OsmoSDR
Soapysdr-Tools
Samba (Windows-Netzwerk)
TASSEN (Druck)
VNC (Remotedesktop)
SSH (Remote-Shell)
NMEA 0183
SocketCAN, NMEA 2000, CAN-Utils
OpenVPN (Virtual Private Networking)
MQTT Mosquitto für IoT (zur Kommunikation mit Sonoff Smart Switches zum Einschalten mehrerer Geräte wie Radar, Ankerwinde, Bugstrahlruder, Lichter)
WLAN (Zugangspunkt und Client)
SignalK
Seatalk 1, GPIO
ModBus (um mit Victron Venus OS usw. zu kommunizieren)
Timeshift (Backups), rsync
PPP, Wvdial, Picocom für Satellitenmodemunterstützung
I2C-Tools
1-Wire (Sensoren z. B. für Temperatur, Luftfeuchtigkeit, Druck, Tankfüllstände)
LoRaWan
WetterFax
NOAA-Wetter
NavTex
Inmarsat-Flotte
WinLink
SMS (mit Gammu)
Bluetooth (Dateiübertragung)
AirPlay (über Shairport-Sync)
SolarThing Solarstromüberwachung
Texteditor
Dateimanager
Task-Manager
Terminalanwendung
Bildbetrachter
Kalkulator
Kalender
Wetter-App
OnBoard-Touchscreen-Tastatur
Rechtsklick-Unterstützung auf Touchscreens
Arduino-IDE
Java (OpenJDK)
Python
NodeJS
C/C++-Compiler und Toolset
Debian-, NPM-, PIP- und Snap-Paketmanager
rpi-clone (SSD-Klonen)
Pi Imager, Piclone
Seepferdchen (Passwortverwaltung)
Gammu (SMS-Client)
Timeshift (Backups)
scrcpy (Android Mirroring)
InfluxDB
Grafana
NodeRed ist in SignalK eingebettet
Chronograf
Kondensator
QtVlm
DeskPi Pro-Unterstützung
Unterstützung für den ArgonOne-Fall
Text-to-Speech-App
Touchscreen-Kalibrierung
NMEA Sleuth Chromium Plugin
PAKTOR
SdrGlut
WxToImg
Betriebssystemeinstellungen
Zeitzonen-Setup
Kennwort ändern
Predict (Satelliten-Tracker für Skripterstellung)
Pat / WinLink
Luftpost
Widevine-Schutz für digitale Inhalte
Homeassistant-Hausautomation
EspHome Hausautomation
Dies ist der Fork des ursprünglichen LysMarine https://github.com/lysmarine/lysmarine_gen von Frederic Guilbault. Es basiert auf dem LysMarine-Betriebssystem, unterscheidet sich jedoch in einer Reihe enthaltener Anwendungen und den UI-Funktionen von diesem. Jetzt handelt es sich um ein eigenständiges Betriebssystem-Image.
Eine weitere nützliche Ressource ist unser vorheriges Projekt (siehe: https://bareboat-necessities.github.io/my-bareboat/). Obwohl es auf OpenPlotter basiert, ist es dennoch nützlich, die Hardware- und Software-Einrichtung Ihres Marine Raspberry Pi zu verstehen.
Erstellen Sie ein GitHub-Konto
Forken Sie dieses Projekt auf GitHub
Erstellen Sie ein CircleCi-Konto (Anmeldung mit GitHub verwenden)
Registrieren Sie .circleci/config.yml in CircleCi
Erstellen Sie ein CloudSmith-Konto (Anmeldung mit GitHub verwenden)
CloudSmith-Schlüssel in die Circleci-Projekteinstellungen importieren (über die Umgebungsvariable)
Bearbeiten Sie die Optionen „publish-cloudsmith.sh“ in .circleci/config.yml, um den Speicherort Ihres Cloudsmith-Repositorys festzulegen und die Änderungen an GitHub zu übertragen
Nachdem der Circleci-Build abgeschlossen ist, wird ein Bild erstellt und in Cloudsmith hochgeladen
Sie können dieses Image mit dem RaspberryPi-Imager auf eine SD-Karte brennen und diese SD-Karte zum Booten Ihres Raspberry Pi verwenden
Sie können Dateien im Verzeichnis „install-scripts“ bearbeiten, sie in GitHub verschieben und Ihr Image anpassen.
Ja. Es ist ein Wortspiel, das vom Namen des Liedes aus „Das Dschungelbuch“ von Louis Prima inspiriert ist.
BBN Marine OS- und Lysmarine-Skripte, die unter GPLv3 vertrieben werden
Copyright © 2020 Frederic Guilbault
Copyright © 2021-2024 mgrouch
Enthaltener Inhalt, der dem Urheberrecht anderer Unternehmen unterliegt und unter deren jeweiligen Lizenzen vertrieben wird.