Encesa electrònica: encendre un llumí amb electricitat

L’objectiu és poder llençar petards mitjançant una caixa d’explosius (caixa de trons, boombox), a distància. Com ho feia el Coyote que volia fer volar pels aires el Correcaminos, i que mai li sortia bé. Una idea divertida que pot fer furor en les properes revetlles de Sant Joan, Sant Pere i Sant Pau (tot just s’acaba l’estiu, queda molt de temps).

Com a pas previ per construir una caixa d’explosius hem de solucionar l’encesa electrònica, bàsicament poder encendre un llumí amb electricitat. Fent una petita cerca al Google t’adones que hi ha diverses aproximacions. Hi ha gent que fa mistos elèctrics (electric matches)… La meva solució serà més senzilla i ràpida: utiltizar mistos de fòsfor normals i corrents, i veure com els puc encendre amb electricitat.

De fet és força fàcil, tot i que la construcció de les metxes elèctriques, tal com a mi em funciona, té un punt d’engorrós i delicat. Aquí va una breu explicació, tot i que les imatges valen més que mil paraules.

La idea és que el fòsfor s’encengui pel calentament que provoca una resistència quan passa el corrent. Com a resistència s’utilitzarà un fil elèctric fèrric, i res millor que unes nanes de cuina (hi ha gent que utiltiza fil de nickel-chromium/nichrome, no cal). Es talla un trocet, es dóna 2 ó 3 voltes al misto, i per tal de què no es mogui s’enganxa amb una mica de pega.

Tallem dos trossos de fil elèctric prim, que pelem, i els empalmem amb el fil de la nana de cuina fent unes quantes voltes. Això és el que trobo més delicat, s’ha d’anar amb compte que la unió sigui prou sòlida i fiable. Es podria soldar, però no és fàcil de soldar la nana i s’ha de buscar un mètode senzill, ràpid i fiable, doncs aquest procés s’ha de fer per cada metxa: tants petards vols tirar, tantes metxes hauràs de fer.

Finalment fem passar corrent pel cable elèctric. Per tal de què s’escalfi i encengui el fòsfor, ha de passar bastanta corrent. I tenint en compte que l’objectiu és fer una caixa d’explosius totalment autònoma i transportable, el millor és utilitzar una bateria de moto, bastant compacta, que dóna prou chicha de corrent, i tot i que pesa, ja és adequat per una caixa d’explosius

Un cop està clar com es fan metxes electròniques fiables, ja em puc posar a construir la boombox. Però si un té ganes d’explorar en aquest terreny es podrien fer coses molt divertides, com ara controlar mitjançant Arduino/RPi/ordinador la sincronització dels petards. S’hauria de fer amb un sistema de relés (millor optoacobladors) que separessin les senyals de control de la senyal de potència. Idees per al futur.

Bé, el millor és mirar les fotos i veure el petit video amb la demostració de què efectivament el misto s’encén.

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.

Fer PCB amb el mètode de la planxa: primeres proves

Estic fent unes proves per fer una PCB amb el mètode de la planxa. Després de dos intents aquesta vegada ha quedat força bé, la propera vegada espero que sigui la definitiva.

Estic esperant que m’arribi unes plaques de doble capa. La placa es correspon a l’electrònica que s’ha de muntar en la rockola: d’una banda l’array de botons; i d’altra banda els efectes de llum. Hi haurà tres efectes de llum diferents que activaran fins a 16 mòduls de LED, a veure com quedarà.

El primer transfer a fusta

Finalment s’utiltizarà la tècnica del transfer per tal d’imprimir motius decoratius a la fusta, abans de vernissar. El títol que es gravarà a la Rockola encara no està decidit, però m’està rondant alguna cosa com ara Indian Rockola, amb la font (caligrafia) d’aquesta marca de motocicletes americanes. És una idea, no sé si serà la final, però es tracta de buscar l’estètica retro dels anys 50 i 60.

La idea original era foradar la fusta i ficar uns vinils retroiluminats per darrere amb el títol, però realment no hi ha espai, o sigui que la tècnica del transfer crec que complirà molt bé la funció decorativa. A la foto es veu el Peret com m’està ajudant.

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.

Avançant en el projecte de la rockola/gramola/jukebox

Estinc fent una caixa de música. Aquest últim mes he estat pensant en el disseny que ha de tenir. M’ha costat bastant de decidir-me en l’amplificador que ha d’integrar la caixa de música. Finalment m’he decidit per un Neusonik NE08. Un cop tinc la pantalla i l’altaveu, ja queda ben definit les dimensions generals que tindrà la caixa de música. La botonera estarà a la zona de baix. Com es veu a la foto, ja tinc fets els 15 forats on s’integraran els mòduls LED que faran els efectes de llum.

Em falta pensar on integraré el moneder electrònic (per posar les monedes de 5 duros), i també altres aspectes de decoració. Però bé, l’important és que ja va prenent forma.

Paral·lelament, estic treballant amb el front-end, crec que està quedant bé, ja penjaré unes captures de pantalla.

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

Hackejar una ROM de Gameboy

He tingut bastants problemes per emular els jocs de Gameboy a la Raspberry Pi. Finalment l’emulador Fednafen és el que funciona, tal i com es fa a Pimame. El món dels emuladors és bastant complicat. Per entendre com funciona una ROM per dins i com es programa un emulador que treballi amb aquestes ROMs s’ha d’estudiar l’arquitectura del Z80, conèixer l’ensamblador, i tècniques avançades de depuració amb llenguatge C. Però aquí anem a fer una cosa relativament senzilla.

Es tracta de fer un petit hack d’una rom de Gameboy. Es tracta de ficar un llibre a dins de la ROM, concretament ficar diferents articles i textos del gran filòsof català Francesc Pujols, aquell que va dir que que Els catalans aniríem pel món i ho tindríem tot pagat.

Parteixo d’una rom que ja és un llibre, un llibre en polonès: Ziarno_Prawdy_-_Book_by_Andrzej_Sapkowski_polish.gbc. Encara que no tinc ni punyetera idea de polonès, arrenco la rom amb l’emulador i la idea està clara: amb els botons pots navegar pels diferents capítols, pots anar a l’inici, i tens dos modes de lectura: línia a línia, o pàgina a pàgina. La idea és localitzar les posicions de memòria on està la informació rellevant, i substituir-ho per la informació (els bytes) que interessa.

Dic que aquest projecte és bastant senzill perquè tenim 5 capítols amb un tamany concret i m’he de limitar a aquestes posicions i blocs d’informació. Allò xulo seria poder ficar més capíols, de longitud variable, i poder navegar per tots els capítols. Però per fer-ho s’hauria de desensamblar el codi i entendre com funcionen els jumps als diferents capítols, i això sí que seria interessant i més difícil.

Bé, mans a l’obra. Faig servir la utilitat xxd com a lector de fitxers binaris, que dóna una sortida hexadecimal i a la part dreta es pot localitzar la informació textual rellevant.

0004040: 0000 0000 0000 0000 0000 0000 0000 0000 …………….
0004050: 2020 2020 2020 2020 2020 2041 6e64 727a Andrz
0004060: 656a 2053 6170 6b6f 7773 6b69 2020 2020 ej Sapkowski
0004070: 2020 2020 2020 2020 2020 2020 2020 2020
0004080: 2020 2020 205a 6961 726e 6f20 5072 6177 Ziarno Praw
0004090: 6479 2020 2020 2020 2020 2020 2020 2020 dy

En aquest bloc hem localitzar el títol i l’autor. El llibre es diu Ziarno Prawdy i l’autor és Adrzej Sapkowski (un nom ben polonès). La posició de l’autor comença a 405b (hex), que és 16475 bytes en decimal. I on acaba Prawdy és la posició 4091 hex = 16529. Per tant, són 16529-16475=54 bytes, que jo substituiré per “EL PENSAMENT I LA FILOSOFIA DE FRANCESC PUJOLS“. Amb aquesta tècnica hem de substituir el títol i autor, el menú, i els diferents capítols (hi ha 5 capítols).

Mostro un exemple de codi amb llenguatge C per substituir en un fitxer binari uns bytes per uns altres en una posició determinada. Un exemple senzill seria:

#include
#include
#include

int main()
{
int posicio = 10;
int tamany;

char *str = “En un lugar de la Mancha”;
printf(“%d\”, strlen(str));
tamany = strlen(str);

int counter;
FILE *ptr_myfile;

ptr_myfile=fopen(“b.gbc”,”r+b”);
if (!ptr_myfile)
{
printf(“Unable to open file!”);
return 1;

}

fseek(ptr_myfile,sizeof(char)*posicio,SEEK_SET);
fwrite(str, 1, sizeof(char)*tamany, ptr_myfile);

fclose(ptr_myfile);
return 0;
}

Partint d’aquest exemple que funciona ja podem fer tota la substitució de les cadenes.

0004040: 0000 0000 0000 0000 0000 0000 0000 0000 …………….
0004050: 2020 2020 2020 2020 2020 2045 4c20 5045 EL PE
0004060: 4e53 414d 454e 5420 4920 4c41 2046 494c NSAMENT I LA FIL
0004070: 4f53 4f46 4941 2044 4520 4652 414e 4345 OSOFIA DE FRANCE
0004080: 5343 2050 554a 4f4c 5320 2020 2020 2020 SC PUJOLS
0004090: 2000 2020 2020 2020 2020 2020 2020 2020 .
00040a0: 492e 2042 494f 4752 4146 4941 0a0a 4c27 I. BIOGRAFIA..L’
00040b0: 6573 6372 6970 746f 722c 2070 6f65 7461 escriptor, poeta
00040c0: 2069 2066 696c c3b2 736f 6620 6361 7461 i fil..sof cata
00040d0: 6cc3 a02c 2046 7261 6e63 6573 6320 5075 l.., Francesc Pu

I el hack ha funcionat com pots veure (i llegir a la foto). En qualsevol cas, la Gameboy no és la millor consola per llegir llibres, i d’altra banda com era d’esperar els accents no funcionen. Pots descarregar el codi sencer a la wiki:

Arcade a la discoteca Cocoa de Mataró

El divendres passat vam llogar màquines arcade a la discoteca Cocoa de Mataró. Va ser una experiència interessant, les màquines van estar enceses des de les 12 fins les 6 del matí. La gent va xal·lar d’allò més amb els jocs clàssics. El públic era de vint-i-pocs, eren d’una altra generació, je, je. Ja ben entrada la nit, algun torrat mamporrejava el joystick amb totes les forces com si fos el canvi de marxes, en fi.

Es poden treure unes quantes conclusions. Per exemple, quan es tracta d’un event com ara aquest, amb poca llum i gent amb poca paciència, de res serveix oferir un catàleg de 1000 jocs i haver d’explicar una vegada i una altra com van els botons. Si amb sis botons ja era prou difícil, costa poc imaginar què passaria amb 9 botons i més jocs i emuladors. En aquest cas, allò simple és el millor.