Ode to reliability.

Or 11 years moving packets back and forth.

These are the remains of ‘Cachafaz’. It’s a very special computer for me. We bought it in 1999, it was my third computer, the second I’d put Linux into. Back then i called it ‘Garchake’ because I was using Mandrake. Lots of memories spring back… my first steps in C, hacking xmms plugins, countless hours playing Unreal Tournament (with windows ME, ewww). Amoung our friends it was pretty beefy, amd k6-3 400Mhz, 512Mb, 10gb hd plus the 2gb disk from my older computer, 56k modem and a Voodoo 4500…

Continue reading

LCD Lightbox

It costed almost nothing but some screws and metal angles. Things I picked up from the street / junk:

  • Glass
  • Wooden angles
  • Old Acer laptop, not worth repairing. For this I took the screen only. Touchpad, drives and some other things left aside for another project.

Things already on hand:

  • Scanner (umax 1220p). I used its inverter because the one from the screen was broken. It served me well but the mirrors are very frayed, there’s moisture in the ccd and besides that it needs a parallel port, wich I don’t have at the moment.

Looks like something from the trash? Why yes! And I like it that way. It runs happily with anything between 7v and 20v (all the power bricks laying around) and as a nice side effect that lets me select the color temperature from a mild pink to a colder white.

Transformador de aislación II

Ya casi lo termino… (vine de acá). En la semana terminé la madera del tope y emprolijé las derivaciones. Ahora me falta nada más ponerle un portalámparas para la serie.

Transformador de aislación

Bueno, la noche anterior a la navidad (y la siguiente también) estaba algo mas aburrido que de costumbre así que me dediqué a continuar con el transformador de aislación mientras bajaba la cuarta temporada de Buffy. Un solo capítulo, con eso de las fiestas la conexión era horriblemente lenta. En dos días terminé (por lo menos lo fundamental) el transformador.

Día 1.

Primero hice unos tacos de madera para sostener los núcleos. Con el primario tal cual está tengo 1 volt por vuelta, así que en el secundario voy a necesitar en principio 240 vueltas. El único alambre esmaltado en cantidad suficiente es el del secundario original, pero la corriente que soporta no me sirve (ver American Wire Gauge). Comprar una bobina de alambre no es una opción, así que me puse en marcha para hacer un bobinado trifilar.

Ya que estamos me va a ser útil tener varios voltajes de salida, opté por tener taps cada 20 volt y cada 5 en las cercanías de los 220, mas un bobinado extra con derivaciones cada 1 volt para tener mas flexibilidad. Con todo eso estimé la cantidad de espiras necesarias, le agregué un 10% para tener margen y una por cada derivación. Con la longitud media del secundario original saqué la cantidad de cobre necesaria.

Rebuscando entre la cosas disponibles encontré un caño de plástico, le hice con cartón unos divisores, lo monté sobre una varilla roscada con dos tacos y empecé a sacar cobre del secundario. Por suerte encontré un cuentavueltas mecánico para ayudarme.

Plastic pipe with paper divisions to hold the magnet wire

Unwinding done!

Día 2.

Más bricolage… Primero hice una lanzadera para poder bobinar en forma ordenada (además el alambre tiene unos restos de pegamento muy pero muy filosos). Después una forma en madera con las dimesiones del núcleo, luego un núcleo en cartón. Salió tan bien que parece que hubiera ido a un colegio artístico.

Posterior y frente de la guia para el alambre esmaltado

Forma hecha con triangulitos de cartón.

Listo!


Un rato (bastante largo) bobinando y este es el resultado:

Mas prolijo que el original

Prueba rapida.

Para la mayoría de las cargas que me interesan la regulación es mas que suficiente y puedo ajustarla (dentro de cierto margen) con la gran cantidad de taps. Solo por probar le conecté una plancha de 1000w, calentó como si nada aunque la tensión cayó unos 30v.

Lucky day

Recién recién vengo de comprar algo para el almuerzo y me encuentro en la vereda dos PCL82, estamos todos locos con las fiestas. De paso me sirvieron para probar el nuevo flash en anillo, tengo que darle un poco mas de potencia y ponerle un difusor, las sombras quedaron medio raras.

A pelo.

while true; do
  apt-get --download-only upgrade
  apt-get --download-only dist-upgrade
  apt-get --yes --force-yes upgrade
  yes | dpkg --configure -a
  apt-get --yes --force-yes dist-upgrade
  yes | dpkg --configure -a
  sleep 10s
done

Nuevo chiche…

Hoy me regalaron un router Zyxel medio viejito pero que funciona. Es un prestige 645, lo desarmé y estuve chusmeando para ponerle un ddwrt; la plataforma también está copada, un ARM7, un mega de flash y ocho de ram, jtag y usb (conectores sin popular) y un par de gpios libres. Hay lugar en la plaqueta para un integrado mas, pareciera posible ponerle mas flash.

Terminando algo…

Ayer fue el día del Amigo, tenía pensado desde hace una semana mas o menos ir a ver a la Flower pero me levanté bajón y sintiéndome como para resfriarme así que me quedé en casa. Estaba en ese estado que me agarra seguido, me siento mal, bajón, desganado, y lo peor de todo es que casi nunca tengo un motivo real para estar así. Hice lo de siempre en esas situaciones, ordeno un poco, cocino y después me siento a tomar mate y leer. Leer de todo, como para distraerme y volar,  soñar, creer que otras vidas, otros logros son los míos (ni en pedo un apunte de la facultad…).

Por una de esas cosas volví a caer en el sitio de Paul Graham; cada vez  que lo visito leo y releo sus ensayos, encontrando algo nuevo, o resignificando las cosas que ya recordaba. Hay uno muy bueno sobre una charla de Hamming (el de los laboratorios Bell). Eso me hizo pensar en un par de cosas puntuales, sobre todo la forma en que estoy encarando mi vida académica y profesional. Así como algunas personas pueden caracterizarse, reconocerse, por sus logros, otras pueden definirse por las cosas inconclusas.

No hay necesidad de nombrar nombres pero últimamente estoy tendiendo a parecerme mucho mas de lo que quisiera (solo en ese aspecto) a cierta persona allegada, bien sea que mire mis repositorios o la estantería encuentro proyectos a medio terminar, otros ni siquiera empezados.

Entonces, aprovechando que no iba a salir decidí terminar algo, por más simple que sea. Terminé dos cosas a falta de una. O una y media siendo un poco mas crítico.

Una, preparé de una vez el repositorio git de alsa para hackear tranqui el driver del cm6206 y volví a mandar los parches (no me dieron bola, así que en un par de días pongo a medio mundo en cc a ver si logro un poquitín de atención).

Dos, retomé el flash anular (o ring flash) que había empezado a hacer con papel maché para sacar mejores fotos con el macro. Monté ocho de los dieciséis leds blancos, incluso con cuatro la iluminación es bastante pareja aunque la intensidad no es muy adecuada. Ahora estoy con fiaca, luego subo fotos del proceso, que lleva casi mes y medio de iniciado. Antes no lo había notado pero mientras hacía los agujeros para pasar los led me dí cuenta de lo resistente que se hizo la estructura en base a papel secante y adhesivo vinílico, es increíble lo robusto que quedó el reflector.

Convertí tu placa de sonido quemada en un super manos libres

El día que se me quemó (que quemé en realidad) la placa de sonido de la notebook me agarró una desesperación tremenda. Me tiré de cabeza en mercadogarchalibre y compré la placa usb más barata, a $24. Funcionó durante media hora mas o menos y luego no anduvo nunca mas. En ninguna pc.

Por un tiempo la tuve en la mochila, dudando entre irme a City Bell donde vive el que me la vendió o convertirla en otra cosa. La fiaca pudo más y decidí emprolijar un poquito el enjendro que había hecho con el manos libres del celular:

Manos libres con ficha RCA

El manos libres con un par de fichas RCA para conectar a la consola. Me gusta como quedó la luz, estuve un buen rato jugando con la apertura y el flash

La desarmé (no costó mucho, la primera vez que se me cayó al piso las dos tapitas se separaron solas), desconecté los jacks del resto del circuito y soldé el cable original a la plaqueta. Tuve que agregar una resistencia de 1k entre el canal derecho y tierra para que el teléfono “piense” que hay algo conectado.

Conexión del cable

Después la obligatoria cinta y listo el pollo:

Manos libres usb, terminado

Hasta parece original...

Ahora solo falta agregar un cablecito mas para poder usarlo como cargador. Con la compu funciona de diez, así que ahora voy a tener radio en la facu. También anda lindo con los auriculares pero necesito conseguir unos de mas impedancia, los originales eran de 32 ohm y todos los que tengo dando vueltas son de ocho, no me va a durar mucho que digamos la batería.

Nerdddd….

(suena la voz de Fercha cargándome, podría haber salido el sábado a despejarme un poquito pero me quedé hackeando un driver)

And now for something completely the same… A couple of weeks ago I bought a cheap 8-channel usb audio card based on the CM6206 because the one in my notebook was roast (ar$ 190, including shipping to my home). As expected it worked right out of the box, there were some rough edges, like missing control names and the headphone jack was silent,  but as I was running a somewhat old kernel (2.6.29) I didn’t care.

On another box with a newer kernel, 2.6.32-something, it worked better; the headphone jack mirrored the front channel and also spdif was enabled. Even so, it was managed as a generic usb device (wich is great, it means no specialized drivers) but some useful features described in the datasheet were missing.

I decided to implement the easier ones first, mainly because even I hacked the kernel before this was my first time with alsa. With the datasheet in hand I coded a quick app with libusb to poke registers. After a couple of hours I had a userspace app to select the headphone source (it lets you choose wich channel the headphone jack mirrors). Then I got the latest stable kernel, 2.6.34 at that time, and jumped into the code. A week passed and I had it implemented as another control from alsa.

You are doing it wrong.

Feeling great I made a series of shiny patches to send upstream. Lurking thru alsa-dev I glanced other patches that affect the usb-audio portion and they looked… different. Cloned the main git repo and really, it was different. Back to square one, or two.

Spent yesterday’s night merging the old changes at the new tree and got a working driver again. A couple of hours ago sent the patch to alsa-dev. This time I avoided the gmail interface because it really likes to mangle inline patches and used kmail; the bastard trimmed also everything to 80 columns. Still nobody complained but lets see how it is teared down this monday.

Sources and documentation:

http://tangopardo.com.ar/pub/src/cm6206_utils-0.0.0.tar.bz2

CM6206 datasheet: http://tangopardo.com.ar/pub/docs/CM6206+datasheet+1.7.pdf