{"id":21186641,"url":"https://github.com/geontech/rh_tools","last_synced_at":"2025-03-14T20:18:17.953Z","repository":{"id":146038880,"uuid":"290051553","full_name":"Geontech/rh_tools","owner":"Geontech","description":"Library of Python scripts to record from ports of Redhawk waveforms running of a specified domain.","archived":false,"fork":false,"pushed_at":"2021-07-19T16:25:09.000Z","size":45,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-21T12:48:41.824Z","etag":null,"topics":["debug","redhawk"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Geontech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2020-08-24T22:15:38.000Z","updated_at":"2021-07-19T16:25:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"990db521-cb65-4eb0-a172-2d38ef915da5","html_url":"https://github.com/Geontech/rh_tools","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Frh_tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Frh_tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Frh_tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Frh_tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Geontech","download_url":"https://codeload.github.com/Geontech/rh_tools/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243639557,"owners_count":20323511,"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":["debug","redhawk"],"created_at":"2024-11-20T18:24:55.397Z","updated_at":"2025-03-14T20:18:17.932Z","avatar_url":"https://github.com/Geontech.png","language":"Python","readme":"# rh_tools\n\nThis project houses some convenience function to help analyze and debug scenarios being run in Redhawk SDR framework.\n\n---\n\n## rh_tools.bulkio\n\n### record_waveform (bulkio)\n\nThis will connect output bulkio ports of waveforms to FileSinks.  The file sinks are configured to bluefiles to record information regarding the signal.\n\n---\n\n## rh_tools.domain\n\n### domain_tools\n\nThis module houses some helper functions for finding the following things on a specified domain by name:\n\n* Waveforms\n* Event Channels\n\n---\n\n## rh_tools.message\n\nThis folder houses some modules for either recording or sending message events\n\n### event_channel_to_waveform_forwarding\n\nThis will listen for messages on a given event channel on a given domain.\nIt will then forward messages to a waveform.\n\nOne use case is in the application of waveform you don't own.  Instead of putting the event channel into the waveform, this will allow you to dynamically forward messages observed on the event channel to a given port on the waveform.\n\n### record_waveform (messages)\n\nThis module uses a JSON file to specify the domain and waveform/message output ports to record from.  The recordings are saved through pickle serialization for further analysis.\n\n### send_message\n\nThis module uses a JSON file to specify a message structure.  The message is either sent to a waveform's input message port or to an event channel (or both).  This will allow quickly configuring a message to feed into the system for testing.\n\n## rh_tools.scene\n\n### run_custom\n\nThis uses JSON specification to denote the scene in terms of components, waveforms and connections.\n\n#### Debug\n\nDebug options are available to identify common things of interest at a given port.\n\n| Option | Description |\n| --- | --- |\n| Throughput | Measure the element per second out for a given port |\n| Message Sink | Identify the messages out of a given port |\n\nMessage Sink can be in the following format.  In addition to displaying at runtime, the messages will be saved to the \"output_file.json\" in the \"json\" format.  \"pickle\" is also supported\n\n~~~json\n[\"SourceID\", \"port\", \"output_file.json\", \"json\"]\n~~~\n\n~~~bash\n# convert json to CSV for ease of reviewing in a spreadsheet software\n$ python -m rh_tools.scene.message_helper output_file.json output_file.csv --format json\n~~~","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeontech%2Frh_tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgeontech%2Frh_tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeontech%2Frh_tools/lists"}