Serial to TCP
Z Poznámkový blok
Úvod
Pro možnost připojení na sériový port přes TCP je vhodné použít socat. Následně pak bude port dostupný přes TCP na nastaveném portě.
Instalace
sudo apt update sudo apt install socat
Jednorázové spusštění
Prvně potřebujeme zjistit, kde se požadovaný port nachází:
- /dev/ttyACM0 (nebo /dev/ttyUSB0)
- UART / GPIO: /dev/serial0 (nebo /dev/ttyAMA0)
Zjistěte také přenosovou rychlost (baud rate), např. 9600 nebo 115200.
Poté můžeme provést spusštění
socat TCP-LISTEN:5000,reuseaddr,fork /dev/ttyACM0,b115200
- TCP-LISTEN:5000 – vytvoří TCP server na portu 5000.
- fork – umožní připojení více klientů nebo opakované připojení.
- /dev/ttyACM0 – cesta k vašemu sériovému portu (upravte podle sebe).
- b115200 – rychlost sériové sběrnice (upravte podle vašeho modulu).
Systemd
Pokud chceme, aby se spouštěl propojení vždy, vytvoříme systemd.
sudo nano /etc/systemd/system/serial-socat.service
[Unit] Description=Serial TCP Bridge via socat After=network.target [Service] ExecStart=/usr/bin/socat TCP-LISTEN:5000,reuseaddr,fork /dev/ttyACM0,b115200 Restart=always [Install] WantedBy=multi-user.target
Poté službu povolíme
sudo systemctl daemon-reload sudo systemctl enable --now gps-socat.service