Display2000 [finished]

January 29, 2010

Since tonight is the opening party of this year’s Club Transmediale and a lot of people will see our installation “I Am Display” and the technology it is based on, “Display2000”, for the first time, I want to reactivate this blog to tell a bit about it from my own viewpoint , which is the technical side of the piece. This article will grow as I manage to collect the information, so check back later for images, videos, schematics and software.

I was asked to join an interesting project by Mendel, a designer I briefly talked to on one of our Baustel mondays, on November 6th. He was one of the experts who made suggestion on the possibility of realizing the projects the residents of Palomar5 had been working on, one of which being a big alphanumeric display consisting of fluorescent tubes. He saw that they needed someone with a bit of experience to help out and asked me to join them.

When I came into the camp, Valentin show me his design, adopted from the circuitry of a plug-in timer, and told me that he had already ordered the parts: Shift registers, darlington arrays and mechanical relays. I told him that I would do the switching with solid state technology, but since the time was already short (two weeks to go until the final presentation), I agreed to make the printed circuit boards for the parts.

The first prototype PCB was ready on the next day. It had all relays on the board and worked fine for just a few tubes, but the dirac pulses passed through the driver IC into the digital part and caused wrong outputs as soon as you tried switching many lamps at the same time.

Controller board, G1

So we tried optimizing the design while keeping the same parts: Moving the relays into the metal lamp fittings and giving each one a snubber. We also prototyped this and it looked quite promising. So we went into production: Building all ten wooden frames, installing the fittings, putting the relays with the snubber in, cabling, installing the PCBs (we even got professional cast aluminum housings for them). But still, when there were too many lamps being switched at the same time, strange things happened. So, for the Palomar5 summit, the Display2000 wasn’t finished. But while I tried making the best out of it and working on it for dozens of hours, I had the idea of putting the logic as near to the lamps again and do all the data transmission over a really solid bus, the DMX bus.

Since the summit was over now and we didn’t have any pressure, we scratched all the electronics and restarted with a whole new design. We based it on an DMX512 dimmer circuit and first built 5 prototype boards and, when we saw that it did really work, made 24 additional ones (this time ordered them from a professional PCB manufacturer instead of etching and drilling them myself), recabled everything and now, it is up and running as can be seen in the exception. From my time, around 240 hours went into it, in total, the whole team must have sank more than 1000 hours. But the end result is really worth the effort.

Soldering 29 PCBs of G3

Advertisements

Using the PS2 with a Mac as a media center [ongoing]

June 6, 2009

I finally got a PS2 (the pink model with Disney SingStar for €80), and of course, I don’t want to use it just for playing games (although the €30 Guitar Hero bundle did manage to steal a lot of time), but also as a media player for playing movies from my MacBook Pro on the TV (the MacBook lacks ways of outputting PAL video).

Of course, Sony wants me to just play games and makes doing anything else a bit difficult. I looked into different alternatives, from mod chips to swap tricks. Finally, I got a Memor32, which is basically a memory card with 4 times the capacity of the one supplied with the console and a built-in USB-to-serial converter that allows accessing the data on the MC with strange Windows software supplied by the MC’s manufacturer. I couldn’t find any Mac software for this task, but that’s not a problem, see below.

Blinken!Fritz: Using the Fritz!WLAN Repeater N/G as a programmable blinkenlights display [ongoing]

December 25, 2008

The Fritz!WLAN Repeater N/G is a 802.11 WLAN repeater made by the Berlin-based company AVM. Instead of having the usual set of status LEDs, it features a matrix of 7×15 red LEDs on the front. This probably was inspired by the Berlin-based project Blinkenlights, which have converted buildings into large matrix displays. Sadly, during normal operation, the display shows a rather dull animation: A little dot moving back and forth three pixels in one corner right two always-glowing pixels which show the position for pushing the display for getting into the menu. Wouldn’t it be nice to replace this with one or more of the little animations made for the blinkenlights project?

First, you need to get into the device. Fortunately, it is quite easy to open a shell by enabling the built-in telnet demon. Just create a directory called “var” an in this directory a file called “install” with this content:

/usr/sbin/telnetd -l /sbin/ar7login

Tar the directory “var” and upload it as a firmware update into the repeater using the web interface. Now you have a few moments before the box reboots automatically. Telnet into the repeater (giving the admin password if asked for it) and put the same line into the file /var/flash/debug.cfg. Now, the telnet will be there even after rebooting.

Now, it will be quite handy to have a ftp demon, which AVM didn’t care to pack in. A German online magazine has prepared one for download, which can be installed an enabled by putting these additional lines into debug.cfg:

cd /var/tmp
wget http://www.tecchannel.de/download/fritz.box/bftpd.conf
wget http://www.tecchannel.de/download/fritz.box/bftpd
chmod +x bftpd
./bftpd -d -c /var/tmp/bftpd.conf
echo "albert:Wrrsi4PbgAAMA:0:0:root:/:null" >> /var/tmp/passwd

Reboot the route, if all went well, you can now ftp into it with user “albert” and password “otto”. For dealing with the animations, there are two interesting files: /etc/touchdisplay.config and /usr/share/touchdisplay/Reppy_Animationen.pgm. The first is an XML file the defines the animation and the second is a colormap image containing the animation frames themselves.

Micro project: Using an ATX power supply for powering a battery charger [finished]

August 21, 2008

I received my iMax B8 battery charger today. This little device charges battery packs of PB, NiCd, NiMh, LiFe, LiIo and LiPo up to 36V with up to 7A charge current. It also has a very nice blue LCD status display and thanks to a nice eBay seller in China, I only paid 80€ for it.

The charger expects an input voltage of 11V-18V. If you only have AC outlet sockets in your house and don’t run your own solar power plant, you need a way to generate 8A of DC power in this range. Commercial voltage switching power supplies exist, but expect to pay at least 50€ for one providing this magnitude of current.

But: Nearly everybody has stacks of old PC power supplies lying around, and any nearly current one will generate 8A without any problem at all. So you can just hook the charger or whatever power-hungry device you have between one of the yellow and one of the black cables coming from the power supply and – presto – it will work. It doesn’t?

One problem is that ATX supplies don’t power up without being told so. But that’s really easy, just connect the green cable from the cable tree to any of the black ones. If you make a permanent connection, the supply will provide power whenever it get its AC current. Or, using a two-way switch, you can connect green to either black or purple for turning it on or off.

If you need some power other than 12V, your power supply might also be able to help, there’s 5V on the red cables and 3.3V on the orange ones. Also, relative to GND, you can get -5V and -12V on white and blue, although you shouldn’t count on the exactness (10% tolerance) or hight current capability of the latter two.

Just a few ideas, I’m thinking of building a nice panel with banana sockets for easy connection to all the different voltages and a nice switch and status light, and I promise to put pictures in here as soon as I’m finished.

…which is now. This is my 300W ATX power block (5€, flea market) with 4 banana sockets, GND, 3.3V, 5V, 12V. Next to it is a “real” laboratory power supply, about twice the volume and three times the wight. Both give 12V with about the same current (14A vs. 15A), but the smaller, hacked device also has the two other voltages. It has a fan (relatively quiet) though, while the commercial supply is passively cooled. Also on the picture is the charger which shows that the 12V break in a bit under load, but not problematically so.

Connecting a keyboard, gamepad or other real input devices to the iPhone [planning]

August 8, 2008

Apple allows many kinds of input methods on the iPhone, like multi touch screen, the amazingly usable on-screen keyboard, the accelerometer, the GPS/cell tower/WiFi tracking, the camera and even 4 real buttons and a switch which all allow interacting with applications running on the phone. But there are some things which would require other means of input, like a real keyboard for typing more than a URL or Twitter’s 140 characters or a gamepad for playing NES games in the emulator.

There are 3 possible ways keyboards, game pads or other input devices could be connected to the iPhone. I’ll first describe these hardware solutions and then ponder a bit on the software side.

Cabled keyboards

When the Newton MessagePad, Apple’s previous touch-screen based device, hit the market, one of the accessories from Apple was a keyboard for typing longer texts. It was connected to the Newton’s serial port. Since the keyboard was connected by a cable, both the MessagePad and the keyboad lay flat on the table, taking much space and making the MP difficult to read due to the flat angle.

For the Palm Pilot, basically a cheaper, smaller version of the Newton, 3rd-party-developers released foldable keyboards with a built-in serial connector/stand, so that the Pilot could be put into the keyboard, turning the combination into something like a laptop form-factor, where the view angle was straight on the display. The iPhone also features a serial port, but no official or unofficial keyboard has been announced yet.

Infrared keyboards

Since Palm developed a liking for exchanging the bottom connector layout or even producing models without one altogether, new foldable keyboards with a freely positionable IR diode were produced that promised to survive the switch to a new Palm model. The switch to light-based, non-cabled connections brought one disadvantage, by the way: Now the keyboard had to have its own power supply, normally a AAA battery, that tended to be empty whenever needed. 😉

Since the foldable IR keyboards are still quite pricy, a cheaper way to go might be getting one of the keyboards for VCR-like multimedia PCs from 10 years ago, which now sell for about 4€. But there’s still one problem with this solution, the iPhone has no IR receiver. In another post, I’m dealing with how to connect one.

Bluetooth keyboards

The third category is Bluetooth keyboards. There’s a lot of foldable ones, and Apple also offers a very nice and portable Bluetooth keyboard for their line of Macintosh computers.

A very cool and portable bluetooth keyboard is this lighted-sized device which laser-projects a full-sized keyboard on any flat surface and costs around 100€. The iPhone does have a Bluetooth module for connecting to wireless headsets, but connecting the Apple Wireless Keyboard or any other keyboard is not supported yet, but it might just be in the next firmware version.

Game Pads

The first game pads for early consoles had no logic at all, requiring a seperate line for every button and direction, and later they were interfaced by custom protocols. Those gamepads would need to be interfaced using custom hardware like a microcontroller-based circuit. Game pads compatible with RS-232, the serial protocol that is a standard on many, many computers and devices, are seldomly found. But luckily, Nintendo decided to use standard Bluetooth protocol on their controllers for their newest console, the Wii. Although this controller is not officially supported of course, software like Wiiji or DarwiinRemote exists to use the Wiimote on Macintosh computers, which use much of the same system software.

Software

No matter what method you use to connect a keyboard or other input device to the iPhone, a driver will be needed to do anything useful. I’ll look into this topic as soon a time allows, updating this post.

If you do not want to hack anything, you could just wait for this keyboard with included iPhone driver from MacAlley, whenever it will really hit the market. Another project develops a frame which actually turns the iPhone into a game pad, but this also isn’t available yet.

Turning the iPhone into a universal learning infrared remote [ongoing]

August 4, 2008

Thanks to different applications in the AppStore, the iPhone can already be used to control a variety of devices that have some form of IP connectivity, like the Apple TV, the Tivo DVR or Linux-based DVR solutions.

Most consumer devices like TV sets, HiFi components or broadcast receivers only have an IR-sensor for remote control. The iPhone doesn’t have an IR-diode built in like other phones or PDAs which used the pre-Bluetooth IR method for data exchange, which was ironically introduced by Apple with their Newton MessagePads for use cases like “beaming” business cards.

So, to make the iPhone able to talk to those devices, additional hardware has to be connected to the Dock connector. I recently bought the SMD-variant of the Unzapper, which is an Atmel-based generic IR transceiver (meaning that it can send and receive IR codes). The Unzapper is a really nice device for testing, but it has certain disadvantages:

  • The firmware currently doesn’t support sending custom code or learning. fd0, the developer, will add those features in the near future for the USB connection, then it will be quite easy to adopt that for serial connections.
  • The 4 buttons, 2 LEDs, USB connector, ISP header & power connector eat up a lot of space. Perhaps this should be left out for a version that can only be controlled via other devices, but is a lot smaller.
  • The whole circuit is designed to run on 6 – 12 V, which is stepped down to 5V for the mc. The iPhone can only supply 3.3V. Also, iPhone’s serial lines are described as accepting and dishing out 3.3V levels, making a level convertor or a lot of luck necessary. It might be nice to reconstruct the Unzapper to run on 3.3V only.

Here ist a comparison between the stock Unzapper and my slave unzapper. Note that the original crystal is still in place, it was sitting there to make USB connections possible. It might be removed, but that would break the compatibility with the stock firmware that is built to run on 16MHz. Also, the values of the caps, transistors, resistors and stuff has not been recalculated. Also, the net for supply voltage still says +5V. This is the voltage that is in that net when the device is connected to the ISP programmer, but when connected to the iPhone, the whole system runs on +3.3V. The ISP header is important for prototypes but can also be left out when the final system is optimized for size.

Charging the iPhone 3G from a low-cost solar battery [finished]

July 31, 2008

So, as my fellow iPhone 3G users will know, the battery life is not really sufficient to last through the day when the device replaces a cellphone, an iPod and a portable gaming console. Special battery packs exist, but they are quite expensive and make the device a lot bigger so it would no fit into a iPhone case any more.

The Chinese Internet store Deal Extreme sells a 2000mAh battery that recharges itself using the built-in solar panel for less than 11,50€ including shipping. That would be enough for recharging the iPhone completely. I ordered it to play around with it a little bit. By the way, if lugging around the whole power plant seems strange, you could use a 2xAA emergency USB socket (like this one) and recharge the batteries at home using a solar battery charger (like this one).

The battery looks quite good, it it roughly the same size as the iPhone and surprisingly light. It has two LEDs, a green one thats shows how much the battery is reloading (the brighter the day, the brighter the LED) and a red one that glows as soon the included 30cm pigtail with a USB-A socket on the other end is connected to the strange proprietary socket on the battery. The pigtail is a bit long for my application, but OK, you can’t have all at once.

After removing the panel, you see a very nicely done circuit board and an unlabled Li-Ion battery that might actually have the capacity that is advertised. If 2Ah isn’t enough, there’s plenty of room to add another battery, giving the whole thing 4Ah.

Connecting a stupid USB LED light, it works, but the iPhone 3G doesn’t start charging when I plug a retractable 1€ iPod sync cable into the pigtail. I read somewhere that the iPhone had to be told to recharge by the iPod helper software (It also doesn’t recharge if you plug it into a Linux box), so only feeding it 5V won’t do the trick. On an iPod pinout page, I found a description stating that I had to pull D- to 5V and D+ to GND, but that also didn’t work. Time for measuring the original Apple USB charger, which certainly doesn’t run iTunes and puts out 2.8V on D- and 2.0V on D+, but there’s no way I could put 4 different resistors into the iPod plug to feed it both these currents.

But 2.5V, which is what I get when I cut USBs 5V in halves with two 200k resistors (12uA leak current…), might be close enough. Tried it and it works, the iPhone charges. Great!

For Jeff commenting below, I included the best pic I have (my camera sucks big time). Just remove the two data cables, take the 2 resistors and solder them together as closely as possible. Cut one of the legs without resistor and bow the other around, giving an M shape. Cut all three wires to have the same lenght. Solder the two legs with resistors to the two pins that have the power cables and the other leg to both the now free pins. They are quite close to each other, so you can bend them together. Btw, the resistors were produced in the GDR circa 1970, funny they now are used to charge capitalistic high tech equipment.

The whole setup will be so small that you can still put the plug back into the original casing, I had to label the new cable so I do not mix it up with the other ones and wonder why it doesn’t sync:

I tried hacking together a schematic with OpenOffice.org, but this was an utter failure. 😉

Why this?

July 31, 2008

To try out the WordPress application on the iPhone and also because I had been asked to write a bit more about my projects than fits into Twitter’s 140 characters, I started this blog here. For more up-to-date information, you can follow me on Twitter. (Most of my tweets are in German though…)

If you have any questions, suggestions or feedback, please leave a comment!