{"id":3453,"date":"2013-03-23T19:54:29","date_gmt":"2013-03-23T18:54:29","guid":{"rendered":"http:\/\/pa3ang.nl\/wp\/?p=3453"},"modified":"2020-01-03T15:26:18","modified_gmt":"2020-01-03T14:26:18","slug":"raspberry-pi-internet-radio","status":"publish","type":"post","link":"https:\/\/pa3ang.nl\/wp\/archieven\/3453","title":{"rendered":"Raspberry Pi Internet Radio"},"content":{"rendered":"<h3>Eerste project met een add-on UI print<\/h3>\n<p>Je bent radioman of niet. Dus het eerste project met wat meer voeten in de aarde zou hebben moest een internet radio &#8216;ontvanger&#8217; worden met display en schakelaars. Hiermee kan je hem immers ook stand alone gebruiken. Dus zonder beeldscherm, keyboard of externe pc via SSH of VNC.<\/p>\n<p>Nou ik kan jullie meedelen, het is gelukt!<\/p>\n<p>Al vrij snel kwam ik met googlen <a href=\"http:\/\/bitwizard.nl\/\" target=\"_blank\" rel=\"noopener noreferrer\">BitWizard<\/a> tegen. Deze hobby-isten club (trouwens ook radioamateurs) heeft hele handige, leuke en prijsgunstige producten voor je op de plank liggen, waaronder een <a href=\"http:\/\/www.bitwizard.nl\/catalog\/product_info.php?cPath=34&amp;products_id=115\" target=\"_blank\" rel=\"noopener noreferrer\">SPi User Interface<\/a> opsteek print. Deze unit heeft dezelfde afmetingen als de Raspberry Pi en ik heb hem voorlopig met een extra <a href=\"http:\/\/www.bitwizard.nl\/catalog\/product_info.php?cPath=35&amp;products_id=130\" target=\"_blank\" rel=\"noopener noreferrer\">26 pin long header<\/a> door de behuizing heen gemonteerd.<\/p>\n<table>\n<tbody>\n<tr>\n<td><a href=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699.jpg\" rel=\"shadowbox[sbpost-3453];player=img;\" title=\"Type B RPI met BitWizard UI print\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-3454\" title=\"Type B RPI met BitWizard UI print\" src=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg\" alt=\"\" width=\"300\" height=\"219\" srcset=\"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg 300w, https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/td>\n<td><a href=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15702.jpg\" rel=\"shadowbox[sbpost-3453];player=img;\" title=\"Netwerkkabel aangesloten en UI door behuizing heen.\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-medium wp-image-3455\" title=\"Netwerkkabel aangesloten en UI door behuizing heen.\" src=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15702-300x225.jpg\" alt=\"\" width=\"300\" height=\"225\" srcset=\"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15702-300x225.jpg 300w, https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15702.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>De UI print heeft een\u00a0HD44780 compatble 2 x 16 karaters display en 6 schakelaars. Verder\u00a0zijn alle RPi in en output lijnen beschikbaar op de print. Vandaar de uitstekende printheaders (kunnen we er altijd nog afknippen als we ze niet gaan gebruiken).<\/p>\n<p>Overigens, je moet wel een beetje &#8216;nerd&#8217; zijn om de boel aan de gang te krijgen. Er is wel documentatie beschikbaar, maar je moet de nodige handelingen verrichten om de kaart door de RPi te laten herkennen. Vervolgens moet je git installeren ($ apt-get install git)\u00a0en daarna <a href=\"http:\/\/www.bitwizard.nl\/wiki\/index.php\/Bw_tool\" target=\"_blank\" rel=\"noopener noreferrer\">bw_tool<\/a>.<\/p>\n<p>Nu een paar zaken waar ik tegenaan liep:<\/p>\n<ul>\n<li>In eerste instantie kon ik de kaart in het geheel niet bereiken. Het viel me op dat het display niet mooi de karakters weergaf. De oorzaak bleek uiteindelijk de <strong>voedingspanning<\/strong> te zijn. Je moet er echt op letten om een goede USB&lt;-&gt;micro kabel te gebruiken en dat de 5 volt &#8216;USB&#8217; voeding voldiende stroom kan leveren. Ik gebruik nu een &#8216;auto-sigaretten-aansteker-adapter&#8217; waar 2A op staat die in mijn station voeding van 10A is aangesloten.<\/li>\n<li>Er zijn voorbeelden op internet te vinden die niet werken! Dit komt door een klein verschil op de GPIO bus van de RPi tusen versie 1 en 2 waardoor de adressen (nummer) veranderd zijn.<\/li>\n<li>De aangemaakt \/dev devices verlenen geen rw (read write) rechten aan all. Hierdoor moet je alle bw_tool command&#8217;s met sudo beginnen. (of $ sudo chmod a+rw \/dev\/spi*)<\/li>\n<li>De SPI_UI device naam is niet \/dev\/I2C-0 en \/dev\/I2C-1 maar <strong>\/dev\/spidev0.0<\/strong> en <strong>\/dev\/spidev0.1<\/strong>. Hierdoor werd ik door de diverse voorbeelden ook behoorlijk op het verkeerde been gezet.<\/li>\n<li>Mijn SPI_ rpi_ui 1.3 start op met de tekst A: 94 op de tweede lijn. Dit is dus het adres van het board \/ display en niet 82 zoals in veel voorbeelden.<\/li>\n<\/ul>\n<p>Goed dit wetende kon ik teksten op het display krijgen en vervolgens ook de schakelaars uitlezen. Nu dus op naar een eerste aanzet voor een bedienbare internetradio.<\/p>\n<p>Ik had al een radio script. Dit script wert samen met de xmms2 player. Het installatiescript vind je hier \u00a0(<a href=\"http:\/\/www.dronkert.net\/misc\/radio.html\" target=\"_blank\" rel=\"noopener noreferrer\">www.dronkert.net\/misc\/radio.html<\/a>). \u00a0Volg de instructies en je kunt al aan de slag met ontvangst.<\/p>\n<p>Ik heb hierna het script aangepast om de zenderinformatie op het SPI schermpje te plaatsen. De code van het script <strong>radio<\/strong> ziet er dan als volgt uit:<\/p>\n<blockquote>\n<pre>else\r\n\t\tif [ -f $DBFILE ]; then\r\n\t\t\tcurstation=$(cat $DBFILE | grep --colour=never -m 1 -F \"$curstream\" | grep --colour=never -oP '^\\S+')\r\n\t\t\t<span style=\"color: #ff0000;\"># added lookup real name in DBFILE (pa3ang)\r\n\t\t\tcurname=$(cat $DBFILE | grep --colour=never -A 1 \"$curstream\" | tail -n 1)<\/span>\r\n\t\t\tif [ -z \"$curstation\" ]; then\r\n\t\t\t\tcurstation=\"(station not found)\"\r\n\t\t\tfi\r\n\t\telse\r\n\t\t\tcurstation=\"(station database not found at \\\"$DBFILE\\\")\"\r\n\t\tfi\r\n\tfi\r\n\r\n\techo\r\n\tif [ ! -z \"$curstation\" ]; then\r\n               echo -n \"   Select  : \"\r\n               echo $curstation\r\n \t\techo -n \"   Station : \"\r\n\t\techo $curname\r\n\tfi\r\n\tif [ ! -z \"$curstream\" ]; then\r\n\t\techo -n \"   Stream  : \"\r\n\t\techo $curstream\r\n\tfi\r\n\tif [ ! -z \"$curvolume\" ]; then\r\n\t\techo -n \"   Volume  : \"\r\n\t\techo $curvolume\r\n\tfi\r\n\techo\r\n\r\n        <span style=\"color: #ff0000;\"># Info on SPI display\r\n  \tsudo bw_tool -a 94 -C\r\n\t# Display lines\r\n\t# Goto Pos 0 on Line1\r\n  \tsudo bw_tool -a 94 -r 17 -v 0\r\n  \tsudo bw_tool -a 94 -t $curname\r\n\t# Goto Pos 0 on Line 2\r\n  \tsudo bw_tool -a 94 -r 17 -v 32\r\n  \tsudo bw_tool -a 94 -t \"RPi inet radio\"<\/span>\r\n\r\n\texit $ERR_OK<\/pre>\n<\/blockquote>\n<p>Er zijn nog wel wat meer aanpassingen. De source zal ook nog wel wijzigen. Je kunt hem <a href=\"http:\/\/pa3ang.nl\/rpi\/radio\">hier<\/a> downloaden.<\/p>\n<p>Ook moet de file <strong>.radiodb<\/strong> aangepast worden en wel op elke 2e regel moet de &#8216;echte&#8217; en toonbare naam van het station ingevoerd worden.<\/p>\n<blockquote>\n<pre>10gold  \thttp:\/\/82.201.100.23\/Radio10Gold\r\nRadio 10 Gold\r\npi1utr-rr      \thttp:\/\/relay.radioreference.com:80\/401514669\r\nPI1UTR - DCS007B<\/pre>\n<\/blockquote>\n<p>Ja en toen nog een bediening. Toevallig was zoonlief even thuis. Ja de &#8216;nerd&#8217; die de meest ingewikkelde problemen weet op te lossen. Hij heeft een python script voor me\u00a0geschreven, waarmee ik niet alleen een eenvoudig script heb wat ik verder uit kan breiden, maar ook een start kan maken met Python, de bij de Raspberry Pi &#8216;meegeleverde&#8217;\u00a0programmeertaal.<\/p>\n<p>Het programaatje <strong>inetradio.py<\/strong> ziet er als volgt uit:<\/p>\n<blockquote>\n<pre>from subprocess import *\r\nfrom time import sleep\r\n\r\nprint \"\\nRPi inet radio with BitWizard RPi UI board.\\n\"\r\ncall([\"\/usr\/local\/bin\/radio\", \"on\"])\r\nsleep(1)\r\ncall([\"\/usr\/local\/bin\/radio\"])\r\nbank = 1\r\n\r\nchannel = {\r\n\t\"00001010\": \"bnr\",\r\n\t\"00000808\": \"radio2\",\r\n\t\"00000404\": \"10gold\",\r\n\t\"00000202\": \"radio4\",\r\n\t\"00000101\": \"sky\",\r\n\t\"00003030\": \"pi1utr-rr\",\r\n\t\"00002828\": \"pi3utr-rr\",\r\n\t\"00002424\": \"pi2rtd\",\r\n\t\"00002222\": \"rx320a\"\r\n}\r\ndelay = 0\r\nquit = 0\r\ncounter = 0\r\nwhile not quit:\r\n\toutput = Popen([\"\/usr\/bin\/bw_tool\", \"-a\", \"94\", \"-R\", \"30:i\"], stdout=PIPE).communicate()[0].strip()\r\n\tif output == \"00002121\":\r\n\t\tcall([\"\/usr\/local\/bin\/radio\", \"off\"])\r\n\t\tquit = 1\r\n\tif output in channel:\r\n\t\tcall([\"\/usr\/local\/bin\/radio\", channel[output]])\r\n\t\tsleep(1)\r\n\t\tcall([\"\/usr\/local\/bin\/radio\"])\r\n\t\tcounter = 0\r\n\t\tdelay = 0\r\n\tif output == \"00002020\":\r\n\t\tdelay = delay +1\r\n\tif delay == 100:\r\n\t\tcall([\"\/usr\/local\/bin\/radio\"])\r\n\t\tdelay = 0\r\n\tif counter == 1000:\r\n\t\tcall([\"\/usr\/local\/bin\/radio\"])\r\n\tcounter = counter + 1<\/pre>\n<\/blockquote>\n<p>Ook dit programma zal nog sterk gaan veranderen. De sourcecode kun je\u00a0<a href=\"http:\/\/pa3ang.nl\/rpi\/inetradio.py\">hier<\/a> ophalen.<\/p>\n<blockquote><p>De werking is als volgt:<\/p>\n<ol>\n<li>Bij het starten van inetradio.py wordt de ontvanger aangezet en start hij op het laatst afgestemde station, tenzij het een koude (reboot) start is.<\/li>\n<li>De bediening van de schakelaars is als volgt:\n<ul>\n<li>schakelaar 1 &#8211; shift en bij 2 seconden wordt het display gerefreshed<\/li>\n<li>schakelaar 2 &#8211; preset 1 en preset 6 bij shift gelijktijdig indrukken<\/li>\n<li>schakelaar 3 &#8211; preset 2 en preset 7<\/li>\n<li>schakelaar 4 &#8211; preset 3 en preset 8<\/li>\n<li>schakelaar 5 &#8211; preset 4 en preset 9<\/li>\n<li>schakelaar 6 &#8211; preset 5<\/li>\n<\/ul>\n<\/li>\n<li>Toets 1 en toets 6 gelijktijdig is radio uit en bij radio uit, gaat hij weer aan!<\/li>\n<li>Als je &#8216;handmatig&#8217; van station wisselt met pi@raspberrypi ~ $\u00a0 radio &#8220;zender&#8221; dan kun je door een display refresh (2 sec. schakelaar 1) de stationsnaam in beeld krijgen.<\/li>\n<\/ol>\n<p><span style=\"color: #ff0000;\">LET OP : De <span style=\"text-decoration: underline;\">juiste<\/span> stationsnaam komt alleen in beeld als de stream gevonden en gestart kan worden!<\/span><\/p>\n<p>Als de radio uit staat (maar het inetradio programma draait wel) dan heb je de volgende functies:<\/p>\n<ul>\n<li>schakelaar 2 &#8211; datum en tijd<\/li>\n<li>schakelaar 3 &#8211;<\/li>\n<li>schakelaar 4 &#8211;<\/li>\n<li>schakelaar 5 &#8211;<\/li>\n<li>schakelaar 6 &#8211; inetradio.py programma wordt definitief gestopt<\/li>\n<\/ul>\n<\/blockquote>\n<p>Het geheel draait dus gewoon met Raspbian &#8220;wheezy&#8221;<span style=\"font-size: 26px;\"> <\/span>op een type B versie 2 board. Zoals gezegd zal de programmatuur nog verder verbeteren. Ook is de .radiodb file door mij aangepast. \u00a0Voor de goede order, volg de instructies op de hierboven gelinkte sites. Aanvullende source code welke door mij geschreven is \/ wordt staat hieronder. Misschien wordt het nog wat en komt er gewoon een automatische install van het geheel.<\/p>\n<blockquote><p>bash script <strong>radio<br \/>\n<\/strong><a href=\"http:\/\/pa3ang.nl\/rpi\/radio\">http:\/\/pa3ang.nl\/rpi\/radio<\/a><\/p>\n<p>Python programma \u00a0<strong>inetradio.py<br \/>\n<\/strong><a href=\"http:\/\/pa3ang.nl\/rpi\/inetradio.py\">http:\/\/pa3ang.nl\/rpi\/inetradio.py<\/a><\/p>\n<p>database met stations <strong>.radiodb<br \/>\n<\/strong><a href=\"http:\/\/pa3ang.nl\/rpi\/.radiodb\">http:\/\/pa3ang.nl\/rpi\/.radiodb<\/a><\/p><\/blockquote>\n<p>suc6, PA3ANG<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #ff0000;\">UPDATE\u00a0 (2 april 2013)<br \/>\n<\/span><\/p>\n<p>Nu ook mobiel via een WiFi link en draaiend op een Type A board. Dus minder stroomverbruik door de RPi zelf waardoor power overblijft voor het UI boardje. Nu nog een goede 5 volt accu eraan en je hebt een echte portable internetradio.<\/p>\n<p>Ps: Het blijkt dat deze nano WiFi dongles niet stabiel zijn in de hoge 2,4GHz kanalen. Ik heb omgeschakeld van kanaal 13 naar kanaal 2 en nu werkt het lekker stabiel en ook redelijk goed daar waar de veldsterkte laag is. De WiFi start tijdens het booten zelf op (headless gebruik van de RPi) en verbind met het voorkeursnetwerk.<\/p>\n<p><span style=\"color: #ff0000;\">UPDATE \u00a0(23 april 2013)<\/span><\/p>\n<p>Een nieuwe behuizing en een Type A Raspberry Pi. De behuizing is verkrijgbaar bij mijn vaste <a href=\"http:\/\/raspberrystore.nl\" target=\"_blank\" rel=\"noopener noreferrer\">leverancier<\/a> en is super compact voor deze uitvoering van de RPi.<\/p>\n<table>\n<tbody>\n<tr>\n<td><a href=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15723.jpg\" rel=\"shadowbox[sbpost-3453];player=img;\" title=\"Type A in super platte robuuste behuizing\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-3550\" title=\"Type A in super platte robuuste behuizing\" src=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15723-300x225.jpg\" alt=\"\" width=\"300\" height=\"225\" srcset=\"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15723-300x225.jpg 300w, https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15723.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/td>\n<td><a href=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15735.jpg\" rel=\"shadowbox[sbpost-3453];player=img;\" title=\"Type A met BitWizard RPI interface\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-medium wp-image-3549\" title=\"Type A met BitWizard RPI interface\" src=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15735-300x225.jpg\" alt=\"\" width=\"300\" height=\"225\" srcset=\"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15735-300x225.jpg 300w, https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15735.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Het wordt steeds mooier! Ook wordt er nog druk gesleuteld aan het script dus we zullen eerdaags een update op de website plaatsen.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Eerste project met een add-on UI print Je bent radioman of niet. Dus het eerste project met wat meer voeten in de aarde zou hebben [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[223],"tags":[232,231,230,229,233],"class_list":["post-3453","post","type-post","status-publish","format-standard","hentry","category-rpi","tag-inetradio","tag-internet-radio","tag-python","tag-raspberry-pi","tag-spi"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Raspberry Pi Internet Radio - PA3ANG - Dutch Ham Radio Station - Weblog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/pa3ang.nl\/wp\/archieven\/3453\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Raspberry Pi Internet Radio - PA3ANG - Dutch Ham Radio Station - Weblog\" \/>\n<meta property=\"og:description\" content=\"Eerste project met een add-on UI print Je bent radioman of niet. Dus het eerste project met wat meer voeten in de aarde zou hebben [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/pa3ang.nl\/wp\/archieven\/3453\" \/>\n<meta property=\"og:site_name\" content=\"PA3ANG - Dutch Ham Radio Station - Weblog\" \/>\n<meta property=\"article:published_time\" content=\"2013-03-23T18:54:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-01-03T14:26:18+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg\" \/>\n<meta name=\"author\" content=\"pa3ang\" \/>\n<meta name=\"twitter:label1\" content=\"Geschreven door\" \/>\n\t<meta name=\"twitter:data1\" content=\"pa3ang\" \/>\n\t<meta name=\"twitter:label2\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#article\",\"isPartOf\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453\"},\"author\":{\"name\":\"pa3ang\",\"@id\":\"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383\"},\"headline\":\"Raspberry Pi Internet Radio\",\"datePublished\":\"2013-03-23T18:54:29+00:00\",\"dateModified\":\"2020-01-03T14:26:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453\"},\"wordCount\":1066,\"commentCount\":6,\"publisher\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383\"},\"image\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage\"},\"thumbnailUrl\":\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg\",\"keywords\":[\"inetradio\",\"Internet Radio\",\"Python\",\"Raspberry Pi\",\"SPI\"],\"articleSection\":[\"Raspberry Pi\"],\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453\",\"url\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453\",\"name\":\"Raspberry Pi Internet Radio - PA3ANG - Dutch Ham Radio Station - Weblog\",\"isPartOf\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage\"},\"image\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage\"},\"thumbnailUrl\":\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg\",\"datePublished\":\"2013-03-23T18:54:29+00:00\",\"dateModified\":\"2020-01-03T14:26:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/pa3ang.nl\/wp\/archieven\/3453\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage\",\"url\":\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg\",\"contentUrl\":\"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/pa3ang.nl\/wp\/archieven\/3453#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/pa3ang.nl\/wp\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Raspberry Pi Internet Radio\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/pa3ang.nl\/wp\/#website\",\"url\":\"https:\/\/pa3ang.nl\/wp\/\",\"name\":\"PA3ANG - Dutch Ham Radio Station - Weblog\",\"description\":\"Radiozendamateurisme op het snijvlak van radiotechniek en internet.\",\"publisher\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/pa3ang.nl\/wp\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383\",\"name\":\"pa3ang\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2022\/11\/cropped-cropped-banner2-1-1.png\",\"contentUrl\":\"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2022\/11\/cropped-cropped-banner2-1-1.png\",\"width\":900,\"height\":98,\"caption\":\"pa3ang\"},\"logo\":{\"@id\":\"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/image\/\"},\"sameAs\":[\"http:\/\/pa3ang.nl\"],\"url\":\"https:\/\/pa3ang.nl\/wp\/archieven\/author\/pa3ang\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Raspberry Pi Internet Radio - PA3ANG - Dutch Ham Radio Station - Weblog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/pa3ang.nl\/wp\/archieven\/3453","og_locale":"nl_NL","og_type":"article","og_title":"Raspberry Pi Internet Radio - PA3ANG - Dutch Ham Radio Station - Weblog","og_description":"Eerste project met een add-on UI print Je bent radioman of niet. Dus het eerste project met wat meer voeten in de aarde zou hebben [...]","og_url":"https:\/\/pa3ang.nl\/wp\/archieven\/3453","og_site_name":"PA3ANG - Dutch Ham Radio Station - Weblog","article_published_time":"2013-03-23T18:54:29+00:00","article_modified_time":"2020-01-03T14:26:18+00:00","og_image":[{"url":"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg","type":"","width":"","height":""}],"author":"pa3ang","twitter_misc":{"Geschreven door":"pa3ang","Geschatte leestijd":"7 minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453#article","isPartOf":{"@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453"},"author":{"name":"pa3ang","@id":"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383"},"headline":"Raspberry Pi Internet Radio","datePublished":"2013-03-23T18:54:29+00:00","dateModified":"2020-01-03T14:26:18+00:00","mainEntityOfPage":{"@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453"},"wordCount":1066,"commentCount":6,"publisher":{"@id":"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383"},"image":{"@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage"},"thumbnailUrl":"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg","keywords":["inetradio","Internet Radio","Python","Raspberry Pi","SPI"],"articleSection":["Raspberry Pi"],"inLanguage":"nl-NL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/pa3ang.nl\/wp\/archieven\/3453#respond"]}]},{"@type":"WebPage","@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453","url":"https:\/\/pa3ang.nl\/wp\/archieven\/3453","name":"Raspberry Pi Internet Radio - PA3ANG - Dutch Ham Radio Station - Weblog","isPartOf":{"@id":"https:\/\/pa3ang.nl\/wp\/#website"},"primaryImageOfPage":{"@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage"},"image":{"@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage"},"thumbnailUrl":"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg","datePublished":"2013-03-23T18:54:29+00:00","dateModified":"2020-01-03T14:26:18+00:00","breadcrumb":{"@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/pa3ang.nl\/wp\/archieven\/3453"]}]},{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453#primaryimage","url":"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg","contentUrl":"http:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2013\/03\/SNC15699-300x219.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/pa3ang.nl\/wp\/archieven\/3453#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/pa3ang.nl\/wp\/"},{"@type":"ListItem","position":2,"name":"Raspberry Pi Internet Radio"}]},{"@type":"WebSite","@id":"https:\/\/pa3ang.nl\/wp\/#website","url":"https:\/\/pa3ang.nl\/wp\/","name":"PA3ANG - Dutch Ham Radio Station - Weblog","description":"Radiozendamateurisme op het snijvlak van radiotechniek en internet.","publisher":{"@id":"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/pa3ang.nl\/wp\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"},{"@type":["Person","Organization"],"@id":"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/9eb3d770f1dcf0c764883bd9f99ea383","name":"pa3ang","image":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/image\/","url":"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2022\/11\/cropped-cropped-banner2-1-1.png","contentUrl":"https:\/\/pa3ang.nl\/wp\/wp-content\/uploads\/2022\/11\/cropped-cropped-banner2-1-1.png","width":900,"height":98,"caption":"pa3ang"},"logo":{"@id":"https:\/\/pa3ang.nl\/wp\/#\/schema\/person\/image\/"},"sameAs":["http:\/\/pa3ang.nl"],"url":"https:\/\/pa3ang.nl\/wp\/archieven\/author\/pa3ang"}]}},"_links":{"self":[{"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/posts\/3453","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/comments?post=3453"}],"version-history":[{"count":0,"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/posts\/3453\/revisions"}],"wp:attachment":[{"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/media?parent=3453"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/categories?post=3453"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pa3ang.nl\/wp\/wp-json\/wp\/v2\/tags?post=3453"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}