Sommario:
- Forniture
- Passaggio 1: configurazione (senza testa) Raspberry Pi W
- Passaggio 2: installare il software radio senior
- Passaggio 3: installa software aggiuntivo
- Passaggio 4: trova gli stream delle stazioni radio
- Passaggio 5: creare circuiti
- Passaggio 6: provalo
- Passaggio 7: mettere in un recinto permanente
- Passaggio 8: programma di installazione da eseguire all'avvio
Video: Senior Radio - Raspberry Pi: 8 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Il progetto Senior Radio è un dispositivo radio Internet progettato e accessibile open source con componenti hardware e software. È destinato agli utenti che hanno familiarità con il controllo di una radio tascabile in cui i quadranti controllano il volume e la stazione radio selezionata. Il progetto è realizzato con un design incentrato sull'utente, focalizzato su un utente che desidera dimensioni e controlli simili a una radio portatile standard.
È stato creato per soddisfare le esigenze di consentire alle persone con disabilità di ascoltare le migliaia di diversi contenuti in streaming Internet che di solito sono normalmente disponibili solo tramite un browser Internet. Molte persone non hanno la capacità di utilizzare facilmente un dispositivo del genere, quindi questo design mira a creare un'interfaccia familiare per una tecnologia moderna.
La funzionalità principale è su Github, memorizzata in un programma python 3.7.3 chiamato seniorRadio.py. Legge e scrive un file json per memorizzare lo stato della radio, così quando la spegni si ricorderà il livello audio corrente e la stazione selezionata. Inoltre, legge un file json ospitato online che puoi modificare! Ciò ti consente di aggiornare le stazioni radio da remoto se lo stai dando a qualcun altro.
Attualmente è stato creato per connettersi a un altoparlante bluetooth, ma potrebbe essere facilmente realizzato per riprodurre anche un altoparlante integrato.
Il creatore di questo dispositivo probabilmente non è l'utente e ha bisogno di almeno una certa esperienza con l'elettronica e le conoscenze di programmazione di base. Anche l'esperienza con Linux è molto utile.
Per l'utente, la funzionalità è semplice:
All'accensione riprodurrà l'ultima stazione selezionata sul dispositivo audio predefinito. Il quadrante sinistro controlla la stazione, dove pochi clic del quadrante si trasformano in un nuovo URL. Verrà ripristinato dopo l'ultima o la prima voce. La manopola destra controlla il livello audio. Il LED indica che il programma è attivo. E il pulsante mette in pausa o "spegne" la radio. Quindi, una volta acceso, un utente può semplicemente premere il pulsante per mettere in pausa/riprodurre, o "spegnere/accendere", la radio e i due quadranti per controllarla.
Forniture
Collegato su ogni articolo è quello specifico che ho usato. Mi è costato circa $ 60 in totale con un sacco di scorte rimaste!
Conoscenze di base di elettronica e Linux - per l'assemblaggio e il debug
Raspberry Pi Zero W (Zero WH ha le intestazioni pre-saldate e probabilmente utili)
Scheda MicroSD-8 GB+ e capacità disattivata
Adattatore di alimentazione MicroUSB 5V - Il collegamento include anche l'adattatore microHDMI e l'adattatore microUSB da OTG a USB A per la configurazione se ne hai bisogno
Altoparlante Bluetooth
Cavi jumper M/F e M/M
2 Encoder rotativo - stesso collegamento come sopra
Tagliere piccolo
Premi il bottone
LED (opzionale) - LED acquistato + pulsante sopra
Scatola per imballaggio
Passaggio 1: configurazione (senza testa) Raspberry Pi W
Dobbiamo configurare il sistema operativo sul raspberry pi che eseguirà il software. Niente di tutto questo è unico per questo progetto. Per il debug, ti consiglio di configurarlo in modo da poterlo accedere anche in modalità headless. Ciò significa che accedi al pi tramite la tua rete WiFi tramite GUI o un terminale SSH e non hai bisogno di tastiera, mouse e monitor per usarlo ogni volta. Potresti farlo senza doverti connettere a un monitor/mouse/tastiera se sei più esperto di tecnologia. Alcune istruzioni di esempio qui. Tuttavia è meno semplice e di seguito è riportato un altro modo per configurarlo.
Questa prima volta avrai probabilmente bisogno di:
- Raspberry Pi W
- Adattatore da MicroSD a scheda SD [per scrivere il sistema operativo su scheda SD]
- Scheda MicroSD (~ 8 GB+) [per memorizzare il sistema operativo e il nostro programma]
- Alimentazione MicroUSB (5V)
- Da MicroUSB a USB A [per mouse/tastiera]
- Adattatore da mini HDMI a HDMI [per uscita display]
- Tastiera del computer
- Topo
- Tenere sotto controllo
Innanzitutto, dovrai eseguire il flashing del sistema operativo sulla scheda micro SD rPi.
Ho usato raspian buster, lo scarichi su un computer con una scheda di lettura/scrittura SD e poi esegui il flashing del sistema operativo raspian sulla scheda SD. BalenaEtcher è un software facile per farlo
Quindi inserisci la scheda SD nello slot pi, collega il monitor, la tastiera e l'alimentazione. Procedi attraverso i passaggi di configurazione richiesti da raspian, inclusa la connessione alla rete WiFi e l'associazione dell'altoparlante bluetooth tramite la GUI. Una buona pratica sarebbe aggiornarlo usando i seguenti comandi
sudo apt-get update
sudo apt-get upgrade
Se vuoi includere la marcatura del tuo pi senza testa, dovremo prima prendere l'indirizzo IP del pi greco. Attraverso un terminale puoi trovarlo tramite il
ifconfig
comando. È quindi necessario abilitare SSH e VNC sulle opzioni di interfaccia in
sudo raspi-config
Dopo un riavvio, ora puoi testare l'accesso al pi tramite SSH o VNC. SSH è solo un'interfaccia terminale e potresti trovare più semplice utilizzare la GUI per accoppiare un altoparlante bluetooth. Puoi utilizzare un programma come VNC connect per accedere facilmente al tuo pi su un computer separato sulla tua rete. Puoi usare un programma come putty per SSH al suo interno.
Inoltre, puoi configurare un account cloud VNC in modo da poter accedere al dispositivo fuori rete, se necessario
Passaggio 2: installare il software radio senior
Questo può essere fatto da una finestra terminale di Raspberry Pi. Per prima cosa assicurati di aver installato git
sudo apt-get install git
A seconda del sistema operativo installato, questi passaggi potrebbero essere diversi in quanto potrebbe essere necessario installare pacchetti aggiuntivi, il sistema ti dirà se è così. Per prima cosa dobbiamo scaricare il codice radio senior da github. https://github.com/Bunborn/seniorRadio Idealmente, stai creando il nostro repository in modo da poter apportare modifiche e cambiare facilmente le stazioni radio come faccio io. Forcella il repository in caso affermativo
Tuttavia, puoi usare lo stesso del mio senza problemi se vuoi ospitare il tuo file json radio in un altro punto
Quindi clona il repository in qualsiasi posizione desideri che sia. La directory predefinita va bene. Ottieni l'URL per il repository github che desideri premendo il clone verde o il pulsante di download.
Tornando alla finestra del terminale, git clone
Ora dovresti vedere una directory aggiuntiva chiamata seniorRadio quando guardi usando ls. Fantastico!
Il codice è pensato per essere autodocumentante, dargli un'occhiata sarebbe utile. Soprattutto per scopi di debug e se stai cambiando il sistema.
Passaggio 3: installa software aggiuntivo
Prima di passare al circuito e testarlo, dobbiamo anche scaricare VLC e l'API Python per esso. Potresti avere già installato VLC. I primi due comandi aggiorneranno il pi e gli ultimi due comandi sotto installeranno VLC e quindi l'API Python
sudo apt-get update
sudo apt-get upgrade
sudo snap install VLC
sudo apt-get install vlc-python
Inoltre, installa anche gpiozero, che useremo per interfacciarci con i pin GPIO del pi. Potresti averlo già installato a seconda del tuo sistema operativo.
sudo apt-get install gpiozero
Passaggio 4: trova gli stream delle stazioni radio
Successivamente, una delle parti più divertenti! È ora di selezionare i flussi che desideri.
Nel mio file internetStations.json puoi vedere i miei collegamenti in streaming, principalmente per notizie e musica. Ma ci sono un sacco di contenuti ospitati là fuori. La chiave qui è trovare l'indirizzo URL del flusso diretto. Ad esempio, le stazioni di notizie e musica della BBC possono essere trovate qui su questo blog. Questi flussi diretti non avranno alcuna interfaccia grafica e riprodurranno automaticamente il flusso tramite il lettore multimediale del browser. Questi sono gli URL di cui abbiamo bisogno in modo che VLC possa leggerli! Puoi testare rapidamente qualsiasi collegamento nel tuo browser web o tramite VLC sul tuo normale computer per assicurarti che funzionerà sul pi.
Per trovare queste stazioni, puoi cercare il flusso diretto online se il servizio lo ospita. Un modo rapido potrebbe anche essere quello di riprodurre lo stream, fare clic con il tasto destro del mouse sul browser e premere "ispeziona elemento". Passare alla scheda di rete e dovrebbe indicare l'URL "diretto" del flusso. Questo video di YouTube lo dimostra. L'aggiornamento della pagina con la scheda aperta dovrebbe aiutare.
Una volta che hai le tue stazioni, vuoi metterle online in modo che il tuo programma python seniorRadio possa prenderle. Ci sono molte opzioni per farlo, potresti usare siti come Github, bitbucket o anche sourceforge. Lo scopo principale dell'hosting di questo elenco online è che l'utente che lo configura possa modificare l'elenco di streaming online in remoto.
All'inizio del programma Python c'è una variabile chiamata url, cambia semplicemente questo per essere l'URL del tuo file json con i collegamenti URL della stazione
Puoi seguire lo stesso formato del mio file internetStation.json. Se volessi usare anche github, potresti semplicemente eseguire il fork del mio repository seniorRadio e modificare il tuo file internetStation.json e puntarlo a quell'URL "grezzo". Puoi trovarlo di seguito nella GUI di Github dopo aver fatto clic sul file.
Passaggio 5: creare circuiti
Ora dobbiamo configurare il circuito. Questo cambierà in base alla tua attrezzatura, ma di seguito è come ho impostato il mio.
pinout.xyz/ per riferimento su quali pin sono quali. Poiché stiamo utilizzando la libreria gpiozero, ci occupiamo solo della numerazione dei pin BCM. Nota che ho acquistato alcuni encoder rotativi KY040 extra - i quadranti - per testarli poiché non tutti hanno la stessa precisione. Ognuno avrebbe avuto un "rimbalzo", o semplicemente un output errato, quindi ho scelto il migliore dei due che avevo. Nel codice noterai che ci sono alcuni passaggi per limitare anche questo rimbalzo.
Ho collegato il mio pulsante al pin 17 BCM e alla massa
Il mio LED a un resistore da 1k ohm, quindi pin 27 BCM e massa
I miei encoder rotativi KY040 avevano il cavo + a 5V, il GND a terra e il SW scollegato. Questi erano collegati su una mini breadboard
Pin dt encoder rotativo stazione collegato al pin 21. BCM
Pin clk encoder rotativo stazione collegato al pin BCM 20
Pin dt encoder rotativo livello audio collegato al pin BCM 19
Pin clk dell'encoder rotativo del livello audio collegato al pin BCM 16
Se cambi questi pin, aggiorna semplicemente il numero nel programma Python anche dove imposta i gestori
Ho usato una mini breadboard per rendere questo più facile. Ho usato anche i ponticelli M/M e M/F per facilitare l'interfaccia. Ho saldato alcuni cavi dei ponticelli sui pin del pulsante/LED che ho acquistato in precedenza. Per non saldare, potresti ottenere pulsanti e LED che hanno già cavi di ponticello o si collegherebbero facilmente a uno.
Passaggio 6: provalo
Ora dovresti avere un sistema funzionante! Mettiamolo alla prova. Passa alla cartella con il programma python, probabilmente:
cd seniorRadio
python3 seniorRadio.py
Attualmente, c'è un ritardo di 45 secondi all'inizio del programma per dargli il tempo di trovare l'altoparlante bluetooth all'accensione. Puoi commentare questa riga se non ne hai bisogno durante il test. Il programma potrebbe dirti che devi installare pacchetti aggiuntivi, vai avanti in tal caso. Potrebbe anche essere necessario installare una versione più recente di Python.
sudo apt-get install python3.7
Alcuni possibili problemi anche se il programma viene eseguito:
non sento alcun suono
Assicurati che l'altoparlante sia acceso e selezionato nel tuo Raspberry Pi. Attraverso la GUI dovresti essere in grado di accoppiarlo e quindi selezionarlo come dispositivo di uscita audio. Inoltre, controlla i tuoi driver audio. Un problema comune è che potresti dover reinstallare il pacchetto pulseaudio
Audio discontinuo o in entrata e in uscita
Prova ad avvicinare il dispositivo al tuo router WiFi. Inoltre, assicurati che l'altoparlante bluetooth sia vicino. Potrebbe anche essere un problema di driver audio
Passaggio 7: mettere in un recinto permanente
Quindi, mettendolo in una scatola o in un dispositivo simile in modo che possa vivere in modo permanente. Ti consiglio di averne uno a cui puoi accedere in seguito ancora per il debug. Ho preso questa piccola scatola di legno in un negozio di artigianato per $ 2 e l'ho collegata alla pagina dei materiali di consumo. Uno dei miei amici mi ha consigliato una scatola di sigari.
Ho quindi ritagliato dei fori nella parte anteriore per il pulsante e gli interruttori rotanti e ho praticato un foro nella parte posteriore della scatola per il cavo di alimentazione microUSB.
Ho testato la montatura e mi sono assicurato che funzionasse, e voilà!
Infine, ho usato la colla super per tenere premuto il pulsante. La mia breadboard aveva un adesivo sul fondo che ho collegato a una parte della scatola. Ho usato una piccola striscia di nastro adesivo per fissare il retro del pi alla scatola, in modo che potesse essere spostato in seguito, se necessario.
Passaggio 8: programma di installazione da eseguire all'avvio
Infine, probabilmente vorrai che questo programma python venga eseguito all'avvio di raspberry pi, quindi non è necessario farlo manualmente. Ci sono molti modi per farlo che puoi trovare online.
Personalmente, l'ho configurato utilizzando il secondo modo in questo tutorial SparkFun:
Qui, attende che il sistema acceda al desktop grafico prima di eseguire il programma. Viene quindi ritardato dal programma Python per 45 secondi per dare al sistema il tempo di riconnettersi all'altoparlante bluetooth. Se utilizzi un altoparlante integrato, puoi rimuovere questo ritardo. Nota che l'altoparlante bluetooth dovrebbe essere acceso per primo! (per la soluzione bluetooth)
Ora puoi provare a spegnere e riaccendere il tuo pi! Dopo circa 90 secondi il tuo pi dovrebbe iniziare a riprodurre nuovamente i flussi radio. Premendo il pulsante si metterà in pausa/riproduzione. Nota su questi riavvii rilegge quel file json di internetStation, quindi se cambi le tue stazioni devi riavviare il dispositivo per farle funzionare. Congratulazioni!
Se hai fatto questo, o hai apportato modifiche al progetto, per favore fammelo sapere!
Pagina Github:
Consigliato:
BOSEBerry Pi Internet Radio: 4 passaggi (con immagini)
BOSEBerry Pi Internet Radio: adoro ascoltare la radio! Stavo usando una radio DAB a casa mia, ma ho scoperto che la ricezione era un po' irregolare e il suono continuava a interrompersi, quindi ho deciso di costruire la mia radio Internet. Ho un forte segnale wifi intorno a casa mia e il fratello digitale
Riaccensione di un vecchio circuito radio (alimentato da batterie): 4 passaggi
Riaccensione di un vecchio circuito radio (alimentato da batterie): hai mai avuto una vecchia radio che si alimenta solo in corrente alternata e non ha una batteria all'interno? Oggi ti mostrerò come alimentare la tua vecchia radio con una batteria e utile se c'è un potere interruzione e l'alimentazione della radio dipendeva dalla batteria senza connessione
Radio FM con RDS (Radio Text), controllo BT e base di ricarica: 5 passaggi
Radio FM con RDS (Radio Text), controllo BT e base di ricarica: Bonjour,Questo è il mio secondo "Instructables".Dato che mi piace fare cose poco utili, ecco il mio ultimo progetto:Questa è una radio FM con Radio Text con una base di ricarica e che può essere monitorata tramite Bluetooth e APP Android, quindi farò
IL PROSCIUTTO ECONOMICO - TRASFORMA UNA RADIO PORTATILE IN UNA RADIO MOBILE: 6 Passaggi
IL PROSCIUTTO ECONOMICO - TRASFORMA UNA RADIO PORTATILE IN UNA RADIO MOBILE: Radio amatoriale mobile con un budget limitato? Sì, si può fare con un po' di creatività. C'è una pletora di radio portatili cinesi a buon mercato là fuori. Queste nuove radio economiche hanno a loro volta abbassato i prezzi degli apparecchi per prosciutti usati di qualità. Un'altra cosa che si aggiunge
Telecomando senior: 5 passaggi (con immagini)
Telecomando senior: modifica il telecomando della TV di tua madre per renderlo adatto agli anziani. Mia madre è nata nel 1931. Appartiene alla generazione della radio e della seconda guerra mondiale. La sua vista sta fallendo e non è brava con niente di elettronico. I telecomandi della TV la confondono. Questa mod è arrivata da me dopo che lei cal