{"id":13497095,"url":"https://github.com/bastibl/gr-foo","last_synced_at":"2025-04-04T19:07:08.523Z","repository":{"id":8800957,"uuid":"10495164","full_name":"bastibl/gr-foo","owner":"bastibl","description":"Some GNU Radio blocks that I use.","archived":false,"fork":false,"pushed_at":"2025-01-30T16:09:23.000Z","size":366,"stargazers_count":107,"open_issues_count":3,"forks_count":59,"subscribers_count":8,"default_branch":"maint-3.10","last_synced_at":"2025-03-28T18:08:41.066Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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,"publiccode":null,"codemeta":null}},"created_at":"2013-06-05T04:47:47.000Z","updated_at":"2025-03-20T00:18:57.000Z","dependencies_parsed_at":"2024-04-07T02:43:45.758Z","dependency_job_id":"38d8b767-34eb-4c50-9a8d-9c6428ee2243","html_url":"https://github.com/bastibl/gr-foo","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-foo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-foo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-foo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bastibl%2Fgr-foo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bastibl","download_url":"https://codeload.github.com/bastibl/gr-foo/tar.gz/refs/heads/maint-3.10","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247234921,"owners_count":20905854,"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":[],"created_at":"2024-07-31T20:00:23.256Z","updated_at":"2025-04-04T19:07:08.487Z","avatar_url":"https://github.com/bastibl.png","language":"C++","readme":"```\n                     ____                 \\\n   ____ ______      / __/___  ____     \\   \\\n  / __ `/ ___/_____/ /_/ __ \\/ __ \\  \\  |   |\n / /_/ / /  /_____/ __/ /_/ / /_/ /  /  |   |\n \\__, /_/        /_/  \\____/\\____/     /   /\n/____/                                    /\n\n```\n\nHi!\n\nThis is a collection of custom blocks that are not directly associated with a\nproject. For sample applications see:\n\n-  https://github.com/bastibl/gr-ieee802-11\n-  https://github.com/bastibl/gr-ieee802-15-4\n\n\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\n### Wireshark Connector\n\nThis blocks outputs PDUs in the PCAP format which is supported by all common\nnetwork monitoring applications. Some examples are Wireshark, Tshark, and\ntcpdump. Currently, it supports WiFi packets with Radiotap header and ZigBee.\n\nFor further information about Radiotap, PCAP, and Wireshark see:\n\n- http://www.radiotap.org/\n- http://www.wireshark.org/\n\n\n\n### Packet Pad\n\nAdds a configurable number of zeros before and after a burst. The burst has to\nbe started with an tx_sob, and ended with a tx_eob tag. From time to time I had\nissues when I did not pad the sample stream. This block helps to investigate\nthat. It is also handy for loopback testing when there is no continues sample\nstream. Furthermore, this block can add a tx_time tag to every burst that lies\na configurable number of seconds in the future. This is handy to buffer the\nsample stream for a short time to avoid underruns during the transmission,\nwhich lead to corrupted signals. You have to set the sync option to 'PC source'\nfor this feature.\n\n\n\n### Burst Tagger\n\nTags a burst / packet / bunch of samples with tx_sob and tx_eob tags. This is\nuseful if the SDR is operating in half-duplex mode. With adding a tx_eob the\nUSRP switches back to receive mode immediately. That way, direct responses like\nACKs are not missed.\n\nThe block searches for a special tag that indicates the start of a burst. The\nname of this tag is configurable. The tag should indicate the length of the\npacket in samples. Also a multiplier can be specified, which multiples the\nlength given in the tag.\n\n\n\n### Packet Dropper\n\nDrops a configurable percentage of messages. I used it to test protocol logic\nlike ACKs, retransmission and stuff.\n\n\n\n### Periodic Msg Source\n\nThis block sends messages at regular intervals much like the Message Strobe\nblock in mainline GNU Radio. With this block you can also configure the number\nof packets that are sent. When all normal messages are sent, the blocks sends a\nfinal PMT_EOF message to indicate that it is done.\nI used this block for automated performance tests with no-GUI flow graphs.\n\n\n\n### Pad Tagged Stream\n\nPads an incoming tagged stream with 0s to the set buffer size.\nPadding is applied to the tail of the tagged stream.\n\nThis is useful when transmitting packetized data by using a Pluto as SDR.\nThe Pluto does currently not support a partial buffer flush triggered by an incoming tagged stream.\nTherefore this block pads incoming tagged stream to fill the Pluto buffer to enforce an immediate transmission.\n\n\n\n### Installation\n\n```\ngit clone https://github.com/bastibl/gr-foo.git\ncd gr-foo\nmkdir build\ncd build\ncmake ..\nmake\nsudo make install\nsudo ldconfig\n``` \n","funding_links":[],"categories":["GnuRadio Software"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbastibl%2Fgr-foo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbastibl%2Fgr-foo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbastibl%2Fgr-foo/lists"}