Files
venus/axiom-nmea/examples/dbus-raymarine-publisher/service/run
dev 9756538f16 Initial commit: Venus OS boat addons monorepo
Organizes 11 projects for Cerbo GX/Venus OS into a single repository:
- axiom-nmea: Raymarine LightHouse protocol decoder
- dbus-generator-ramp: Generator current ramp controller
- dbus-lightning: Blitzortung lightning monitor
- dbus-meteoblue-forecast: Meteoblue weather forecast
- dbus-no-foreign-land: noforeignland.com tracking
- dbus-tides: Tide prediction from depth + harmonics
- dbus-vrm-history: VRM cloud history proxy
- dbus-windy-station: Windy.com weather upload
- mfd-custom-app: MFD app deployment package
- venus-html5-app: Custom Victron HTML5 app fork
- watermaker: Watermaker PLC control UI

Adds root README, .gitignore, project template, and per-project
.gitignore files. Sensitive config files excluded via .gitignore
with .example templates provided.

Made-with: Cursor
2026-03-16 17:04:16 +00:00

35 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
exec 2>&1
# Configuration - set by install.sh or edit manually
# Interface: network interface name (eth0, wlan0) or specific IP address
INTERFACE="eth0"
# NMEA TCP server port, or "disabled" to turn off
NMEA_TCP_PORT="10110"
INSTALL_DIR="/data/dbus-raymarine-publisher"
# Resolve interface name to IP address if needed
if echo "$INTERFACE" | grep -qE '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$'; then
INTERFACE_IP="$INTERFACE"
else
INTERFACE_IP=$(ip -4 addr show "$INTERFACE" 2>/dev/null | grep 'inet ' | awk '{print $2}' | cut -d/ -f1 | head -n 1)
if [ -z "$INTERFACE_IP" ]; then
echo "Error: Could not get IP address for interface $INTERFACE"
sleep 10
exit 1
fi
fi
cd "$INSTALL_DIR"
export PYTHONPATH="$INSTALL_DIR/ext/velib_python:$PYTHONPATH"
CMD_ARGS="--interface $INTERFACE_IP"
if [ -n "$NMEA_TCP_PORT" ] && [ "$NMEA_TCP_PORT" != "disabled" ]; then
CMD_ARGS="$CMD_ARGS --nmea-tcp-port $NMEA_TCP_PORT"
else
CMD_ARGS="$CMD_ARGS --no-nmea-tcp"
fi
exec python3 "$INSTALL_DIR/venus_publisher.py" $CMD_ARGS