ifconfig eth0
‘ gewijzigd. Met als resultaat dat er nu geen IP-adres meer wordt gemaild als we het niet aanpassen.
in versie 8 (Jessie):
$ ifconfig eth0 eth0 Link encap:Ethernet HWaddr b8:27:eb:b3:54:c0 inet addr:192.168.1.61 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:4343770 errors:0 dropped:2203 overruns:0 frame:0 TX packets:1136966 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1050350899 (1001.6 MiB) TX bytes:197785837 (188.6 MiB)
in versie 10 (Buster):
$ ifconfig eth0 eth0: flags=4163 mtu 1500 inet 192.168.1.22 netmask 255.255.255.0 broadcast 192.168.1.255 ether b8:27:eb:db:6c:8c txqueuelen 1000 (Ethernet) RX packets 9733507 bytes 2737144478 (2.5 GiB) RX errors 10 dropped 0 overruns 0 frame 0 TX packets 3662531 bytes 456845907 (435.6 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Voor het opvragen van het IP adres wordt een zoekstring (grep) gebruikt en voorheen was dat ‘inet addr:‘ zoals getoond in het vetgedrukte deel van het resultaat. In Debian versie 10 is dat dus anders en dient de zoekstring gewijzigd te worden in ‘inet‘. Het volledige commando is dan:
$ ifconfig eth0 | grep "inet" | awk '{ print $2 }' 192.168.1.31
Indien je gebruik maakt van deze functie dient het bestand ‘/home/volumio/mailIP.sh‘ alsvolgt aangepast te worden voor het opvragen van de IP adressen van zowel de ethernet adapter (eth0) als de WiFi adapter (wlan0):
oud:
IP1=$(ifconfig eth0 | grep "inet addr:" | awk '{ print $2 }') IP1=${IP1:5} if [[ "$IP1" ]]; then echo "Het ethernet IP adres van $HN is $IP1" >> /home/volumio/newmail.txt fi IP2=$(ifconfig wlan0 | grep "inet addr:" | awk '{ print $2 }') IP2=${IP2:5} if [[ "$IP2" ]]; then echo "Het wifi IP adres van $HN is $IP2" >> /home/volumio/newmail.txt fi
nieuw:
IP1=$(ifconfig eth0 | grep "inet" | awk '{ print $2 }') if [[ "$IP1" ]]; then echo "Het ethernet IP adres van $HN is $IP1" >> /home/volumio/newmail.txt fi IP2=$(ifconfig wlan0 | grep "inet" | awk '{ print $2 }') if [[ "$IP2" ]]; then echo "Het wifi IP adres van $HN is $IP2" >> /home/volumio/newmail.txt fi
Uiteraard zijn de nieuwe MusicPlayers met Volumio versie 3 door ons al aangepast voordat ze de deur uit gaan.
Indien je hulp wil bij het aanpassen van jouw MusicPlayer, neem dan contact met ons op. We helpen je graag!
]]>Maar hoe doe je dat dan met de MusicPlayer AMP?
De MusicPlayer AMP maakt gebruik van een ALSA-audio board, de ‘HifiBerry AMP2’ en de twee kanalen kunnen met software ingesteld worden. Hiervoor is de ‘amixer‘ aanwezig en dit dient dan vanaf de command prompt gebruikt te worden.
Dus eerst even ssh aanzetten via http://volumio.local/dev en vervolgens kun je met een terminal-programma inloggen in de MusicPlayer. Het commando is dan:
$ ssh [email protected]
(of [email protected] als de naam ‘musicplayer’ is) Het wachtwoord is standaard ‘volumio’
Om de alsa devices op te vragen is er het commando:
$ amixer controls
en dat geeft dan bv. de volgende output waarbij we willen weten wat het ‘numid‘ is van het ‘Digital Playback Volume‘ device:
numid=1,iface=MIXER,name='Digital Playback Volume'
in dit geval is dat dus numid=1
Het volgende commando geeft de status van dit device weer:
$ amixer cget numid=1 numid=1,iface=MIXER,name='Digital Playback Volume' ; type=INTEGER,access=rw---R--,values=2,min=0,max=207,step=0 : values=117,117 | dBscale-min=-103.50dB,step=0.50dB,mute=1
De values in de output geeft het volume per kanaal aan, in dit geval dus 117 voor zowel het linker- als het rechterkanaal. Om nu de balans naar rechts te verschuiven, zet het volgende commando het volume van het rechterkanaal 10 eenheden harder dan het linkerkanaal:
$ amixer cset numid=1 117,127
De balans naar links is hetzelfde commando maar dan de twee values verwisseld, het is immers L,R
Dit commando kunnen we in een bash-script zetten en dat ziet er dan zo uit:
#!/bin/bash amixer cset numid=1 117,127
Dit script noemen we dan /home/volumio/balance.sh en om het uitvoerbaar te maken zetten we de flags met:
$ chmod +rx /home/volumio/balance.sh
Nu kan dit script in de opstartfase van de MusicPlayer gezet worden (/etc/rc.local) maar bedenk wel dat als we het volume via de GUI harder of zachter zetten is de balans weer gelijk voor links en rechts.
Wat als we een percentage zetten voor links en rechts?
Dat commando zal dan alsvolgt zijn:
$ amixer cset numid=1 80%,100%
OK, dat werkt dus ook niet, blijkbaar is er geen instelling om de balans permanent te zetten, althans, ik vind het niet.
Een alternatief zou kunnen zijn om de shutdown-button op de voorkant van de MusicPlayer te gaan gebruiken om de balans te zetten en het uitzetten van de MusicPlayer dan voortaan via de GUI te doen. Hiervoor maken we dan een python script die de GPIO poort kan uitlezen.
Eerst wat software installeren:
$ sudo apt install -y python-dev $ sudo apt install -y python-rpi.gpio
Nu maken we een python script genaamd /home/volumio/balance.py met de volgende inhoud:
# balance.py # by Nico Oosterwijk ([email protected]) # SWITCH is between pin 33 (GPIO13) and pin 1 (3.3V) import RPi.GPIO as GPIO import time import os GPIO.setwarnings(False) GPIO.setmode(GPIO.BCM) GPIO.setup(13, GPIO.IN) try: while True: if GPIO.input(13): os.system('/home/volumio/balance.sh') time.sleep(.250) except KeyboardInterrupt: # GPIO netjes afsluiten GPIO.cleanup()
Elke 1/4 seconde ‘kijkt’ dit script of het signaal op GPIO13 gewijzigd wordt en zoja, dan zal het bash-script balance.sh uitgevoerd worden. De KeyboardInterrupt zal in dit geval nooit bereikt worden maar staat er voor de volledigheid in mocht je het script op de command line willen uitproberen. Stoppen kan dan met CTRL+C.
Om dit script tijdens opstarten van de MusicPlayer uit te voeren, zetten we de volgende regel in /etc/rc.local:
python /home/volumio/balance.py &
Na een reboot van het systeem zal met de button op de voorkant de balans (en volume) van het linker- en rechterkanaal ingesteld worden.
Het is ook mogelijk om deze ALSA instellingen op te slaan in het bestand /var/lib/alsa/asound.state
met het commando:
$ sudo alsactl store
(Terug)zetten van deze instellingen kan dan met:
$ sudo alsactl restore
maar dat zou ook automatisch gaan met opstarten. Desalniettemin wordt dit weer tenietgedaan door via de GUI het volume te wijzigen maar in ieder geval worden de instellingen gezet na een herstart van de MusicPlayer!
Happy playing!
]]>Deze analoge ingang kan gebruikt worden voor het afspelen vanaf een (voorversterkte) draaitafel, een CD of DVD-speler, etc.. De uitvoering is als 3 mm jack-plug op de HAT en met behulp van een verloopkabel heb ik de voorversterker van mijn draaitafel aangesloten.
En dan nu het nadeel….
Om deze ingang te kunnen gebruiken in Volumio/MusicPlayer is een “Superstar” abonnement op myVolumio noodzakelijk. Zonder deze ‘subscription’ komt de mogelijkheid om deze ADC te kiezen niet voor in de “Sources” sectie van Volumio.
Anyways, eenmaal voor deze optie gekozen kan ik dus de ADC als bron kiezen en mijn LP’s via de MusicPlayer weer laten geven.
Zoals je kunt zien wordt er afgespeeld op 48kHz/16bit, hetgeen net iets beter is dan CD kwaliteit. Op het board is er de mogelijkheid om de ‘gain‘ in te stellen. Standaard is ingesteld 0dB maar het kan ook op -12dB of zelfs -32dB worden ingesteld. Ik heb de beste ervaring op 0dB om geen oversturing te ondervinden maar e.e.a. is uiteraard afhankelijk van wat er wordt aangesloten.
Happy playing!
]]>Om dit mogelijk te maken is er een plugin beschikbaar genaamd “GPIO output control for volumio” en is op te halen via de standaard plugin optie van Volumio, “System Tools”. Na installatie kan via “Instellingen” aangegeven welke pin op de GPIO poort gebruikt moet gaan worden voor een LED en of deze dan aan of uit moet worden gezet.
De instellingen hierboven laten zien dat de LED aangesloten op GPIO Pin 4 aan moet gaan bij afspelen en uit bij stop en pauze.
De GPIO poort van een Raspberry PI heeft de volgende layout:
De plus (+) van de LED komt dus op GPIO4 (fysiek pin 7) en de min (-) op één van de GND pins.
Een alternatief zou kunnen zijn om drie verschillende kleuren LED’s aan te sluiten op verschillende GPIO pinnen en deze gebruiken voor de diverse ‘states’, bv. groen bij afspelen, geel bij pauze en rood bij stop. Of, wellicht een multi-color LED?
Happy playing!
]]>“Alexa, turn up the volume on MusicPlayer” of “Alexa, next song on MusicPlayer”.
De skill is in te stellen via de Alexa App en dan via de optie ‘skills’.
]]>]]>
De nieuwe URL is: http://stream.radio10.nl/radio10
]]>