Arxiu de la categoria: Jukebox

Rockola inspirada en una Seeburg Wallbox

Encara no tinc acabada la que ha de ser la meva rockola original, amb més de 2000 cançons, front-end, un so potent i efectes lluminosos. Mentrestant, m’ha sorgit la possibilitat de desenvolupar ràpidment una rockola mínima i bonica. La font d’inspiració són les Seeburg Wallbox, pensada com diu el seu nom per ser penjades de la paret. Pots veure el resultat en la foto, estic satisfet de com ha quedat, tot i que al final no s’assembla gens a una Seeburg Wallbox.

La rockola consta de 6 bancs de cançons (1.Baladas; 2.Pop Rock Español; 3.Pop Rock; 4.Rock & Roll, R&B-Soul; 5.Heavy Metal; 6.Catalana), i cada banc són 36 cançons. Això fa un total de 216 cançons, que he intentat que siguin el més representatives de cada categoria. L’el·lecció de Balades (Julio Iglesias, Pantoja,…) o dels grups de pop espanyol dels anys 80 (Mecano, etc) és perquè m’imagino aquestes rockoles funcionant en un bar cutre dels anys 80. Ja se sap, quan faig un projecte em fico dins la pell del projecte… Té un moneder que accepta monedes de 20 cts d’euro, un led indicador, i 12 botons de fusta, res de plàstic. Sense pantalla. Els altaveus són normals d’ordinador, per tant no es pot esperar ni potència ni bona qualitat en aquest primer prototip. En tot cas és interessant una sortida AUX d’àudio per connectar un amplificador potent.

El moble està fet amb fusta de pi vernissada. Les dimensions són 26 cm d’ample per 38 cm d’alt, i la idea és penjar-lo de la paret. A dins té una Raspberry Pi 2 i amb una targeta de 8Gb n’hi ha prou per al sistema operatiiu, l’aplicatiu i les 216 cançons.

Com que no hi ha pantalla, el LED indicador és l’única font de comunicació amb l’usuari. Hi ha 3 modes: LED intermitent, vol dir que no sona cap cançó i que la rockola està esperant una moneda (una moneda, dues cançons); LED encès, vol dir que hem d’introduir el codi de la cançó (amb el format BANC-LLETRA-NÚMERO); LED apagat, està sonant una cançó i hem gastat tots els crèdits (les cançons pendents de sonar estan a la cua).

Els botons estan connectats directament als pins GPIO, i el LED també. Per canviar l’estat del LED l’aplicatiu executa un script Python que és el que s’encarrega d’encendre i apagar el LED.

Per si a algú li interessa, aquí va el codi font (les cançons escollides estan dins el codi font).

Efectes de llum per a la rockola

La rockola ha estat molt de temps en stand-by, però aquesta tardor ja estarà acabada. Finalment els efectes de llum els faré cridant un script python des de l’aplicació. La idea és que a cada cançó canviarà l’efecte de llum. El script python consumeix menys del 1% de CPU, i per tant no representa cap problema. Com que utilitzo el bus I2C, només ocupa dos pins de la Raspberry: SCL i SDL. El xip MCP23017 té dos bancs, i per tant puc redireccionar 16 bits, que són 16 leds. Això va perfecte perquè el moble tindrà 15 mòduls led, i després hi haurà un altre mòdul led que farà intermitències per recordar que s’ha de posar una moneda.

En el video es mostra 16 efectes diferents: vàries modalitats de led chaser, pluja, intermitència, zig-zag,… En la màquina real els 16 bits del xip MCP23017 activaran 16 mòduls led, que es composen de un transistor i 3 led cada mòdul, i així tinc uns mòduls ben lluminosos. A veure si acabo aquesta rockola (el projecte està a http://wiki.joanillo.org/index.php/Rockola-Gramola-Jukebox), perquè ara ja estic pensant en una altra modalitat de rockola que serà petita i mona, sense pantalla.

Moneder electrònic per a la rockola

Per fer aquest moneder electrònic he seguit els plànols del següent enllaç:

Vaig intentar ser fidel a l’article, quan encara no tenia els micro-switches de palanca. Però ara que ja els tinc, he fet una simplificació. D’entrada, utilitzo fusta en comptes de metacril·lat, que és més fàcil de treballar.

Aquest moneder és molt senzill: no detecta el tipus de moneda ni el seu valor. Senzillament és un interruptor on/off, i per tant es pot enganyar el moneder amb qualsevol fitxa. Però tant se val, doncs de moment no tindrà un ús comercial.

El software per a la rockola va prenent forma

He avançat bastant en la part software de la Rockola. Consta de dues parts: la primera és un menú, i la segona és el front-end pròpiament dit.
En el menú es pot escollir la col·lecció de música que es vol escoltar (Rock, Pop, Salsa, etc.), i es pot filtrar per dècada (70s, 80s, etc) i per llicència (tota la música o només la de domini públic). En cada moment pots veure el número de cançons que seran seleccionades.
A més, hi ha diferents opcions relacionades amb la màquina hardware que s’està construïnt. Per exemple: Coin Acceptor habilita o deshabilita haver de ficar les monedes per escoltar les cançons; Piped music habilita el fet de què soni un fil musical si fa estona que no hi ha música a la cua de la playlist; Efectes de llum habilita o deshabilita els leds que faran pampallugues amb motius decoratius; Enable Exit habilita o no que l’usuari pugui tornar al menú des del frontend.
Un cop seleccionada una col·lecció podem anar a la Rockola, que llença el front-end pròpiament dit. El front-end intenta ser fidel als models clàssics de Rockola. Es tracta d’anar omplint les etiquetes de paper de les cançons. Cada etiqueta consta d’un grup i de dues cançons. La distribució de les etiquetes es fa de manera que els grups quedin bastant barrejats i que hi hagi algunes etiquetes mig buides amb una sola cançó. A cada pantalla hi caben 64 cançons, i es pot navegar per les diferents pantalles.
El front-end gestiona els crèdits de què es disposa (una moneda són dos crèdits, que donen dret a dues cançons). La manera de seleccionar una cançó és bastant intuïtiva. Es disposa d’una petita pantalla amb informació de la cançó seleccionada, i evidentment es gestiona la playlist que controla les cançons que estan a l’espera de sonar. Tal com està ara d’avançat el projecte ja es poden escoltar les cançons. Funciona!
En definitiva, el software, format pel menú i el front-end, està pensat per integrar-se en una màquina amb només tres botons (esquerra, dreta i Enter), que ha de complir amb el requisit de què sigui fàcil i clar d’operar, sense manteniment.
El que de moment no és tan fàcil és ficar tots els fitxers MP3 en el sistema. És bastant laboriós. Primer de tot s’ha de disposar de fitxers mp3 que tinguin els tags ID3 omplerts i amb informació correcta. Si no és el cas, s’ha d’actualitzar aquesta informació. S’han de llegir els tags dels fitxers mp3 i actualitzar la base de dades. S’ha de decidir, per a les cançons que es vol incorporar, en quines col·leccions sortiran. Es genera un fitxer master amb totes les cançons de la base de dades i un fitxer de configuració que porta el compte del número de cançons classificat per col·lecció i per dècada. Hi ha una sèrie de scripts que ajuden i automatitzen tot el procés, però en definitiva si es vol tenir una base de dades de qualitat el procés no és fàcil, tot i que hi ha marge per millorar i automatitzar.
Un tema a destacar d’aquestes dues peces de software és que la geometria resideix en fitxers de configuració, de manera que ha de ser fàcilment adaptable a diferents formats de monitor. A més, el codi s’ha compilat tant en un portàtil com en la Raspberry Pi (doncs aquesta plataforma serà el motor de la Rockola real que s’està construïnt).
En resum, la part software ja va prenent forma i no trigaré gaire a fer un video demostratiu. Paral·lelament el moble també va prenent forma, i espero no trigar massa en veure aquest el projecte de la Rockola acomplert.
Quan tingui el software acabat publicaré un enllaç per descarregar el codi font. De totes maneres aquest projecte, programat amb C++, s’ha escrit bastant a raig i de moment no quedarà massa ben documentat.

Monitor per a la rockola: Neusonik NE08

M’ha costat una mica decidir-me en l’apartat de l’amplificació de so. Els requisits que tenia:
\tUn monitor actiu decent, amb una bona potència per fer-se sentir en una sala gran. S’ha de defugir dels altaveus d’ordinador. Ha de ser un sol monitor, no pas una parella.
\tQue no siguin cars. Compromís qualitat/preu. \t
Que es pugui integrar dins del moble de la rockola, sense espatllar el moble del monitor. \t
No ha de tenir botons en la part frontal, sinó que aquests han d’estar en la part posterior (control de volum, possible equalització/guany, entrada auxiliar)
\tAlimentació externa a 220V
La decisió ha estat una mica complicada, doncs els monitors de camp proper no són altaveus HiFi. Però fetes les proves oportunes estic content de l’elecció. Son 70W de potència en una sola caixa que pesa 10Kgs. No està gens malament. Si hi ha una segona versió de la rockola vull explorar els amplificadors i altaveus que vénen en els cotxes, i que funcionen a 12V,
The NE08 is a high resolution nearfield monitor with an exceptional good low end. Due to its 8″ LF woofer made of kevlar and the 1″ silk dome tweeter it’s a perfect partner for the budget oriented project studio and surround sound monitoring situations.
Features:
2way active studio monitor 8" kevlar LF woofer and 1" HF silk dome tweeter Frequency range: 40Hz - 22 kHz Crossover frequency: 3.2 kHz Amp power rating LF: 70W Amp power rating HF: 70W Signal-to-noise: > 100dB Input jack: XLR or TRS Thermal, subsonic and overload protection Vinyl coated MDF enclosure