{"id":25,"date":"2023-03-25T11:35:51","date_gmt":"2023-03-25T10:35:51","guid":{"rendered":"http:\/\/www.f4jsg.fr\/?p=25"},"modified":"2024-09-14T10:26:31","modified_gmt":"2024-09-14T08:26:31","slug":"decodage-pocsag-avec-ubuntu-via-une-cle-rtl-sdr","status":"publish","type":"post","link":"https:\/\/www.f4jsg.fr\/index.php\/2023\/03\/25\/decodage-pocsag-avec-ubuntu-via-une-cle-rtl-sdr\/","title":{"rendered":"D\u00e9codage pocsag avec ubuntu via une cl\u00e9 RTL-SDR"},"content":{"rendered":"<h3>Caract\u00e9ristique :<\/h3>\n<p><b>POCSAG<\/b><span>\u00a0(<\/span><b>Post Office Code Standardisation Advisory Group<\/b><span>)<\/span><\/p>\n<p><span>\u00a0<\/span><span _mstmutation=\"1\" _msttexthash=\"15569346\" _msthash=\"46\">POCSAG prend en charge la transmission de donn\u00e9es tonales, num\u00e9riques et alphanum\u00e9riques. POCSAG ne peut pas transmettre de donn\u00e9es binaires. POCSAG a trois vitesses, 512\u00a0<\/span><span class=\"mw-lingo-tooltip \" data-hasqtip=\"true\"><span class=\"mw-lingo-tooltip-abbr\" _msttexthash=\"24037\" _msthash=\"47\">BPS<\/span><\/span><span _mstmutation=\"1\" _msttexthash=\"28054\" _msthash=\"48\">, 1200\u00a0<\/span><span class=\"mw-lingo-tooltip \" data-hasqtip=\"true\"><span class=\"mw-lingo-tooltip-abbr\" _msttexthash=\"24037\" _msthash=\"49\">BPS<\/span><\/span><span _mstmutation=\"1\" _msttexthash=\"57616\" _msthash=\"50\">, et 2400\u00a0<\/span><span class=\"mw-lingo-tooltip \" data-hasqtip=\"true\"><span class=\"mw-lingo-tooltip-abbr\" _msttexthash=\"24037\" _msthash=\"51\">BPS<\/span><\/span><\/p>\n<p>Le Pocsag est sur beaucoup de fr\u00e9quences diff\u00e9rentes en France et dans le monde cela diff\u00e8re en fonction des pays.<\/p>\n<h3>Mat\u00e9riel :<\/h3>\n<p>J&#8217;ai opt\u00e9 pour un Raspberry pi 4 avec un r\u00e9cepteur basic RTL-SDR<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/rtl-sdr.jpg?resize=300%2C185&#038;ssl=1\" alt=\"\" width=\"300\" height=\"185\" class=\"size-medium wp-image-27 alignleft\" srcset=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/rtl-sdr.jpg?resize=300%2C185&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/rtl-sdr.jpg?resize=768%2C473&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/rtl-sdr.jpg?w=1024&amp;ssl=1 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/rasp4.jpg?resize=300%2C225&#038;ssl=1\" alt=\"\" width=\"300\" height=\"225\" class=\"alignnone size-medium wp-image-28\" srcset=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/rasp4.jpg?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/rasp4.jpg?w=425&amp;ssl=1 425w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<h3>Logiciel :<\/h3>\n<p>Syst\u00e9me sur le raspberry Ubuntu 18.04.6 LTS<\/p>\n<p>pilote RTL-SDR<\/p>\n<p>GQPRX<\/p>\n<p>Multimon-ng<\/p>\n<h3>Installation :<\/h3>\n<h6>mise \u00e0 jour ubuntu :<\/h6>\n<pre class=\"chroma\" tabindex=\"0\"><code class=\"language-sh\" data-lang=\"sh\">sudo apt-get update\r\nsudo apt-get upgrade\r\nsudo apt-get -y install git cmake build-essential libusb-1.0 libusb-1.0-0-dev qt4-qmake libpulse-dev libx11-dev<\/code><\/pre>\n<h6>installation RTL-SDR :<\/h6>\n<pre class=\"chroma\" tabindex=\"0\"><code class=\"language-sh\" data-lang=\"sh\">git clone git:\/\/git.osmocom.org\/rtl-sdr.git\r\n<span class=\"nb\">cd<\/span>  rtl-sdr\r\nmkdir build\r\n<span class=\"nb\">cd<\/span> build\r\ncmake ..\/ -DINSTALL_UDEV_RULES<span class=\"o\">=<\/span>ON\r\nmake\r\nsudo make install\r\nsudo ldconfig\r\n<span class=\"nb\">cd<\/span> ~\r\nsudo cp .\/rtl-sdr\/rtl-sdr.rules \/etc\/udev\/rules.d\/\r\nsudo reboot<\/code><\/pre>\n<h6>installation GQPRX :<\/h6>\n<pre class=\"chroma\" tabindex=\"0\"><code class=\"language-sh\" data-lang=\"sh\">sudo apt-get update\r\nsudo apt-get install gqrx-sdr<\/code><\/pre>\n<h6>installation Multimon-ng :<\/h6>\n<pre class=\"chroma\" tabindex=\"0\"><code class=\"language-sh\" data-lang=\"sh\">sudo apt-get update\r\nmkdir multimon-ng\r\n<span class=\"nb\">cd<\/span> multimon-ng\r\nmkdir build\r\n<span class=\"nb\">cd<\/span> build\r\nqmake ..\/multimon-ng.pro\r\nmake\r\nsudo make install<\/code><\/pre>\n<p>Voil\u00e0 nous avons tout install\u00e9 sur notre petit Raspberry, il nous reste juste \u00e0 taper une derni\u00e8re commande pour red\u00e9marrer le Raspberry.<\/p>\n<p><code class=\"language-sh\" data-lang=\"sh\">sudo reboot<\/code><\/p>\n<h3>D\u00e9marrage :<\/h3>\n<p>Une fois que votre raspberry est red\u00e9marr\u00e9 nous allons lancer GQRX.<\/p>\n<p>Pour cela il suffit d&#8217;aller dans le menu puis application puis<strong> GQRX<\/strong><\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx.png?resize=750%2C600&#038;ssl=1\" alt=\"\" width=\"750\" height=\"600\" class=\"wp-image-29 aligncenter\" srcset=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx.png?resize=300%2C240&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx.png?resize=1024%2C819&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx.png?resize=768%2C614&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/p>\n<p>Au lancement de GQRX il faut <strong>installer son dongle sdr<\/strong> pour cela nous irons dans <strong>file puis I\/Q input<\/strong> s\u00e9l\u00e9ctionner le device si c&#8217;est une cl\u00e9 rtl sdr il faudra prendre la carte realtek RT.<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/IQq.jpg?resize=349%2C575&#038;ssl=1\" alt=\"\" width=\"349\" height=\"575\" class=\"wp-image-30 aligncenter\" srcset=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/IQq.jpg?resize=182%2C300&amp;ssl=1 182w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/IQq.jpg?w=309&amp;ssl=1 309w\" sizes=\"auto, (max-width: 349px) 100vw, 349px\" \/><\/p>\n<p>Ensuite nous cliquerons sur OK puis nous lancerons GQRX, je vous laisse voir la photo pour les diff\u00e9rents param\u00e8tres.<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx-ligne.jpg?resize=510%2C391&#038;ssl=1\" alt=\"\" width=\"510\" height=\"391\" class=\"wp-image-31 aligncenter\" srcset=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx-ligne.jpg?resize=300%2C230&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx-ligne.jpg?resize=1024%2C785&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx-ligne.jpg?resize=768%2C589&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/gqrx-ligne.jpg?w=1277&amp;ssl=1 1277w\" sizes=\"auto, (max-width: 510px) 100vw, 510px\" \/><\/p>\n<p>Il faudra que l&#8217;on clique sur UDP pour envoyer le streaming.<\/p>\n<h4>Multimon-ng :<\/h4>\n<p>Rien de plus simple nous allons ouvrir une console vierge. Pour cela il suffit d&#8217;aller dans le menu est de lancer la console ou le terminal et ensuite nous faissons un copier coller de ce code:<\/p>\n<pre class=\"chroma\" tabindex=\"0\"><code class=\"language-sh\" data-lang=\"sh\">nc -l -u <span class=\"m\">7355<\/span> <span class=\"p\">|<\/span>     sox -t raw -esigned-integer -b16 -r <span class=\"m\">48000<\/span> - -esigned-integer -b16 -r <span class=\"m\">22050<\/span> -t raw - <span class=\"p\">|<\/span> multimon-ng -t raw -a SCOPE -a POCSAG512 -a POCSAG1200 -a POCSAG2400 -f alpha -<\/code><\/pre>\n<p>Et la commande multimon se met en place et nous pouvons d\u00e9coder les Pocsag .<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/pocsag-decode.jpg?resize=750%2C363&#038;ssl=1\" alt=\"\" width=\"750\" height=\"363\" class=\"wp-image-32 aligncenter\" srcset=\"https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/pocsag-decode.jpg?resize=300%2C145&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/pocsag-decode.jpg?resize=1024%2C496&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/pocsag-decode.jpg?resize=768%2C372&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.f4jsg.fr\/wp-content\/uploads\/2023\/03\/pocsag-decode.jpg?w=1278&amp;ssl=1 1278w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/p>\n<p>Ou bien vers un fichier texte :<\/p>\n<p>rtl_fm -f 173.875M -s 22.05k -p 31 &#8211; | multimon-ng -a POCSAG1200 -f alpha -t raw \/dev\/stdin | while IFS= read -r line; do echo &#8220;$(date &#8216;+%Y-%m-%d %H:%M:%S&#8217;) : $line&#8221;; done | tee -a \/home\/pocsag\/pocsag.txt<\/p>\n<p>&nbsp;<\/p>\n<p>Ceci est mon premiere article sur mon site merci \u00e0 vous de m&#8217;avoir lu.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Caract\u00e9ristique : POCSAG\u00a0(Post Office Code Standardisation Advisory Group) \u00a0POCSAG prend en charge la transmission de donn\u00e9es tonales, num\u00e9riques et alphanum\u00e9riques. POCSAG ne peut pas transmettre de donn\u00e9es binaires. POCSAG a trois vitesses, 512\u00a0BPS, 1200\u00a0BPS, et 2400\u00a0BPS Le Pocsag est sur beaucoup de fr\u00e9quences diff\u00e9rentes en France et dans le monde [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3],"tags":[],"class_list":["post-25","post","type-post","status-publish","format-standard","hentry","category-pocsag"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/posts\/25","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/comments?post=25"}],"version-history":[{"count":6,"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/posts\/25\/revisions"}],"predecessor-version":[{"id":112,"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/posts\/25\/revisions\/112"}],"wp:attachment":[{"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/media?parent=25"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/categories?post=25"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.f4jsg.fr\/index.php\/wp-json\/wp\/v2\/tags?post=25"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}