0.0.3 • Published 19 days ago

@liamcottle/meshtastic-websocket-proxy v0.0.3

Weekly downloads
-
License
MIT
Repository
-
Last release
19 days ago

Meshtastic Websocket Proxy

Proxies ToRadio and FromRadio packets between a single Meshtastic device and multiple websocket clients.

The /api/v1/fromradio endpoint of the Meshtastic HTTP API only supports one client connection at a time. If you have more than one client fetching the fromradio endpoint, one of the clients will "consume" those packets from the device, and they will not be received by the other clients.

This project expects to be the only client connecting to your Meshtastic device. It runs a simple websocket server, which will forward all FromRadio packets received from the device to all clients connected to the websocket.

You will be able to connect multiple clients to the websocket, as all connected clients will receive the same packets. The websocket also allows multiple clients to send packets to the radio at the same time.

How to run it?

node src/index.js --help
Meshtastic Websocket Proxy

  Proxies ToRadio and FromRadio packets between a single Meshtastic device and multiple WebSocket clients.                                                   

Options

  -h, --help                 Display this usage guide.
  --meshtastic-host string   IP address of Meshtastic device (default: 127.0.0.1)
  --meshtastic-tls string    Use TLS when connecting to Meshtastic device (default: true)
  --websocket-port number    Port to run Websocket Server on (default: 8080)
  --ignore-history string    When enabled, does not send packets to websocket clients if rxTime is before we connected to the device (default: true)

To proxy Meshtastic Linux Native over a websocket on port 8080, you could do something like the following;

node src/index.js --meshtastic-host 127.0.0.1 --websocket-port 8080

Alternatively, you can run the latest version directly from npm without downloading the source.

npx @liamcottle/meshtastic-websocket-proxy --meshtastic-host 127.0.0.1 --websocket-port 8080

TODO

  • Add docs for sending/receiving packets over the websocket
  • Support proxying BLE and Serial connections.

License

MIT