{"id":39979557,"url":"https://github.com/windytan/darc2json","last_synced_at":"2026-01-18T23:03:43.209Z","repository":{"id":11578010,"uuid":"14067073","full_name":"windytan/darc2json","owner":"windytan","description":"Decoder for DARC subcarriers on FM radio (PoC)","archived":false,"fork":false,"pushed_at":"2025-04-08T17:36:32.000Z","size":448,"stargazers_count":35,"open_issues_count":0,"forks_count":11,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-08T18:33:39.695Z","etag":null,"topics":["darc","json","linux","macos","radio","rtl-sdr"],"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/windytan.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-11-02T14:04:37.000Z","updated_at":"2025-04-08T17:36:25.000Z","dependencies_parsed_at":"2025-04-08T18:37:23.794Z","dependency_job_id":null,"html_url":"https://github.com/windytan/darc2json","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/windytan/darc2json","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windytan%2Fdarc2json","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windytan%2Fdarc2json/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windytan%2Fdarc2json/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windytan%2Fdarc2json/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/windytan","download_url":"https://codeload.github.com/windytan/darc2json/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windytan%2Fdarc2json/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28553055,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T20:59:07.572Z","status":"ssl_error","status_checked_at":"2026-01-18T20:59:02.799Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["darc","json","linux","macos","radio","rtl-sdr"],"created_at":"2026-01-18T23:03:43.146Z","updated_at":"2026-01-18T23:03:43.192Z","avatar_url":"https://github.com/windytan.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# darc2json\n\ndarc2json is a proof-of-concept DARC demodulator for Linux/macOS. It takes an\nFM multiplex signal as input, in raw PCM format, and outputs line-delimited\nJSON messages. It was designed to be used with the RTL-SDR tool `rtl_fm`, but\nit can read any FM multiplex signals.\n\nThe default input sample rate is 228 kHz.\n\n## Supported features\n\ndarc2json can decode:\n\n* L5 Group Data (type 12)\n* Raw Layer 4 LMCh data if type is something else\n* Block application channel: Layer 3 data\n* TDT: Country code, network name, date and time\n\n## Not implemented\n\nA list of things to fix for your own implementation:\n\n* No PLL and symbol synchronization (amazingly, it kind of works)\n* No error correction beyond single bit flips\n* No Fragmented L5\n* No Short message channel\n* No Synchronous Frame Messages\n* No COT, SCOT, AFT, SAFT\n* No Conditional Access at L4\n* Drops block sync at first error\n* Needs more allocation-efficient handling of bitstrings\n* Repeats unchanged service messages\n\n## Installation\n\nYou will need git, a C++17 compiler, the [liquid-dsp][liquid-dsp] library, libsndfile, and meson.\nOn macOS (OSX) you will also need XCode command-line tools (`xcode-select --install`).\n\n1. Clone the repository (unless you downloaded a release zip file):\n\n        $ git clone https://github.com/windytan/darc2json.git\n        $ cd darc2json\n\n2. Compile darc2json:\n\n        $ meson setup build\n        $ cd build\n        $ meson compile\n\n3. Install:\n\n        $ meson install\n\nIt is also simple to later pull the latest updates and recompile:\n\n        $ git pull\n        $ cd build\n        $ meson compile\n        $ meson install\n\n[liquid-dsp]: https://github.com/jgaeddert/liquid-dsp\n\n## Usage\n\nThe simplest way to view DARC messages using `rtl_fm` is:\n\n    rtl_fm -M fm -l 0 -A std -p 0 -s 228k -g 20 -F 9 -f 87.9M | darc2json\n\n### Full usage\n\n```\nradio_command | darc2json [OPTIONS]\n\nBy default, a 228 kHz single-channel 16-bit MPX signal is expected via\nstdin.\n\n-f, --file FILENAME    Use an audio file as MPX input. All formats\n                       readable by libsndfile should work.\n\n-r, --samplerate RATE  Set stdin sample frequency in Hz. Will resample\n                       (slow) if this differs from 228000 Hz.\n\n-t, --timestamp FORMAT Add time of decoding to JSON groups; see\n                       man strftime for formatting options (or\n                       try \"%c\").\n\n-v, --version          Print version string.\n```\n\n## Troubleshooting\n\n### Can't find liquid-dsp on macOS\n\nIf you've installed [liquid-dsp][liquid-dsp] yet `configure` can't find it, it's\npossible that XCode command line tools aren't installed. Run this command to fix\nit:\n\n    xcode-select --install\n\n### Can't find liquid-dsp on Linux\n\nTry running this in the terminal:\n\n    sudo ldconfig\n\n## Licensing\n\nSee [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwindytan%2Fdarc2json","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwindytan%2Fdarc2json","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwindytan%2Fdarc2json/lists"}