Lo que comenzó como un esfuerzo por construir un sistema operativo Linux marino resultó ser mucho más interesante. Nuestro objetivo era construir un sistema operativo de computadora marina para usar en barcos para la navegación y en pantallas táctiles en la cabina de un barco. Por naturaleza la navegación marítima es muy exigente. Mucho más exigente que el ordenador de un coche. Era necesario:
buen soporte de pantalla táctil (incluso con pantallas pequeñas) (GTK3, budgie)
capacidad de conectarse fácilmente a una variedad de sensores GPS, IMU, ambiente (temperatura, presión, humedad, viento), piloto automático, nivel de agua de sentina y mucho más (SignalK/Kplex NMEA están integrados)
capacidad de controlar otro hardware (comenzó con el control del gobierno del barco y el piloto automático). Tenemos pyPilot integrado.
recuperación, procesamiento, mapeo y visualización de información meteorológica (a menudo es una cuestión de supervivencia en un barco)
rutas meteorológicas y climatología
un reproductor multimedia (quién no quiere reproducir música estando en un barco, así que aquí vamos con el reproductor MPD, Mopidy y más)
conectividad a internet, VPN, celular 4G/LTE, satélite, Wi-Fi
navegación celeste (nos trajo software de astronomía, por eso empaquetamos Stellarium y más)
cartografía y navegación (Disponemos de chartplotters OpenCPN, FreeBoard-SK, AvNav). Si bien nuestro enfoque eran las cartas náuticas, nuestra distribución se puede adaptar fácilmente a un sistema de navegación para automóviles.
Radio SDR definida por software (la comunidad de radioaficionados podría interesarse), AIS, clima (NOAA, fax meteorológico, NavTex), flota Inmarsat
Internet satelital a través de Iridium.
Bajo consumo de energía (por eso lo construimos para procesadores basados en ARM)
Pensamos que nuestra distribución puede servir como base para que otros interesados construyan:
Distribución Linux para domótica.
Distribución de Linux HAM radio SDR
Estación meteorológica bajo Linux
Distribución de Linux relacionada con la astronomía
Distribución de Linux con reproductor de música/medios
Tableta táctil Linux genérica con sistema operativo ARM raspberry
Distribución de Linux especializada en automóviles.
enrutador wifi
El código para crear esta distribución se puede personalizar fácilmente siguiendo las instrucciones a continuación. No es necesario que lo construya en su propio hardware ARM. El proceso que se describe a continuación explica cómo puede compilarlo directamente desde su código fuente en GitHib a través de CircleCi y distribuirlo en CloudSmith u otro lugar. No requiere mucho esfuerzo ni codificación, se requiere algo de dedicación (seguramente).
Tercer lugar en el Premio RealVNC Raspberry Pi 2023.
Para comenzar, es más fácil descargar una imagen prediseñadas usando los enlaces a continuación (o puede crear la suya propia siguiendo las instrucciones en el siguiente capítulo). CircleCI es la herramienta que se utiliza para crear la imagen del sistema operativo.
NOTA: No olvide configurar el país de Wi-Fi después de la instalación.
Los binarios se pueden descargar desde: https://cloudsmith.io/~bbn-projects/repos/bbn-repo/packages/?q=lysmarine
Cloudsmith proporciona amablemente el alojamiento del repositorio de paquetes. Cloudsmith es la única solución de administración de paquetes universal, nativa de la nube y totalmente alojada que permite a su organización crear, almacenar y compartir paquetes en cualquier formato, en cualquier lugar, con total confianza.
Si el enlace de descarga de Cloudsmith no funciona para usted, consulte la Guía de introducción. Contiene una ubicación de descarga alternativa de los lanzamientos que se encuentran en GitHub https://github.com/bareboat-necessities/lysmarine_gen/releases
Primeros pasos: https://bareboat-necessities.github.io/my-bareboat/bareboat-os.html
Foro sobre sistemas operativos marinos Bareboat Necessities: https://github.com/bareboat-necessities/lysmarine_gen/discussions
https://github.com/bareboat-necessities/lysmarine_gen/issues
Raspberry Pi 4 o superior (o módulo CM4 de 4Gb con Wi-Fi, o raspberry pi 400)
4 GB de memoria o más (2 GB también funcionan, pero no para muchos programas simultáneos)
Pantalla táctil con resolución de 1024x600 o superior y tamaño de 10" o más (800x480 y 7" también funcionan, pero pocos programas abrirán cuadros de diálogo demasiado grandes)
Pantalla táctil resistente al agua adecuada (a menos que encuentre algo mejor) para su cabina (TouchThink TPC-CD-M101, 10,1", 1280x800, IP65): https://www.touchtecs.com/
Enrutador Wi-Fi y LTE/4G (no es un requisito, enrutador gl-x750 Spitz OpenWrt): https://www.gl-inet.com/products/gl-x750/
Los multiplexores marinos de Quark-elec parecen tener una buena línea de productos (o simplemente puede usar esta imagen del sistema operativo BBN, pero considerando todos los conectores impermeables y la personalización del hardware, estos multiplexores comerciales son una mejor opción): https://www.quark-elec.com/product -category/marine/multiplexers/ Otra opción (incluso más barata): http://www.yakbitz.com/
Más sobre hardware: https://bareboat-necessities.github.io/my-bareboat/
Las contraseñas predeterminadas están configuradas en "cambiarme", que se supone que debes cambiar. El nombre de usuario predeterminado en las pantallas de inicio de sesión es "usuario".
OpenCPN y complementos
AvNav
GPSD
kplex
SignalK y complementos
Francobordo-SK
Panel de instrumentos SK
Panel de control KIP
PyPilot
Lanzador BBN
Calibre de vela SK
Aplicación XyGrib Weather GRIB Viewer
estelario
CanBoat
Vela CAD
Instrucciones de carrera/Aplicación de planificación
Aplicación de especificaciones de embarcaciones
ColReg
Lista de verificación de viaje en velero y aprovisionamiento
Nudos
Mareas
PC-NavTex
Navegador web cromo
Cliente de correo electrónico
FB Messenger Caprino
Aplicación de YouTube
Aplicación de Facebook
Clima en Internet
Dockwa (Aplicación de reserva de amarres y puertos deportivos)
NauticEd (Educación de vela)
Mapas de relámpagos
Ventoso
Tráfico Marítimo
Mopidy Media Player con interfaz de usuario web (YouTube, lista local, radio por Internet, compatibilidad con MPD)
MusicBox (reproductor de música)
Iris (reproductor de música)
VLC (con soporte para cámara IP)
Audaz
MotionEye (control de cámaras)
sincronización de shairport (AirPlay)
raspotificar (raspotificar)
Jellyfin (Jellyfin)
DEG cúbico
flarq
fldigi
Compañero de radio GNU
lindosdr
GPredecir
gqrx
Hamfax RadioFax
Texto de navegación JNX
JWX WeatherFax
Tiempo satelital noaa-apt
Rastreador de satélites PreviSat
Quisk DEG
multimon-ng, netcat
Chirrido
GNU-AIS
lobo huargo
YAAC
morse2ascii
APRX
volcado1090-fa
PiAware
Planificador APM 2
AIS RTL
RTL-DEG
GNSS-SDR
HackRF
AirSpy
OsmoSDR
herramientas-jabonysdr
Samba (redes de Windows)
TAZAS (impresión)
VNC (escritorio remoto)
SSH (shell remoto)
NMEA 0183
SocketCAN, NMEA 2000, can-utils
OpenVPN (red privada virtual)
MQTT Mosquitto para IoT (para comunicarse con los interruptores inteligentes Sonoff para encender varios dispositivos como radar, molinete, hélice de proa, luces)
Wi-Fi (Punto de Acceso y Cliente)
SeñalK
Seatalk 1, GPIO
ModBus (para hablar con Victron Venus OS, etc.)
Timeshift (copias de seguridad), rsync
PPP, wvdial, picocom para soporte de módem satelital
herramientas I2C
1 cable (sensores, por ejemplo, de temperatura, humedad, presión, niveles de tanque)
lorawan
TiempoFax
Tiempo en NOAA
NavTex
Flota Inmarsat
WinLink
SMS (usando Gammu)
Bluetooth (transferencia de archivos)
AirPlay (a través de shairport-sync)
SolarThing Monitoreo de energía solar
Editor de texto
Gestor de archivos
Administrador de tareas
Aplicación de terminal
Visor de imágenes
Calculadora
Calendario
Aplicación del tiempo
Teclado de pantalla táctil integrado
Soporte de clic derecho en pantallas táctiles
IDE de Arduino
Java (OpenJDK)
Pitón
NodoJS
Compilador y conjunto de herramientas C/C++
Debian, NPM, PIP, administradores de paquetes Snap
rpi-clone (clonación de SSD)
Generador de imágenes Pi, piclón
caballito de mar (Gestión de contraseñas)
Gammu (cliente SMS)
Timeshift (copias de seguridad)
scrcpy (duplicación de Android)
InflujoDB
Grafana
NodeRed integrado en SignalK
Cronógrafo
condensador
qtvlm
Soporte para DeskPi Pro
Soporte de caso ArgonOne
Aplicación de texto a voz
Calibración de pantalla táctil
Complemento NMEA Sleuth Chromium
PACTOR
SdrGlut
WxToImg
Configuración del sistema operativo
Configuración de zona horaria
Cambiar la contraseña
Predict (Satellite Tracker para secuencias de comandos)
Pat/WinLink
Correo aéreo
Protección de contenido digital de Widevine
Automatización del hogar
EspHome Domótica
Esta es la bifurcación del LysMarine original https://github.com/lysmarine/lysmarine_gen de Frederic Guilbault. Está basado en el sistema operativo LysMarine, pero se diferencia de él en una serie de aplicaciones incluidas y en las funciones de la interfaz de usuario. Ahora es una imagen distinta del sistema operativo.
Otro recurso útil es nuestro proyecto anterior (ver: https://bareboat-necessities.github.io/my-bareboat/). Aunque está basado en OpenPlotter, sigue siendo útil para comprender la configuración del hardware y software de su Raspberry Pi marina.
Crear cuenta de GitHub
Bifurca este proyecto en GitHub
Cree una cuenta CircleCi (use el inicio de sesión con GitHub)
Registre .circleci/config.yml en CircleCi
Cree una cuenta de CloudSmith (use el inicio de sesión con GitHub)
Importe la clave de CloudSmith a la configuración del proyecto Circleci (a través de la variable env)
Edite las opciones de Publish-cloudsmith.sh en .circleci/config.yml para colocar la ubicación de su repositorio de Cloudsmith y enviar los cambios a GitHub.
Una vez que se complete la compilación de Circleci, se creará y cargará una imagen en Cloudsmith.
Puede grabar esta imagen usando el generador de imágenes RaspberryPi en una tarjeta SD y usar esa tarjeta SD para iniciar su Raspberry Pi.
Puede editar archivos dentro del directorio install-scripts, enviarlos a GitHub y personalizar su imagen.
Sí. Es un juego de palabras inspirado en el nombre de la canción de "El libro de la selva" interpretada por Louis Prima.
Scripts BBN Marine OS y Lysmarine distribuidos bajo GPLv3
Copyright © 2020 Frédéric Guilbault
Copyright © 2021-2024 mgrouch
Contenido incluido con derechos de autor de otras entidades distribuido bajo sus respectivas licencias.