Install the v0.2.0 wheel directly from the GitHub release:
python -m venv .venv
source .venv/bin/activate
python -m pip install \
https://github.com/devkyato/OpenNet/releases/download/v0.2.0/opennet_protocol-0.2.0-py3-none-any.whlTerminal one:
opennet serve --echoTerminal two:
opennet ping --count 5
opennet send sensor/temperature 24.7 --type float
opennet send device/state '{"online":true,"battery":91}' --type jsonDownload and extract OpenNet-linux-0.2.0.tar.gz, then:
sudo ./install.sh
systemctl status opennet
journalctl -u opennet -fIt listens only on 127.0.0.1 by default. Use --no-start if you need to add
TLS before the first start. See Security.
- Install
OpenNet-0.2.0.zipthrough Arduino IDE's Add .ZIP Library. - Open File > Examples > OpenNet > TelemetryClient.
- Enter the Wi-Fi details and the server's LAN address.
- Start a development server with
opennet serve --host 0.0.0.0 --allow-plaintext. - Upload and watch the serial monitor.
This plaintext mode is for a controlled lab. Use the
SecureTelemetryClient example and a CA certificate for shared networks.
Open BluetoothSerialClient on two original ESP32 boards (or pair one to a host
serial port). ONP framing runs over BluetoothSerial, so JSON, numbers, bytes,
ACKs, and CRC validation remain identical.
ESP32-C3 and ESP32-S3 do not support Bluetooth Classic SPP. BLE GATT requires a future adapter and must not be described as supported by this release.
Start the server and run:
opennet benchmark --host raspberrypi.local --ca lab-ca.crt \
--count 1000 --warmup 25 --payload-size 64 --jsonRepeat at different distances and busy periods. Record device versions, RSSI, payload, sample count, reconnects, p50, p95, and maximum. A good report includes failures and configuration, not only the best number.
Once mutual TLS is working, the Python server can check the verified client
certificate and topic in an authorizer. I thought about putting this check in
each handler, but one callback is easier to audit and it runs before any handler
or ACK.
Start with the complete certificate-to-topic example. Give each device certificate a stable identity, map that identity to a narrow topic prefix, and test both an allowed and denied topic before deployment.