{"id":13497123,"url":"https://github.com/bastibl/gr-ieee802-15-4","last_synced_at":"2025-04-06T03:11:20.444Z","repository":{"id":7265868,"uuid":"8578675","full_name":"bastibl/gr-ieee802-15-4","owner":"bastibl","description":"IEEE 802.15.4 ZigBee Transceiver","archived":false,"fork":false,"pushed_at":"2023-07-28T12:51:17.000Z","size":904,"stargazers_count":283,"open_issues_count":4,"forks_count":88,"subscribers_count":24,"default_branch":"maint-3.10","last_synced_at":"2025-03-30T02:07:37.019Z","etag":null,"topics":["802-15-4","ieee","iot","sdr","zigbee"],"latest_commit_sha":null,"homepage":"https://www.wime-project.net","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bastibl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2013-03-05T11:51:25.000Z","updated_at":"2025-03-08T07:52:05.000Z","dependencies_parsed_at":"2024-04-07T02:43:49.355Z","dependency_job_id":"d4d0742f-9962-4df4-9f8d-066b1b8b603c","html_url":"https://github.com/bastibl/gr-ieee802-15-4","commit_stats":{"total_commits":137,"total_committers":9,"mean_commits":"15.222222222222221","dds":0.291970802919708,"last_synced_commit":"1a2999ce2778df279870f028a4ce15d94e60fbd9"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-ieee802-15-4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-ieee802-15-4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-ieee802-15-4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-ieee802-15-4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bastibl","download_url":"https://codeload.github.com/bastibl/gr-ieee802-15-4/tar.gz/refs/heads/maint-3.10","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247427006,"owners_count":20937213,"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":["802-15-4","ieee","iot","sdr","zigbee"],"created_at":"2024-07-31T20:00:23.869Z","updated_at":"2025-04-06T03:11:20.430Z","avatar_url":"https://github.com/bastibl.png","language":"C++","funding_links":[],"categories":["GnuRadio Software"],"sub_categories":[],"readme":"Hi!\n\nThis is an IEEE802.15.4 O-QPSK transceiver for GNU Radio, based on Thomas\nSchmid's implementation.\n\n### Development\n\nLike GNU Radio, this module uses *maint* branches for development.\nThese branches are supposed to be used with the corresponding GNU Radio\nbranches. This means: the *maint-3.7* branch is compatible with GNU Radio 3.7,\n*maint-3.8* is compatible with GNU Radio 3.8, etc.\n\n\n## Features\n\n- The O-QPSK PHY encapsulated in a hierarchical block.\n- The CSS PHY, also encapsulated in a hierarchical block (Limitation: Packets\n  need to have a fixed length).\n- A block that implements the Rime communication stack. Rime is a lightweight\n  communication stack designed for Wireless Sensor Networks and is part of the\n  Contiki Operating System.\n- A transceiver flow graph with USRP \u003c-\u003e PHY \u003c-\u003e MAC \u003c-\u003e Network layer (Rime)\n  \u003c-\u003e UDP Socket / APP which resembles pretty well the ISO/OSI structure.\n- A sample application which visualizes sensor values. The application shows how\n  easy it is to connect an external program to the flow graph by using Socket\n  PDU blocks.\n- An IEEE 802.15.4 and Rime dissector for Wireshark.\n\nSome interesting properties:\n- Packets can be piped to Wireshark.\n- The complete physical modulation is done with plain GNU Radio blocks.\n- It is interoperable with TelosB sensor motes.\n- It is interoperable with Contiki.\n- It uses a block to tag packet bursts with `tx_sob` and `tx_eob` tags. This\n  tags are understood by the UHD blocks and allow fast switching between\n  transmission and reception.\n\nYou can find the firmware that I used to test interoperability with TelosB motes\nin the contiki folder. The firmware is based on Contiki v2.6. There is another\nREADME file in the Contiki folder that describes how to compile and use the\nfirmware.\n\n\n## Dependencies\n\n- GNU Radio\n\n- gr-foo (Wireshark Connector, Packet Pad and Burst Tagger blocks) \u003cbr\u003e\n  https://github.com/bastibl/gr-foo.git\n\n- python-matplotlib (if you want to run the GUI sample application) \u003cbr\u003e\n  `sudo apt-get install python-matplotlib`\n\n\n## Installation\n\nPlease see [www.wime-project.net](https://www.wime-project.net/installation/)\nfor installation instructions.\n\n## Usage\n\nOpen the `examples/transceiver_*.grc` flow graph with gnuradio-companion and\ncheck if all blocks are connected. Enable either the UHD blocks to interface\nwith real hardware or the Packet Pad block to loop back the samples. Open some\nRime connections and connect messages sources or Socket PDUs. You can easily\nconnect to the Socket PDU blocks with netcat. Netcat can be started for example\nwith\n\n```\nnc -u localhost 52001\n```\n\nThere are also startup scripts in the apps folder.\n\nHave fun!\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbastibl%2Fgr-ieee802-15-4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbastibl%2Fgr-ieee802-15-4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbastibl%2Fgr-ieee802-15-4/lists"}