Inhoudsopgave:

LittleUnicorn: Raspberry Pi-babyfoon - Ajarnpa
LittleUnicorn: Raspberry Pi-babyfoon - Ajarnpa

Video: LittleUnicorn: Raspberry Pi-babyfoon - Ajarnpa

Video: LittleUnicorn: Raspberry Pi-babyfoon - Ajarnpa
Video: Samsung Galaxy S8 VS iPhone 7 Plus - The ULTIMATE SPEED Test! 2024, Juli-
Anonim
LittleUnicorn: Raspberry Pi-babyfoon
LittleUnicorn: Raspberry Pi-babyfoon

Ik heb een jonge tweeling en de audio-babyfoon maakt me gestrest. Elke keer dat het afgaat, word ik nerveus in het zweet voor het geval het weer een slapeloze nacht betekent.

Dus maakte ik Kleine Eenhoorn. Het is een visuele babyfoon gemaakt van:

  • 2 x frambozenpis,
  • Pimoroni Eenhoorn HOED HD,
  • USB mini-microfoon
  • python-codering
  • LEGO Ghostbusters brandweerkazerne (optioneel)

Stap 1: Stel de Pis in

Stel de Pis in
Stel de Pis in
Stel de Pis in
Stel de Pis in

Beide Raspberry Pi's moeten zich op hetzelfde wifi-netwerk bevinden. Al mijn aanbevelingen zijn voor Raspbian OS.

Als je ze helemaal opnieuw instelt, moet je je wifi-gegevens toevoegen. Ik heb ontdekt dat de gemakkelijkste manier is om het `wpa_supplicant`-bestand te bewerken, zoals wordt getoond in de handleiding van de Raspberry Pi Foundation, om de meest betrouwbare manier te zijn. Ik had thuis een paar Pi's, een Pi 3 en een Pi zero (die een wifi-dongle nodig hadden).

Een van de pi's zal fungeren als de audioserver en de andere als de ontvanger. Ik gebruik de Pi 3 als server en de Pi Zero als ontvanger/client.

Download de LittleUnicorn-pythoncode naar elk van de Pis. Als je git hebt geïnstalleerd, is de eenvoudigste manier om dit te doen met:

git clone https://github.com/zemogle/littleunicorncd littleunicorn python setup.py installeren

Als je git niet hebt geïnstalleerd, kun je het installeren vanaf een release, maar je hebt cURL of wget install nodig:

wget

tar -xvf 1.0.tar.gz cd LittleUnicorn-1.0 python setup.py install

NB Python < 3 is nu verouderd, dus ik neem aan dat je Python 3+ gebruikt. Als je python 3 niet hebt, moet je het installeren.

Stap 2: Server instellen

Er is een vereiste voor pyaudio, maar dit is alleen vereist voor de server (d.w.z. degene met de USB-microfoon die in de babykamer gaat). U kunt dit pijnloos als pakket installeren. Hiermee worden alle afhankelijkheden die u nodig hebt binnengehaald en voor u ingesteld:

sudo apt-get install python3-pyaudio

U kunt vervolgens alle andere vereisten installeren vanuit het vereistenbestand:

sudo pip3 install -r ~/littleunicorn/requirements.pip

Nu zou uw server klaar moeten zijn voor gebruik! Start de server op:

cd kleine eenhoorn

python3 server.py

U zou een statusbericht als het volgende moeten zien:

======== Draait op https://0.0.0.0:8080 ========

(Druk op CTRL+C om te stoppen)

Als je dit bericht niet ziet en een foutmelding krijgt, is het vrijwel zeker dat je python-configuratie niet helemaal goed is. Af en toe zal het een probleem zijn met de microfoon. Probeer in dat geval een andere USB-aansluiting.

Stap 3: Ontvanger instellen

Dit is waar dingen leuk worden. Zet ergens anders in je huis (of in dezelfde kamer om te testen) de Unicorn HAT HD op je receiver Rasperberry Pi en zet hem aan.

Installeer de Pimoroni-software

U moet hiervoor de software installeren. De uitstekende mensen van Pimoroni hebben hiervoor een mooie pythonbibliotheek geschreven. Hun GitHub-repo vertelt je precies hoe je het moet installeren.

Installeer de LittleUnicorn-software

Dit is precies hetzelfde als in de vorige stap (d.w.z. voor de server), dus volg gewoon die instructies.

Test het uit

Zodra dat allemaal is geïnstalleerd, kun je met je LittleUnicorn een rondje draaien.

NB Dit vereist dat je de server in de vorige stap hebt laten draaien en dat je de naam of het IP-adres weet van de Pi waarop deze draait.

Het bestand client.py heeft zowel een rotatieargument als de naam/IP van de server. Dit is vooral handig vanwege het verschil in de plaatsing van de stroominvoer van de header-pinnen tussen verschillende pi-modellen.

Als je server draait op een Pi met IP-adres 192.168.1.10 en je wilt het scherm 90 graden draaien, dan kun je als volgt opstarten:

cd kleine eenhoorn

python3 client.py 192.168.1.10 90

Stap 4: Het opstarten automatiseren

U wilt waarschijnlijk niet elke keer dat u elke Pi opnieuw opstart, opnieuw moeten inloggen. U kunt supervisor of cron gebruiken om deze bij het opstarten op te starten. Cron is de eenvoudigste en wordt geïnstalleerd als onderdeel van Raspbian.

Op de server

Bewerk je crontab door sudo crontab -e te typen en voer dit vervolgens in onder de regels met commentaar (d.w.z. na de regels die beginnen met #)

@reboot python3 /home/pi/littleunicorn/server.py >> /home/pi/unicorn.log 2>&1

Op de ontvanger

Bewerk de crontab op de ontvanger pi en voeg het volgende toe:

@reboot python3 /home/pi/littleunicorn/client.py 192.168.1.10 90 >> /home/pi/unicorn.log 2>&1

De 90 is de rotatie van het scherm zoals voorheen. Wijzig dit en het IP-adres in de juiste waarden.

Stap 5: Conclusie

Image
Image
Conclusie
Conclusie
Conclusie
Conclusie

Dit is een klein project zonder bedrading voor iedereen die het niet erg vindt om zijn handen vuil te maken met een beetje opdrachtregelwerk.

Ik ben een kind van de jaren 80, dus…de wekker is geïnspireerd op PacMan

  • Jelly Beans - dit is normaal. Er is altijd een beetje elektrische ruis die de microfoon oppikt
  • Orange Ghost (Clyde) - ontvanger is op zoek naar de server. Controleer of je het juiste IP-adres hebt ingevoerd en je kunt inloggen op de server pi.
  • Blue Ghost - Wanneer het geluid een drempel overschrijdt (je kunt eraan sleutelen in de code), zie je een blauwe PacMan-spook. Ga kijken of je kind in orde is!

Ik heb toevallig een LEGO Ghostbusters brandweerkazerne, dus daar heb ik Kleine Eenhoorn in geplaatst, wat gepast lijkt.

Aanbevolen: