{"id":442,"date":"2024-07-02T22:12:31","date_gmt":"2024-07-02T22:12:31","guid":{"rendered":"https:\/\/cemaxecuter.com\/?p=442"},"modified":"2025-05-12T01:00:41","modified_gmt":"2025-05-12T01:00:41","slug":"june-24th-to-june-30th-parsing-remoteid-output-and-exploring-neumodvb","status":"publish","type":"post","link":"https:\/\/cemaxecuter.com\/?p=442","title":{"rendered":"June 24th to June 30th, 2024 &#8211; Parsing RemoteID Output and Exploring NeumoDVB"},"content":{"rendered":"\n<p>This week in DragonOS&#8230;<\/p>\n\n\n\n<p><a href=\"https:\/\/cemaxecuter.com\/?p=442#highlight-of-the-week\" data-type=\"link\" data-id=\"https:\/\/cemaxecuter.com\/&amp;post=435#highlight-of-the-week\">Highlight of the Week: RemoteID JSON Decoding&#8230;<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/cemaxecuter.com\/?p=442#exploring-dvb\" data-type=\"link\" data-id=\"https:\/\/cemaxecuter.com\/?p=442#exploring-dvb\">Exploring DVB with NeumoDVB&#8230;<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/cemaxecuter.com\/?p=442#explore-more-with-dragonos\" data-type=\"link\" data-id=\"https:\/\/cemaxecuter.com\/?p=435\">Explore More with DragonOS&#8230;<\/a><\/p>\n\n\n<div class=\"wp-block-jetpack-subscriptions__supports-newline wp-block-jetpack-subscriptions\">\n\t\t<div>\n\t\t\t<div>\n\t\t\t\t<div>\n\t\t\t\t\t<p >\n\t\t\t\t\t\t<a href=\"https:\/\/cemaxecuter.com\/?post_type=post&#038;p=442\" style=\"font-size: 16px;padding: 15px 23px 15px 23px;margin: 0; margin-left: 10px;border-radius: 0px;border-width: 1px; background-color: #113AF5; color: #FFFFFF; text-decoration: none; white-space: nowrap; margin-left: 0\">Subscribe<\/a>\n\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"highlight-of-the-week\">Highlight of the Week: RemoteID JSON Decoding<\/h2>\n\n\n\n<div class=\"wp-block-jetpack-markdown\"><p>RemoteID continues to be a hot topic. Following <a href=\"https:\/\/cemaxecuter.com\/?p=320#highlight-of-the-week\">DragonOS initial support for RemoteID<\/a>, <a href=\"https:\/\/cemaxecuter.com\/?p=359#expanding-drone-detection-coverage-area\">extending the range at which RemoteID packets were detected<\/a>, and <a href=\"https:\/\/cemaxecuter.com\/?p=391#dragontooth-addition-to-the-wardragon\">the addition of the DragonTooth to the WarDragon<\/a>, this week it is now possible to parse the JSON output of RemoteID packets.<\/p>\n<p>Previously, the setup for RemoteID involved Sniffle decoding the BlueTooth packets, followed by a Wireshark dissector that would enable users to breakdown the contents of the packet in Wireshark. Cemaxecuter tweaked this process to instead go from Sniffle decoded BlueTooth directly to Tshark which prints JSON data in real time to <code>stdout<\/code>. The key advantage to this approach that the JSON data can be leveraged in a custom application to parse information that you care about. Watch Cemaxecuter walk through the steps you need to take in order to replicate this flow &#8211; you don\u2019t even need to have a RemoteID transmitter because there is a packet you can test on in the <a href=\"https:\/\/github.com\/sultanqasim\/wireshark-dissector\">wireshark dissector repo<\/a>.<\/p>\n<\/div>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class='embed-container'><iframe loading=\"lazy\" title=\"DragonOS FocalX Updates to Real-time Decoding Drone Remote ID BT5 LR (Sniffle)\" width=\"1920\" height=\"1080\" src=\"https:\/\/www.youtube.com\/embed\/t3jVN2KrAtU?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div>\n<\/div><\/figure>\n\n\n\n<div class=\"wp-block-jetpack-markdown\"><p>You can use the script below to test this on your WarDragon, DragonTooth, or custom instance of DragonOS. If you just want to test with a pre-captured packet, you can omit the second and third lines &#8211; just make sure to specify the correct path to your packet capture in the first line.<\/p>\n<\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>$ pcap_path='\/tmp\/pcap_fifo'  #replace with anything, including a precaptured pcap\n$ mkfifo $pcap_path  #for live capture\n$ .\/sniff_receiver.py -l -e -o $pcap_path  #for live capture, from Sniffle\/python_cli\n$ tshark -r $pcap_path -X lua_script:opendroneid-dissector.lua -T json  #from wireshark-dissector repo<\/code><\/pre>\n\n\n\n<div class=\"wp-block-jetpack-markdown\"><p>Do you have an interesting idea for what you might be able to do with this JSON data? Let us know! It seems the FAA is using this information to enforce drone flight restrictions in sensitive areas. It is hard to determine the authenticity of this letter, but nonetheless, it is not a good idea to violate FAA flight restrictions: <a href=\"https:\/\/www.reddit.com\/r\/drones\/comments\/1dnkaof\/the_faa_sent_me_a_letter_today\/\">https:\/\/www.reddit.com\/r\/drones\/comments\/1dnkaof\/the_faa_sent_me_a_letter_today\/<\/a>. If you are a drone pilot and want to ensure that you are operating within the FAA\u2019s guidelines, you can use the <a href=\"https:\/\/www.faa.gov\/uas\/getting_started\/b4ufly\">FAA\u2019s B4UFLY service<\/a> or any of the other supported flight restriction notification services, such as <a href=\"https:\/\/www.uasidekick.app\/\">UASSidekick<\/a>. With the Fourth of July holiday just days away, make sure you are practicing good drone safety!<\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"exploring-dvb\">Exploring DVB with NeumoDVB<\/h2>\n\n\n\n<div class=\"wp-block-jetpack-markdown\"><p>Last week, <a href=\"https:\/\/cemaxecuter.com\/?p=435#highlight-of-the-week\">the blog covered the various updates to DragonOS<\/a> but also briefly mentioned the addition of one new tool: <a href=\"https:\/\/github.com\/deeptho\/neumodvb\">NeumoDVB<\/a>. According to Artemis, Digital Video Broadcasting Terrestrial (DVB-T), is \u201ca digital broadcast television format used in Europe and in many other countries in the world.\u201d In addition to DVB-T, there is also DVB-C (cable), DVB-H (handheld\/mobile), DVB-T2 (terrestrial version 2), DVB-S (satellite), and DVB-S2 (satellite version 2).<\/p>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"699\" src=\"https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/dvb-1024x699.jpg\" alt=\"\" class=\"wp-image-450\" srcset=\"https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/dvb-1024x699.jpg 1024w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/dvb-300x205.jpg 300w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/dvb-768x524.jpg 768w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/dvb-600x409.jpg 600w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/dvb.jpg 1379w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-jetpack-markdown\"><p>NeumoDVB interfaces with DVB tuners that are based on ST Microelectronics STID135-WB (discontinued) or STV091X, Texas Instruments\u2019 TAS2110, or Silicon Labs\u2019 SI2183. According to the NeumoDVB GitHub, some compatible cards are as follows:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.tbsdtv.com\/products\/tbs6909-x-dvb-s-s2-s2x-octa-tuner-pcie-card.html\">TBS6909-X<\/a> ~$469<\/li>\n<li><a href=\"https:\/\/www.tbsdtv.com\/products\/tbs6903-x-professional-dvb-s2x-dual-tuner-pcie-card.html\">TBS6903<\/a> ~$359<\/li>\n<li><a href=\"https:\/\/www.tbsdtv.com\/products\/tbs5927-dvb-s2-tv-tuner-usb.html\">TBS5927<\/a> ~$229<\/li>\n<li><a href=\"https:\/\/www.tbsdtv.com\/products\/tbs5990-dvb-s2-ci-tv-tuner-usb.html\">TBS5990<\/a> This product no longer seems to be available. $159 for the successor, TBS5580.<\/li>\n<li><a href=\"https:\/\/www.tbsdtv.com\/products\/tbs6504-multi-standard-quad-tuner-pcie-card.html\">TBS6504<\/a> $349<\/li>\n<li><a href=\"https:\/\/www.tbsdtv.com\/products\/tbs5580-multi-standard-universal-tv-tuner-ci-usb-box.html\">TBS5580<\/a> successor to the TBS5990, $159<\/li>\n<\/ul>\n<p><a href=\"https:\/\/www.youtube.com\/@RobVK8FOES\">Rob VK8FOES on YouTube<\/a> managed to have a tuner that was compatible with NeumoDVB and was able to verify that the process works on DragonOS. Here is a screenshot from Rob\u2019s system.<\/p>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"607\" src=\"https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/signal-2024-07-02-05-24-59-989-1024x607.jpg\" alt=\"\" class=\"wp-image-451\" srcset=\"https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/signal-2024-07-02-05-24-59-989-1024x607.jpg 1024w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/signal-2024-07-02-05-24-59-989-300x178.jpg 300w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/signal-2024-07-02-05-24-59-989-768x455.jpg 768w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/signal-2024-07-02-05-24-59-989-600x356.jpg 600w, https:\/\/cemaxecuter.com\/wp-content\/uploads\/2024\/07\/signal-2024-07-02-05-24-59-989.jpg 1404w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-jetpack-markdown\"><p>You can read the following instructions for how to install on DragonOS. The instructions were verified to work on the WarDragon as well: <a href=\"https:\/\/github.com\/alphafox02\/neumodvb\/blob\/master\/docs\/INSTALL.md\">https:\/\/github.com\/alphafox02\/neumodvb\/blob\/master\/docs\/INSTALL.md<\/a>.<\/p>\n<p>As a bit of interesting history, the RTL-SDR is based on the RTL2382U chip which was originally a DVB-T tuner. You can read more about its history here: <a href=\"https:\/\/www.rtl-sdr.com\/about-rtl-sdr\/\">https:\/\/www.rtl-sdr.com\/about-rtl-sdr\/<\/a>. Unfortunately, tuners from common SDRs such as the RTL-SDR (Rafael Micro\u2019s RTL2382U), AirSpy (Rafael Micro\u2019s R820T2), SDRPlay (Mirics\u2019 MSI2500) are not directly compatible with NeumoDVB. Where SDRs aim to deliver a variety of software applications, DVB included, the tuners compatible with NeumoDVB listed above are built for DVB applications only. You might want a standalone tuner if you are very dedicated to DVB applications and want the service support that a company like TBS could provide in the case of misconfigurations. If you are interested in exploring DVB with a SDR, this is possible through software installed on DragonOS like <a href=\"https:\/\/www.youtube.com\/watch?v=gXdG60opnn0\">SDRAngel<\/a>, LeanSDR, <a href=\"https:\/\/www.youtube.com\/watch?v=gXdG60opnn0\">GNU Radio Core Blocks<\/a>, or SatDump and on other 3rd party software such as <a href=\"https:\/\/github.com\/igorauad\/gr-dvbs2rx\">gr-dvbs2rx<\/a>, <a href=\"https:\/\/github.com\/drmpeg\/gr-dvbgse\">gr-dvbgse<\/a>, or <a href=\"https:\/\/github.com\/daniestevez\/dvb-gse\/\">dvb-gse<\/a>.<\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"explore-more-with-dragonos\">Explore More with DragonOS&#8230;<\/h2>\n\n\n\n<div class=\"wp-block-jetpack-markdown\"><ul>\n<li>DragonOS Source for x86_64 systems: <a href=\"https:\/\/sourceforge.net\/projects\/dragonos-focal\/\">https:\/\/sourceforge.net\/projects\/dragonos-focal\/<\/a>\n<ul>\n<li>Download the latest release of DragonOS for x86_64 systems, ask for support, and read about the history of DragonOS.<\/li>\n<\/ul>\n<\/li>\n<li>DragonOS Source for Pi64 systems: <a href=\"https:\/\/sourceforge.net\/projects\/dragonos-pi64\/\">https:\/\/sourceforge.net\/projects\/dragonos-pi64\/<\/a>\n<ul>\n<li>Download the latest release of DragonOS for Pi64 systems, ask for support, and read about the history of DragonOS.<\/li>\n<\/ul>\n<\/li>\n<li>Cemaxecuter on YouTube: <a href=\"https:\/\/www.youtube.com\/channel\/UC9U2kaqhE716J2WNSTcOghg\">https:\/\/www.youtube.com\/channel\/UC9U2kaqhE716J2WNSTcOghg<\/a>\n<ul>\n<li>Follow along with Cemaxecuter himself as he walks you through how to use specific SDR tools within DragonOS and explains why they are valuable.<\/li>\n<\/ul>\n<\/li>\n<li>DragonOS Discord Channel: <a href=\"https:\/\/discord.com\/invite\/cYuS3E3k\">https:\/\/discord.com\/invite\/cYuS3E3k<\/a>\n<ul>\n<li>Join the community of DragonOS users to share your work, ask for help, or lurk for content<\/li>\n<\/ul>\n<\/li>\n<li>Cemaxecuter on X: <a href=\"https:\/\/x.com\/cemaxecuter\">https:\/\/x.com\/cemaxecuter<\/a>\n<ul>\n<li>Recent updates from the creator of DragonOS<\/li>\n<\/ul>\n<\/li>\n<li>DragonOS Patreon: <a href=\"https:\/\/www.patreon.com\/cemaxecuter\">https:\/\/www.patreon.com\/cemaxecuter<\/a>\n<ul>\n<li>100% of contributions fund advanced features, videos, and hardware. As a thank you, Cemaxecuter will ask for your feedback on experimental features.<\/li>\n<\/ul>\n<\/li>\n<li>For collaboration please contact cemaxecuter directly at cemaxecuter@protonmail.com<\/li>\n<\/ul>\n<\/div>\n\n\n<div class=\"wp-block-jetpack-subscriptions__supports-newline wp-block-jetpack-subscriptions\">\n\t\t<div>\n\t\t\t<div>\n\t\t\t\t<div>\n\t\t\t\t\t<p >\n\t\t\t\t\t\t<a href=\"https:\/\/cemaxecuter.com\/?post_type=post&#038;p=442\" style=\"font-size: 16px;padding: 15px 23px 15px 23px;margin: 0; margin-left: 10px;border-radius: 0px;border-width: 1px; background-color: #113AF5; color: #FFFFFF; text-decoration: none; white-space: nowrap; margin-left: 0\">Subscribe<\/a>\n\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>This week in DragonOS&#8230; Highlight of the Week: RemoteID JSON Decoding&#8230; Exploring DVB with NeumoDVB&#8230; Explore More with DragonOS&#8230; Highlight of the Week: RemoteID JSON Decoding Exploring DVB with NeumoDVB Explore More with DragonOS&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-442","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=\/wp\/v2\/posts\/442","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=442"}],"version-history":[{"count":4,"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=\/wp\/v2\/posts\/442\/revisions"}],"predecessor-version":[{"id":461,"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=\/wp\/v2\/posts\/442\/revisions\/461"}],"wp:attachment":[{"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=442"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=442"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cemaxecuter.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=442"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}