{"id":16017282,"url":"https://github.com/njh/mqtt-sn-tools","last_synced_at":"2025-07-04T10:33:01.570Z","repository":{"id":55008479,"uuid":"14865723","full_name":"njh/mqtt-sn-tools","owner":"njh","description":"Command line tools written in C for the MQTT-SN (MQTT for Sensor Networks) protocol","archived":false,"fork":false,"pushed_at":"2021-01-22T18:57:09.000Z","size":659,"stargazers_count":196,"open_issues_count":5,"forks_count":87,"subscribers_count":36,"default_branch":"main","last_synced_at":"2025-04-10T00:28:57.706Z","etag":null,"topics":["c","cli","mqtt","mqtt-sn"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/njh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-12-02T15:13:48.000Z","updated_at":"2025-03-11T19:23:41.000Z","dependencies_parsed_at":"2022-08-14T09:00:23.658Z","dependency_job_id":null,"html_url":"https://github.com/njh/mqtt-sn-tools","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/njh/mqtt-sn-tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/njh%2Fmqtt-sn-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/njh%2Fmqtt-sn-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/njh%2Fmqtt-sn-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/njh%2Fmqtt-sn-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/njh","download_url":"https://codeload.github.com/njh/mqtt-sn-tools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/njh%2Fmqtt-sn-tools/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263493186,"owners_count":23475151,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","cli","mqtt","mqtt-sn"],"created_at":"2024-10-08T16:04:51.127Z","updated_at":"2025-07-04T10:33:01.529Z","avatar_url":"https://github.com/njh.png","language":"C","funding_links":[],"categories":["Messaging"],"sub_categories":["MQTT-SN"],"readme":"MQTT-SN Tools\n=============\n\n[![Build Status](https://travis-ci.org/njh/mqtt-sn-tools.svg?branch=master)](https://travis-ci.org/njh/mqtt-sn-tools)\n\nCommand line tools written in C for the MQTT-SN (MQTT for Sensor Networks) protocol.\n\n\nSupported Features\n------------------\n\n- QoS 0, 1 and -1\n- Keep alive pings\n- Publishing retained messages\n- Publishing empty messages\n- Subscribing to named topic\n- Clean / unclean sessions\n- Manual and automatic client ID generation\n- Displaying topic name with wildcard subscriptions\n- Pre-defined topic IDs and short topic names\n- Forwarder encapsulation according to MQTT-SN Protocol Specification v1.2.\n\n\nLimitations\n-----------\n\n- Packets must be 255 or less bytes long\n- No Last Will and Testament\n- No QoS 2\n- No automatic re-sending of lost packets\n- No Automatic gateway discovery\n\n\nBuilding\n--------\n\nJust run 'make' on a POSIX system.\n\n\nPublishing\n----------\n\n    Usage: mqtt-sn-pub [opts] -t \u003ctopic\u003e -m \u003cmessage\u003e\n\n      -d             Increase debug level by one. -d can occur multiple times.\n      -f \u003cfile\u003e      A file to send as the message payload.\n      -h \u003chost\u003e      MQTT-SN host to connect to. Defaults to '127.0.0.1'.\n      -i \u003cclientid\u003e  ID to use for this client. Defaults to 'mqtt-sn-tools-' with process id.\n      -k \u003ckeepalive\u003e keep alive in seconds for this client. Defaults to 10.\n      -e \u003csleep\u003e     sleep duration in seconds when disconnecting. Defaults to 0.\n      -m \u003cmessage\u003e   Message payload to send.\n      -l             Read from STDIN, one message per line.\n      -n             Send a null (zero length) message.\n      -p \u003cport\u003e      Network port to connect to. Defaults to 1883.\n      -q \u003cqos\u003e       Quality of Service value (0, 1 or -1). Defaults to 0.\n      -r             Message should be retained.\n      -s             Read one whole message from STDIN.\n      -t \u003ctopic\u003e     MQTT-SN topic name to publish to.\n      -T \u003ctopicid\u003e   Pre-defined MQTT-SN topic ID to publish to.\n      --fe           Enables Forwarder Encapsulation. Mqtt-sn packets are encapsulated according to MQTT-SN Protocol Specification v1.2, chapter 5.5 Forwarder Encapsulation.\n      --wlnid        If Forwarder Encapsulation is enabled, wireless node ID for this client. Defaults to process id.\n      --cport \u003cport\u003e Source port for outgoing packets. Uses port in ephemeral range if not specified or set to 0.\n\n\nSubscribing\n-----------\n\n    Usage: mqtt-sn-sub [opts] -t \u003ctopic\u003e\n\n      -1             exit after receiving a single message.\n      -c             disable 'clean session' (store subscription and pending messages when client disconnects).\n      -d             Increase debug level by one. -d can occur multiple times.\n      -h \u003chost\u003e      MQTT-SN host to connect to. Defaults to '127.0.0.1'.\n      -i \u003cclientid\u003e  ID to use for this client. Defaults to 'mqtt-sn-tools-' with process id.\n      -k \u003ckeepalive\u003e keep alive in seconds for this client. Defaults to 10.\n      -e \u003csleep\u003e     sleep duration in seconds when disconnecting. Defaults to 0.\n      -p \u003cport\u003e      Network port to connect to. Defaults to 1883.\n      -q \u003cqos\u003e       QoS level to subscribe with (0 or 1). Defaults to 0.\n      -t \u003ctopic\u003e     MQTT-SN topic name to subscribe to. It may repeat multiple times.\n      -T \u003ctopicid\u003e   Pre-defined MQTT-SN topic ID to subscribe to. It may repeat multiple times.\n      --fe           Enables Forwarder Encapsulation. Mqtt-sn packets are encapsulated according to MQTT-SN Protocol Specification v1.2, chapter 5.5 Forwarder Encapsulation.\n      --wlnid        If Forwarder Encapsulation is enabled, wireless node ID for this client. Defaults to process id.\n      -v             Print messages verbosely, showing the topic name.\n      -V             Print messages verbosely, showing current time and the topic name.\n      --cport \u003cport\u003e Source port for outgoing packets. Uses port in ephemeral range if not specified or set to 0.\n\n\nDumping\n-------\n\nDisplays MQTT-SN packets sent to specified port.\nMost useful for listening out for QoS -1 messages being published by a client.\n\n    Usage: mqtt-sn-dump [opts] -p \u003cport\u003e\n\n      -a             Dump all packet types.\n      -d             Increase debug level by one. -d can occur multiple times.\n      -p \u003cport\u003e      Network port to listen on. Defaults to 1883.\n      -v             Print messages verbosely, showing the topic name.\n\n\nSerial Port Bridge\n------------------\n\nThe Serial Port bridge can be used to relay packets from a remote device on the end of a\nserial port and convert them into UDP packets, which are sent and received from a broker\nor MQTT-SN gateway.\n\n    Usage: mqtt-sn-serial-bridge [opts] \u003cdevice\u003e\n\n      -b \u003cbaud\u003e      Set the baud rate. Defaults to 9600.\n      -d             Increase debug level by one. -d can occur multiple times.\n      -dd            Enable extended debugging - display packets in hex.\n      -h \u003chost\u003e      MQTT-SN host to connect to. Defaults to '127.0.0.1'.\n      -p \u003cport\u003e      Network port to connect to. Defaults to 1883.\n      --fe           Enables Forwarder Encapsulation. Mqtt-sn packets are encapsulated according to MQTT-SN Protocol Specification v1.2, chapter 5.5 Forwarder Encapsulation.\n      --cport \u003cport\u003e Source port for outgoing packets. Uses port in ephemeral range if not specified or set to 0.\n\n\nLicense\n-------\n\nMQTT-SN Tools is licensed under the [MIT License].\n\n\n\n[MIT License]: http://opensource.org/licenses/MIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnjh%2Fmqtt-sn-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnjh%2Fmqtt-sn-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnjh%2Fmqtt-sn-tools/lists"}