Zonnepanelen ellende

Hoe zonniger  buiten, hoe meer storing binnen.

Ja, vroeger stond de buurman aan de deur en deelde mee: ‘JE ZENDER STOORT‘. Nu kan ik naar de buurman gaan en zeggen: ‘JE ZONNEPANEEL STOORT‘!

Helaas, helaas. Het was me natuurlijk al opgevallen dat de laatste jaren de storing op mijn RX320 op onlinereceivers.net alleen maar toenam. De loopantenne op het dakterras gaf vooral overdag een slechte ontvangst en laat op de avond verbeterde het aanmerkelijk en was het nachtuilennet wel weer goed te volgen. Ach ja het zullen wel schakelende voedingen zijn of oude pc-ees. Voorlopig laten we het maar zo.

Maar omdat het aantal gebruikers afnam op de RX320 (en de lol er een beetje af is) heb ik de ontvanger nu definitief ontmanteld. Hierdoor verdween in mijn shack ook weer de nodige storing (carriers op 2 meter) want elk systeem (pc, audiokaart, polling software of wat dan ook) in de shack veroorzaakt wel ongewenste storing op gevoelige apparatuur zoals ontvangers en dus werd mijn spectrum weer wat schoner.

De ontvanger waar ik het meeste gebruik van maakt is de Afedri SDR ontvanger. Kijkradio noem ik het wel eens en inderdaad kun je bijvoorbeeld mooi de hele 40 meter band in één blik zien. Verder komt het de laatste tijd nogal eens voor dat ik overdag thuis ben en mooi op de achtergrond naar 7077 kHz luister. En wat viel op…. als de zon schijnt meer storing en bij grijs en grauw weer een prima ongestoorde ontvangst.

Nou had ik de storing onlangs al toegeschreven aan de Powerline Internetverbinding van mijn ene buurman, maar het zijn dus de zonnepanelen van de andere buurman(en). (more…)

ALA1530S+ en onlinereceivers.net

De WL1030 vervangen door een ‘state of the art’ loop

Lange tijd hebben we een WL1030 loop antenne in gebruik gehad op de RX320D online receiver. Dit ontwerp van mijn zwager heeft altijd op het dakterras gestaan, maar ik merkte de laatste tijd gebreken, een afname van de ontvangst en helaas een toename van HF storing. Tijd dus om iets nieuws te gaan proberen.

ALA1530S+ imperium

Omdat ik nogal gecharmeerd ben het loop ontwerp, heb ik op de site van Wellbrook een nieuw high-end model uitgezocht. Ik heb nog wel overwogen of ik niet de goedkopere Mini-Whip van PA0RDT zou moeten gaan plaatsen, maar ik wilde op save gaan. Bij de Mini-Whip kan een goede aarde nog wel eens nodig zijn, terwijl bij de loop je een symmetrisch ontvangst systeem hebt. Verder heeft Wellbrook zijn sporen ondertussen verdient.

Nou, dat valt inderdaad niet tegen. Het verschil met de WL1030 is dag en nacht. De ontvangst over het gehele spectrum en vooral 160 meter en de LF band (NDB bakens) is stukken beter. Ik hoor stations die ik tot nu toe nog nooit hoorde en ook op 472 kHz luister ik nu regelmatig.
De ALA1530S+ staat via een splitter op de Afedri SDR-Net ontvanger aangesloten en op de onlinereceiver.net RX320D. Ja, ik heb de RX320D dus weer operationeel gemaakt. De oorspronkelijke asus laptop met Windows XP is nu voorzien van Linux Mint en draait een volledige webserver, icecast, darkice en RX320 controller. Voorlopig gaan we dus weer gewoon door met de 24/7 activiteit. Het domein onlinereceivers.net verwijst tegenwoordig nog door naar twee RX320D ontvangers die allebei op een locale server draaien, dus geheel onafhankelijk van elkaar. De ontvanger in de staat New York (in Rochester) en die bij mij thuis dus.

Overigens heb ik de asus server al weer vervangen door een Raspberry Pi met extern USB soundkaartje en een USB<>RS232 convertor. Op de RPi type B draait nu de volledige configuratie zoals ook op de asus het geval was maar zonder draaiende HD en met minimaal stroomverbruik. De server in Rochester is trouwens ook een Raspberry Pi!  stand: 01-08-2014  🙂 

Nieuw (niet helemaal) is een WeatherCam. Deze RaspberryPi camera staat op de 3e verdieping achter het raam en kijkt naar het noorden. Ik heb er al eens een blogje over geschreven. De webcam neemt elke minuut een snapshot en een vaste Italiaanse bezoeker maakt er elke dag een filmpje van 🙂 .

 

RTLSDR op onlinereceivers.net

Definitieve doorstart van onlinereceivers.net?

Als test is er een nieuwe afstembare ontvanger operationeel op http://pa3ang-rpi.nl/onlinereceivers/rtlsdr.php. Het is een RTL2832u dongle (de nieuwste dus van $10 :)) welke aan een Raspberry Pi verbonden is via een gevoede USB 2.0 hub.

In feite heb ik alles al beschreven in deze blog http://pa3ang.nl/wp/archives/3559, alleen heb ik nu op de RPi een extra soundkaart aangesloten en met darkice wordt het gedemoduleerde signaal op internet aangeboden. Ook is een extra python controller programmaatje geschreven (dit keer niet door zoonlief maar zelf gedaan :)) zodat de RTL afgestemd kan worden.

Ondanks dat de nabuurkanaalselectiviteit (nog) niet optimaal is, kun je er best goed gebruik van maken om frequenties te monitoren.

We hebben dus nu een SDR gebaseerde breedbandontvanger met een Raspberry Pi en dat alles op een webserver die ook op een Raspberry Pi draait. O ja er staan dus nu twee RPi-en op de plank. Een zwarte en een rode . Zwart is voor de RX320 besturing, de webserver, icecast2 en darkice stream nr 1 (RX320). Rood is voor de RTL2832u besturing, demodulatieprogramma (rtl_fm) en darkice stream nr2. Beetje rustig laten draaien en zelf niet met teveel RF in de lucht komen.

Mooie bende die kabels, maar ach het is op een plank onder het bureau dus je hebt er veder geen last van. O ja het bromt, blaast of trilt niet. All solid state!

 

Doorstart onlinereceivers.net !?

Compleet op een Raspberry Pi geïnstalleerde RX320D server.

Gedurende de jaren dat ik mijn PCR100, RX320D, FT-817 en soms een extra audio stream op internet aanbood werd daarvoor een laptop gebruikt. Eerst een oude IBM Thinkpad 390 (P2/450MHz), daarna een Asus S1300 (P3/1000MHz) en beide draaiden op Windows. Het stroomverbruik was niet extreem hoog en zeker niet in vergelijk met een Desktop, maar ik had wel steeds 3 wensen. Eigenlijk wilde ik op Linux omschakelen en ook wilde ik geen draaiende (en dus geluidmakende, hoe zacht ook) delen meer in de server hebben en een zo laag mogelijk stroomverbruik.

Tja, en dan dient de Raspberry Pi zich aan. Een Linux systeem dat vergelijkbaar is met een P2, 300Mhz, maar qua architectuur en opbouw wel eens best goed zou kunnen performen als een RX320D server. Misschien dan wel niet 2 of 3 ontvangers en bijbehorende audiostream tegelijk, maar dat is toch niet meer van belang, want op VHF/UHF is weinig meer te beleven, de PCR100 is niet meer te gebruiken en mijn extra audiostreams zijn vaak niet 24/7 dus kunnen ook wel door een andere pc gestreamed worden.

Maar hoe ga je te werk, wat is er allemaal nodig? Na enig speurwerk met de bekende google machine blijkt er een lichtgewicht webserver te bestaan genaamd lighttpd. Hierop kun je tevens php5 en mysql installeren. Dus zo gezegd zo gedaan. Wat testen en experimenteren en vervolgens de code van onlinereceivers.net testen op de nieuwe RPi omgeving. Speciaal een domein aangevraagd http://pa3ang-rpi.nl en ja hoor het werkt. Goede performance en de RPi geeft geen krimp. Vervolgens icecast2 installeren. Ook geen probleem. Dat gaat allemaal lekker makkelijk met de sudo apt-get install commando’s overigens. Ik ga mooi niet vertellen hier hoe je alles moet doen. Google maar en als je een beetje gezond verstand hebt kom je al een heel eind. Alleen de moeilijke zaken zal ik in dit blog belichten.

Ondertussen ziet onlinereceivers.net (of eigenlijk pa3ang-rpi.nl) er zo uit:

Een lichtgewicht layout op een micro server. Zoals je ziet een nieuwe player. Dit is een Flash player met minder dan 2 seconden vertraging. Hij werkt vooralsnog niet op Internet Explorer, maar tja wie gebruikt die Microsoft meuk nog. Op FF en Chrome en ja ja op mijn Samsung Tab2 10.1 Android werkt het voortreffelijk. Dat laatste was een vereiste en daarom is de nieuwe layout ook passend op het Samsung scherm en heeft de pagina weinig overhead (lees pictures en java scripts) voor mobiel gebruik. Ook is de shoutbox groter geworden. Er komt nog wat betere navigatie, want je kunt ook naar de RX320D ontvanger in New York en naar een pagina met vaste repeater streams surfen / luisteren.

Okay terug naar de RPi installatie.

De webserver werkt, icecast2 was een ‘piece of cake’ en voor onderhoud van de mysql database heb ik phpmyadmin adminer geïnstalleerd. Verder webalizer voor de site statistiek en nog wat Linux tooltjes (o.a. chkconfig). Maar nu moet ik nog een goede audio encoder hebben die werkt met een USB soundkaart en de RX320D controller die op java draait en praat met een USB<>RS232 convertor.

Allereerst java….. even zoeken om vervolgens gewoon met apt-get install de laatste java-7 versie te installeren. Ik heb een 16GB SD card en die heb je ook wel nodig met al dat ‘geïnstalleer’. Ergens halverwege zul je met raspi-config het commando expand rootfs moeten uitvoeren om weer voldoende ruimte te hebben voor alle software. Vervolgens met een beetje hulp van zoonlief de RX320D controllersoftware uitgepakt en tenslotte, om via de USB<>RS232 poort te communiceren, de library libRXTX-java geïnstalleerd. Hierna kon ik met de ontvanger praten en zoals ik dat vaker doe, weer live testen uitgevoerd met gebruikers. Tot nu gaat het goed. De laatste hobbel is de stream encoder.

Ik had namelijk al wat getest met Darkice. Dit is een Linux programma dat mp3 gecodeerde live audio kan streamen. Hiervoor moet je wel een lame library hebben. Dus weer googlen en ook dat varkentje gewassen. Echter, de RPi gaat door de knieën. Te zwaar?  De CPU loopt naar 98% en niks gaat meer. Echter… lang verhaal kort…. ik heb de configuratie van Darkice als volgt:

[general]
duration=0
bufferSecs=10
reconnect=yes

[input]
device=plughw:1,0
sampleRate=11025
bitsPerSample=16
channel=1

[icecast2-0]
format=mp3
bitrateMode=cbr
bitrate=16
#quality=0.4
server=localhost
mountPoint=rx320
port=8000
name=RX320D Zwolle – Netherlands
description=Tunable HF receiver
url=http://pa3ang-rpi.nl/onlinereceivers/rx320a.php
genre=Talk
public=yes

Hiermee heb je een goed verstaanbare stream waarbij de cpu belasting slecht 10% is! O ja… je moet misschien nog een alsa-mixer installeren om de USB Audiokaart te kunnen beïnvloeden. Hier een top beeldje van de belasting.

Kortom het is gelukt. Een Raspberry Pi, type B + gevoede USB hub + USB<>RS232 + USB Audio. De RPi wordt overigens ook gevoed vanuit de USB hub. Nog een paar foto’s van onder de tafel waar de opstelling te vinden is.

Wel een beetje rommelig, maar de verschillende onderdelen zijn goed te zien. De RPi, USB hub met USB audio en RS232. Op de andere foto zie je de RX320 met bovenop een coax splitter om de WL1030 loop antenne ook op mijn eigen set (Rx antenne ingang) te gebruiken en het kastje op de plank is de voeding voor de WL1030 loop.

Ondertussen (mei 2013) de boel een beetje gefatsoeneerd. Alleen op 20 meter (en hoog vermogen) gaat de RX232<>USB convertor nog plat.

Ik ben we wel blij mee. Geen tikkende harddisk meer en slechts 4 Watt energieverbruik. Maximaal gebruik van de nieuwe ARM processor technologie en ook nog eens  ecologisch verantwoord. Ik ga er denk ik een groene stikker op plakken.

UPDATE (30 maart 2013)

Tom, mijn in Linux denkende zoon, heeft mooi ingespeeld op de ‘voorkeur programmeertaal’ voor de RPi, namelijk Python en heeft de RX320 controller / server herschreven. Hierdoor is de cpu belasting teruggegaan van 12% naar minder dan 2%. Vermoedelijk omdat de RXTX-library nogal belastend de RS232 poort afvraagt. Hij heeft er een eigen blog over geschreven dat je hier kunt lezen.  Het top plaatje ziet er nu zo uit.

Zo verbruiken we nog minder stroom en wordt de ARM processor ook minder warm, wat ook weer voordeel biedt voor de levensduur etc. etc.

 

Raspberry Pi Internet Radio

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 moest een internet radio ‘ontvanger’ 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.

Nou ik kan jullie meedelen, het is gelukt!

Al vrij snel kwam ik met googlen BitWizard tegen. Deze hobby-isten club (trouwens ook radioamateurs) heeft hele handige, leuke en prijsgunstige producten voor je op de plank liggen, waaronder een SPi User Interface opsteek print. Deze unit heeft dezelfde afmetingen als de Raspberry Pi en ik heb hem voorlopig met een extra 26 pin long header door de behuizing heen gemonteerd.

De UI print heeft een HD44780 compatble 2 x 16 karaters display en 6 schakelaars. Verder zijn 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).

Overigens, je moet wel een beetje ‘nerd’ 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) en daarna bw_tool.

Nu een paar zaken waar ik tegenaan liep:

  • 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 voedingspanning te zijn. Je moet er echt op letten om een goede USB<->micro kabel te gebruiken en dat de 5 volt ‘USB’ voeding voldiende stroom kan leveren. Ik gebruik nu een ‘auto-sigaretten-aansteker-adapter’ waar 2A op staat die in mijn station voeding van 10A is aangesloten.
  • 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.
  • De aangemaakt /dev devices verlenen geen rw (read write) rechten aan all. Hierdoor moet je alle bw_tool command’s met sudo beginnen. (of $ sudo chmod a+rw /dev/spi*)
  • De SPI_UI device naam is niet /dev/I2C-0 en /dev/I2C-1 maar /dev/spidev0.0 en /dev/spidev0.1. Hierdoor werd ik door de diverse voorbeelden ook behoorlijk op het verkeerde been gezet.
  • 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.

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.

Ik had al een radio script. Dit script wert samen met de xmms2 player. Het installatiescript vind je hier  (www.dronkert.net/misc/radio.html).  Volg de instructies en je kunt al aan de slag met ontvangst.

Ik heb hierna het script aangepast om de zenderinformatie op het SPI schermpje te plaatsen. De code van het script radio ziet er dan als volgt uit:

else
		if [ -f $DBFILE ]; then
			curstation=$(cat $DBFILE | grep --colour=never -m 1 -F "$curstream" | grep --colour=never -oP '^\S+')
			# added lookup real name in DBFILE (pa3ang)
			curname=$(cat $DBFILE | grep --colour=never -A 1 "$curstream" | tail -n 1)
			if [ -z "$curstation" ]; then
				curstation="(station not found)"
			fi
		else
			curstation="(station database not found at \"$DBFILE\")"
		fi
	fi

	echo
	if [ ! -z "$curstation" ]; then
               echo -n "   Select  : "
               echo $curstation
 		echo -n "   Station : "
		echo $curname
	fi
	if [ ! -z "$curstream" ]; then
		echo -n "   Stream  : "
		echo $curstream
	fi
	if [ ! -z "$curvolume" ]; then
		echo -n "   Volume  : "
		echo $curvolume
	fi
	echo

        # Info on SPI display
  	sudo bw_tool -a 94 -C
	# Display lines
	# Goto Pos 0 on Line1
  	sudo bw_tool -a 94 -r 17 -v 0
  	sudo bw_tool -a 94 -t $curname
	# Goto Pos 0 on Line 2
  	sudo bw_tool -a 94 -r 17 -v 32
  	sudo bw_tool -a 94 -t "RPi inet radio"

	exit $ERR_OK

Er zijn nog wel wat meer aanpassingen. De source zal ook nog wel wijzigen. Je kunt hem hier downloaden.

Ook moet de file .radiodb aangepast worden en wel op elke 2e regel moet de ‘echte’ en toonbare naam van het station ingevoerd worden.

10gold  	http://82.201.100.23/Radio10Gold
Radio 10 Gold
pi1utr-rr      	http://relay.radioreference.com:80/401514669
PI1UTR - DCS007B

Ja en toen nog een bediening. Toevallig was zoonlief even thuis. Ja de ‘nerd’ die de meest ingewikkelde problemen weet op te lossen. Hij heeft een python script voor me geschreven, 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 ‘meegeleverde’ programmeertaal.

Het programaatje inetradio.py ziet er als volgt uit:

from subprocess import *
from time import sleep

print "\nRPi inet radio with BitWizard RPi UI board.\n"
call(["/usr/local/bin/radio", "on"])
sleep(1)
call(["/usr/local/bin/radio"])
bank = 1

channel = {
	"00001010": "bnr",
	"00000808": "radio2",
	"00000404": "10gold",
	"00000202": "radio4",
	"00000101": "sky",
	"00003030": "pi1utr-rr",
	"00002828": "pi3utr-rr",
	"00002424": "pi2rtd",
	"00002222": "rx320a"
}
delay = 0
quit = 0
counter = 0
while not quit:
	output = Popen(["/usr/bin/bw_tool", "-a", "94", "-R", "30:i"], stdout=PIPE).communicate()[0].strip()
	if output == "00002121":
		call(["/usr/local/bin/radio", "off"])
		quit = 1
	if output in channel:
		call(["/usr/local/bin/radio", channel[output]])
		sleep(1)
		call(["/usr/local/bin/radio"])
		counter = 0
		delay = 0
	if output == "00002020":
		delay = delay +1
	if delay == 100:
		call(["/usr/local/bin/radio"])
		delay = 0
	if counter == 1000:
		call(["/usr/local/bin/radio"])
	counter = counter + 1

Ook dit programma zal nog sterk gaan veranderen. De sourcecode kun je hier ophalen.

De werking is als volgt:

  1. 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.
  2. De bediening van de schakelaars is als volgt:
    • schakelaar 1 – shift en bij 2 seconden wordt het display gerefreshed
    • schakelaar 2 – preset 1 en preset 6 bij shift gelijktijdig indrukken
    • schakelaar 3 – preset 2 en preset 7
    • schakelaar 4 – preset 3 en preset 8
    • schakelaar 5 – preset 4 en preset 9
    • schakelaar 6 – preset 5
  3. Toets 1 en toets 6 gelijktijdig is radio uit en bij radio uit, gaat hij weer aan!
  4. Als je ‘handmatig’ van station wisselt met pi@raspberrypi ~ $  radio “zender” dan kun je door een display refresh (2 sec. schakelaar 1) de stationsnaam in beeld krijgen.

LET OP : De juiste stationsnaam komt alleen in beeld als de stream gevonden en gestart kan worden!

Als de radio uit staat (maar het inetradio programma draait wel) dan heb je de volgende functies:

  • schakelaar 2 – datum en tijd
  • schakelaar 3 –
  • schakelaar 4 –
  • schakelaar 5 –
  • schakelaar 6 – inetradio.py programma wordt definitief gestopt

Het geheel draait dus gewoon met Raspbian “wheezy” op een type B versie 2 board. Zoals gezegd zal de programmatuur nog verder verbeteren. Ook is de .radiodb file door mij aangepast.  Voor 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.

bash script radio
http://pa3ang.nl/rpi/radio

Python programma  inetradio.py
http://pa3ang.nl/rpi/inetradio.py

database met stations .radiodb
http://pa3ang.nl/rpi/.radiodb

suc6, PA3ANG

 

UPDATE  (2 april 2013)

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.

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.

UPDATE  (23 april 2013)

Een nieuwe behuizing en een Type A Raspberry Pi. De behuizing is verkrijgbaar bij mijn vaste leverancier en is super compact voor deze uitvoering van de RPi.

Het wordt steeds mooier! Ook wordt er nog druk gesleuteld aan het script dus we zullen eerdaags een update op de website plaatsen.

 

Raspberry Pi & RTL Dongel +update

Ja het eerste project met de RPi

Nu onlinereceivers.net wat naar de achtergrond gaat is er ruimte voor nieuwe experimenten en vooral ook nieuwe technologie. Of is het gewoon de vraag: wat gaan we nu weer eens bedenken als tijdverdrijf? En het antwoord is …. ja hoor ik ga ook maar eens starten met de Raspberry Pi. Maar dan wel kaal beginnen en van de grond af opgebouwd. Dus niet een kant en klaar geïnstaleerd D-STAR hotspot systeempje, maar begrijpen wat er gebeurd en ondertussen lekker Linux leren. Natuurlijk moet ik wel behoorlijk gebruik maken van google, nu ik niet steeds een Linux sprekende zoon in de buurt heb, maar ik moet zeggen het lukt al aardig.

Allereerst een geschikte leverancier vinden. We gaan voor kwaliteit en service. Dus even goed zoeken en ziedaar….  www.raspberrystore.nl. Een prima ‘prive’ webzaak met een leverancier waar je gewoon mee kunt mailen en die je spulletjes snel en zorgvuldig opstuurt.

De Raspberry Pi (RPi) die ik gekocht heb is een type B, versie 2 en met een bijbehorend kastje ziet hij er super compact uit. Om goed te kunnen experimenteren met veel (heel veel) beschikbare software een 16GB SD kaart erbij aangeschaft. Daarnaast een Micro USB stroomadapter een Ultracompacte WLAN USB 2.0 en een Powered USB 2.0 HUB. Voor €90 heb je zo voldoende in huis om lekker aan de gang te gaan.

De onderdelen hierboven afgebeeld zijn niet op ware grootte, maar het geeft een goede indruk. De voetprint van het kastje is zo groot als een bankpas en wordt kompleet met 4 x plakvoetjes en 2 x bout-moertje voor de bevestiging van de RPi geleverd. De WLAN is voor draadloos en de Powered HUB heb je nodig voor als je USB apparaten aansluit die meer dan 100mA aan stroom gebruiken (en dat is al snel het geval).

Ik heb hem nu een week in bezit en tot nu toe zijn de volgende experimenten uitgevoerd (en dus de nodige software gezocht, geladen en uitgeprobeerd)

  • Opstaren met een keyboard, muis en TV met HDMI ingang. Ja alles werkt, dus ik kan nu vanaf een andere pc of laptop met SSH werken.
  • internet radio ontvangst w.o. amateur repeater streams. Gaat eenvoudig met het commando:  pi@raspberrypi ~ $  mpg123 http://icecast.omroep.nl/radio1-bb-mp3
  • installeren van de WLAN software en dus nu ook mobiel radio luisteren. De voeding is een 4 x AA batterijhouder met USB aansluiting die ik nog had liggen.
  • installeren van TightVNC zodat ook grafisch met de RPi gespeeld kan worden. SSH is standaard aanwezig en actief maar VNC niet.

Hierna ben ik een hele tijd aan het stoeien geweest met Icecast2, Darkice en het streamen van de audio van de RX320 onlinereceivers.net radio. Dit is een heel verhaal en dus een blog op zich, want je moet ook nog een ALSA mixer installeren voor een externe USB audiokaart. De RPi heeft alleen audio uit en geen audio in!

In dit blog wil ik het echter hebben over een ander experiment dat hoog op de lijst van technologie-wensen stond, nl. het gebruiken van de RPi met een RTL DVB-T dongle. Immers met het programma SDRSharp kun je ook kiezen voor een RTL-SDR / TCP ontvanger. Googelen op internet leverde meteen al een paar hits op:

en een mooi filmpje op http://www.youtube.com/watch?v=rU0dgV7VX2o.

Toch ben ik er wel even mee bezig geweest, want het werkte niet!  Ik kreeg foutmeldingen of er gebeurde helemaal niks. Het laden en compileren van de software ging wel goed en probleemloos. Je hoeft immers alleen maar de instructies op de website te volgen en de rest gaat vanzelf. Dat is het leuke van Linux en een hele verademing t.o.v. Windows. Maar ik kreeg de boel niet aan de praat helaas.

In veel blog berichten kwam ik tegen dat de R820T dongle (de nieuwste dus) niet zou werken. De E4000 chipset werkte goed, maar die RTL2832u dongle had ik aan mijn zoon (ja die Linux sprekende) mee gegeven. Echter …… na enig nadenken (je moet soms gewoon even gaan zitten) lag de oplossing voor de hand. Ik had niet mijn nieuwe net gekochte Powered USB 2.0 HUB gebruikt, maar een oude die ik nog had liggen (duurzaamheid?). Tja en die haalde de USB 2.0 specs/snelheid niet. Dus nieuwe HUB ertussen en voila. Ondertussen ook de E4000 (oude) RTL dongle weer teruggekregen van zoonlief en omdat die minder stroom gebruikt kan deze zonder Powered HUB op de RPi worden aangesloten. (Omdat de E4000 dongle zonder HUB kan werken en de R820T via een HUB (vanwege de stroomopname), werd het echte probleem nl. dat de USB HUB versie 2.0 aan moet kunnen niet meteen herkend in veel blog vragen en antwoorden.)

Goed, SDRSharp gestart en met Configure kan je het juiste IP adres instellen (kan ook een naam zijn bv. raspberry-1) en de Manual Gain en Freq Correctie. Deze laatste parameters verschillen per dongle. De Sample Rate is in feite de kijkbreedte. 2048000 betekent dat je 2 MHz breed op je scherm krijgt. Als je RPi een WLAN verbinding heeft moet je terugschakelen naar 1024000 (1MHz) anders vallen er gaten in de ontvangst. Dit geldt ook als je van buiten je LAN netwerk verbinding maakt met de dongle. Je kunt dus je router laten doorverbinden (van buiten naar binnen) naar de raspberry op poort 1234 (of welke dan ook) en dan via internet met je dongle verbinding zoeken (of iemand anders toegang geven).

Vraag rijst natuurlijk, waarom zou deze opstelling willen. Je kunt de dongle ook meteen aansluiten aan je pc of laptop. In de blog van Hamradio Science staan wel een paar redenen genoemd:

  • Minder coax kabel en dus verliezen;
  • Lekker mobiel luisteren (op de bank bv. naast de XYL);
  • Luisteren vanuit je hotelkamer naar je locale huis repeater;
  • Een dongle opstellen bij een vriend van je die 20 hoog woont in New York;
  • Met batterijvoeding of zonnecellen aan een heliumballon op 300 meter hoog hangen;
  • etc. etc. etc.

en verder is het natuurlijk gewoon leuk om mee te experimenteren.

Hier de opstelling. De RPi met WLAN, USB 2.0 HUB en de R820T chipset dongle. Nu nog een antenne eraan, batterijvoeding en opladen via zonnecellen en klaar is Kees. Weinig coax nodig, laag stroomverbruik en overal beschikbaar.

Toch wel grappig zo’n RPI. Linux leren met een minimaal systeem. Energiezuinig en met veel potentie. Ik ben al een site tegengekomen welke volledig op een RPi draait! Apache, PHP etc…  Ik ben nog lang niet uitgespeeld en dus zullen er nog wel wat RPi blogjes volgen.

Tot slot mijn installatieprocedure:

Inloggen op de RPi vis SSH

sudo apt-get install git
sudo apt-get install cmake
sudo apt-get install libusb-1.0-0.dev
sudo apt-get install build-essential

git clone git://git.osmocom.org/rtl-sdr.git
cd rtl-sdr/
mkdir build
cd build
cmake ../
make
sudo make install
sudo ldconfig

Je moet voordat je de bovenstaande commando’s uitvoerd de file rtl-sdr.rules zoeken. Deze staat in de directory rtl-sdr (het path kan verschillen). De file rtl-sdr.rules moet met sudo cp rtl-sdr.rules /etc/udev/rules.d gekopieerd worden.

Met het commando rtl_tcp -a 192.168.178.55 & kan hierna het programma gestart worden.

Nu de client starten op de pc of laptop en met de juiste Configuratie instellingen de combinatie van Raspberry Pi en HAM radio benutten. O ja soms moet je de Configuratie instellingen voor een 2e keer met Update Settings doorsturen naar de RPi zoals je hier boven ook ziet (de gain setting komt de 1e keer niet door.)

Succes en voor vragen kun je dit blog gebruiken. O ja….. als je het wil proberen installeer dan SDRSharp op je pc en selecteer RTL-SDR / TCP. Als Hostnaam gebruik je pa3ang.xs4all.nl, Sample Rate 1024000, Manual Gain 430 en Freq Correction 84.

UPDATE

De eerste test via internet met Hans, PA0EBC  toonde aan dat het systeem werkte. Echter we liepen tegen een nieuw fenomeen aan en dat fenomeen heet bandbreedte. Wat Hans ook instelde aan Sample Rate 2048000, 1024000, 512000 het geluid bleef gebroken en de ontvanger reageerde traag terug.  Het lag waarschijnlijk aan de verbinding want een reboot van de RPi leverde geen verbetering op. Dan toch maar even kijken op de fritz.box wat de upstream in huize PA3ANG aanwees. Nou zie hier het overzicht. Zodra de ontvangst wordt gestart wordt alle upstream bandbreedte benut. We moeten duidelijk upgraden om het goed te laten werken.

 

vy 73 Johan, PA3ANG