Category Archives: DIY

Pionier Button Hacking: Step 1

pionierbutton_sm.jpg

(eventually I’m going to have to hack up a light tent (for the glare) and camera mount(for the jitter) for this kind of thing, but it hardly seems necessary with my little point-and-shoot)
One of the more promising bits of schwag at SC09 was a little USB button thing handed out by Pionier. The basic premise on the button is that after connecting it to a computer via USB, it lights up with enticing shifting colors, and, when pressed, sends the computer to the pionier SC09 website. It does this by announcing itself as a USB HID device, emulating a keyboard, and typing “{control}rhttp://www.pionier.net.pl/webstarter/09scpo6r8q {newline}”, which will have the desired effect… from the desktop on a windows box. After seeing what it did on a laptop on the show floor, I grabbed a few extras thinking they would be fun to hack.

I pulled apart one of the buttons to read off what the chips are, and things look promising. (larger image linked)

pionierbuttonteardown_sm.jpg

The board is based around a MXT8208 USB 2.0 Flash Disk Controller (datasheet). The chip consists of a 80c51 microcontroller with hardware USB 2.0 PHY, I2C, a general purpose UART, some dedicated flash management features, and 28 GPIO pins (mostly overlapped with other functions) in a LQFP48 package. This means it SHOULD be susceptible to much better hacks than simply changing the output string; with a little luck it will be convertible into a darling little intermediary device for attaching projects to a computer via USB by serial or PIO. Since there is no flash chip hooked up, the majority of the GPIO pins are free, making it especially suitable for that kind of repurposing. By far the primary use for this chip is making little USB flash drives (and, based on the information around the ‘net, this one is particularly favored in making “fakes” that misreport their capacity, because it is more programmable than many of it’s competitors), but, assuming I am interpreting the chinglish datasheet correctly, the non-memory USB widget use case here is intended as well. Matching the suggestion in the datasheet, the software for the button behavior is (apparently) on a K24C64 64kbit Two-wire EEPROM (Datasheet) mounted on the other side of the board.

The other components aren’t terribly interesting: a pair of SMT push buttons, a 12Mhz crystal, 6 assorted SMT capacitors, 3 assorted SMT resistors, and a 2-lead RGB color phasing LED(unfortunately, 2 leads means it probably can’t have it’s behavior altered beyond on/off).

Software wise, it reports VID=0×2000, PID=0xbeba, which seems to be a made up ID written to the chip in software. There is a UdTools utility offered up by micov (after a little bit of google translate-foo), but it only seems to be able to tweak the flash-specific functions, not perform general reprogramming. This IS promising, as it implies everything should be writable from a host computer, rather than having to pull the EEPROM and program it separately to alter the behavior, but I haven’t figured out how to do so yet.

Any ideas? Usage wise or tools wise?

Posted in DIY, Electronics, General, Objects, OldBlog | 2 Comments

Makers

I recently finished Cory Doctrow’s new novel, Makers, which I really didn’t have time to read, but between geek book club and starting it on the plane to portland I was compelled. Like his last novel, Little Brother (which is YA fiction, but everyone should read anyway), I read it as an eBook on my n810, which is a bit of an odd reading experience, but one that is growing on me (No additional mass/volume per book! Searchable! Ever-Present! Until the damn battery runs out or it breaks!)
It is a pretty fun read, but I must say I liked the first two “lighter” sections better than the third. Some observations:

* Kettlewell seems to be largely borrowed, without the transparently symbolic name, from Willam Gibson’s character Hubertus Bigend

* Suzanne Church strikes me as a sort of composite of the notable female Internet-People, particularly Ana Marie Cox but Xeni Jardin also come to mind. I also wonder if the name isn’t a slight homage to Susan Kare, who is responsible for a starting portion of the art for early iconic computer interface elements (this is a stretch, but only a little). A little googling shows there is also a fairly appropriate real Suzanne Church, which must be a little confusing right now.

* The tech in the story is not embarrassingly wrong; its all plausible and sound except for some fanciful detours near the end. This does not normally happen when engineers read fiction, so good job Cory.

* Cory has clever ideas to try, and the hackers are damn well going to implement them. I suspect many of the things that seem clever in the book (RFID tagging all your crap to make it searchable, for example) won’t actually pan out if implemented, but I’m onboard with other things, especially the mechanical-computers-as-art hobby one of the main characters engages in.

Overall, a fun light read, worth the couple hours it takes to get through. Surprisingly, I think someone who isn’t well-versed in the workings of electronics could read the whole thing without missing much, which is remarkable considering how much fun can be had by those of us who are by working out the minutia of how the nifty plot device gadgets would actually work.

Posted in DIY, Entertainment, General, Literature, OldBlog | Tagged , | Leave a comment

SC09 Booth Hacks

sc09booth1.jpg
The aggregate.org booth is cheap. Really cheap. So cheap that most of the major vendors have single pieces of hardware that cost more than our entire booth. But we still looks classier than all but a handful of the booths on the exhibit floor. This is because we were clever. Where other exhibitors have 42”+ LCD screens, we have large swaths of plasticized paper, wrapped around a modular shelving frame, and rear-projected to by a bunch of old XGA projectors. Because all displays have black backgrounds, we have what is visually four, four foot diagonal displays with no edges. For less total cost than a single 50” LCD. The group has been using a rig like this for years.

I’ve already written about the sign tower. It’s now complete, and is the kind of object that other people use as a beacon to navigate the show floor. It is also the mount for our previously mentioned slow update skycam.
printondemand.jpg
A new clever widget of ours is the on-demand handout printing system. We new we wanted on-demand printing, so we brought a printer, a big lighted trackball, and an extra (decade old) laptop. Over the course of the morning, I assembled an intentional-, professional-looking setup. Originally, I was envisioning a simple, full screen, GTK application, but setting up one-click printing in GTK is a pest, so I came up with a much, much better hack (erm…solution): HTML. I made a simple HTML page, with a table of captioned 300px wide thumbnails of the technical handouts, linked to the real PDF files. I then abused the Firefox settings on the laptop, so that the default automatic handler for PDF files is… lpr. One click, and the requested file is automagically printed, in a separate background process, with the queue managed transparently by CUPS. Set Firefox to full-screen display, and, with a little bit of styling, instant classy interactive on-demand printing interface, that isn’t an obvious hack job. Based on opening night, the slow printer is having a little trouble keeping up with demand, but so long as we keep a reasonable buffer, the system is really nice, and the slight delays it produces have repeatedly given visitors a chance to latch on to one of our other projects.

Thus far, definitely a fun conference, with lots of neat things to do. Also a really, really large conference; the woman at the checkin desk at our hotel said the conference took up about 6,000 rooms,and the idea of 11,000 or 12,00 attendees isn’t incongruous.

Posted in Computers, DIY, General, Objects, OldBlog, School | Tagged , | Leave a comment

Buildycrunkin’

I am currently at Buildycrunken #1:Hocus Focus. It is packed with people and win.

buildycrunkin1-1.jpg

To clarify, according to the mailing list, Buildycrunkin’ (a verb) is what one does at Buildycrunken (a noun). I suppose that means I am gettin’ buildycrunk? It is very important to establish proper etymology in these situations.

And look! its diverse geeks. Not just the usual computer folks, but knitters and boardgamers and geeks of all kinds (including, you know, girls…)

buildycrunkin1-2.jpg

Posted in Announcements, DIY, Entertainment, General, OldBlog | Tagged , | 1 Comment

Buildycrunken #1 : Hocus Focus

Collexion, in collaboration with our hosts Third Street Stuff and Coffee, and participants groups like ReBelle Stitch & Bitch, National Novel Writers’ Month’s Lexington writers, and the Kentucky Ruby Users Group are holding

Buildycrunken #1: Hocus Focus

9:00 PM Nov. 6th through 9:00 AM Nov. 7th (yes, thats ALL NIGHT HACKING) at Third Street Stuff & Coffee. The idea of the event is a social, collaborative environment to work on projects of all kinds.

I probably won’t stay the whole night, but I do plan to head over to 3rd street in the evening and join in. I’ll either flit around and join in some of the community projects (the Collexion mailing list has chatter about a homebrew IR Laser Tag system…) or try to get some work done on one of my projects as suits me. There will be workers, hackers, knitters, programmers, gamers and goings on of every sort; I encourage everyone to come join in.

Posted in Announcements, DIY, General, OldBlog | Tagged , | Leave a comment

xlock on pm-suspend

I’ve always preferred that my machines be locked when they wake up from sleep/suspend/hibernate/etc., and this has been a little bit of a fuss to hand-configure on Linux of late. The problem is that the pm-utils suite that almost all distributions use isn’t really well suited to triggering a lock, and not everyone thinks it should be able to. The Ubuntu solution follows the “not in pm-suspend” idea, and predictably adds another (bulky) layer of abstraction, using gnome-power-manager lock the screen and call the suspend scripts separately. Because I don’t always call pm-suspend the same way and don’t want an extra thing running anyway, that isn’t an option for me. So, a solution to run xlock on every invocation of pm-suspend that ACTUALLY WORKS is to add an appropriately named file in /etc/pm/sleep.d, like the following:

22lock

#!/bin/bash
user=`finger| grep -m1 :0 | awk '{print $1}'`
case $1 in
    hibernate)
        su $user -c "xlock -mode blank -display :0&"
        ;;
    suspend)
        su $user -c "xlock -mode blank -display :0&"
        ;;
    thaw)
        ;;
    resume)
        ;;
    *)  echo "The xlock-on-sleep script is broken"
        ;;
esac

Remember to make the file executable (chmod +x).
The finger/grep/awk incantation at the top is a cheap (and not entirely proper) way of grabbing the first user on display :0, which is USUALLY the user logged in on what is USUALLY the local X server; sudoing to an appropriate user (and the explicit “-display :0”) is required because the script is run in an environment where the display isn’t visible and the user is always root.
xlock and it’s options can be modified or swapped out for your screen-locker of choice.

(Posting as a reminder to myself, and because I didn’t see a solution when I searched)

Posted in Computers, DIY, General, OldBlog | Tagged | Leave a comment

N8x0 PowerVR Drivers!

Since the N800 came out there has been a lot of rumbling in the community about the unutilized hardware present in the device (and it’s sibling/successor, my beloved N810). The piece most complained about are the PowerVR MBX 3D accelerator and 5MB SRAM included on the OMAP2420 SoC the device is built around. The explanation has always been a mixture of licensing issues for the drivers, and that the external Epson S1D13745 display controller was better suited to the 800×480 (still unusually high for mobile devices) resolution, despite being rather slow and devoid of 3D-capability.

With the advent of the N900 and it’s non-backward-compatible Maemo 5 OS, there is some fear in the community that the N8×0 devices will be abandoned. The N900 looks like a very cool device, but like many tablet owners, part of the appeal of my N810 was that it wasn’t designed to have a >$50/month cellular data plan. Nokia’s offical (and seemingly very classy) stance is that they will provide support for continued community developed FOSS software for the platform, which currently mostly means Mer, a community firmware/ partial Maemo 5 backport. There are also several other linux-based OS ports to the N8×0 platform, and a burgeoning effort to produce a binary-compatibility-maintaining system software update like the ones Nokia used to produce for Maemo 4 which will hopefully all cross-pollinate sources and keep the platform alive. One only has to look at how long the OpenZaurus (later merged into OpenEmbedded/Ångström) community held on, and how much they accomplished to be hopeful.

The combination of these thoughts? Nokia (and the various other relevant IP owners) announced they will be supplying drivers for the PowerVR to the community in the immediate future. With a little luck the Mer hackers will get them integrated into a release soon, which may contribute to tipping to Mer as the predominant OS for n8×0 devices over the OS2008/Maemo 4 stack Nokia provided.

I depend so much on my n810 I haven’t really been into OS hacking on it, but as it ages and the community firmwares come to the fore I suspect I’ll get more into it (if I have time). Maybe as they get cheap I’ll even end up with one of the “knockoffs” to use as a test platform in the same primary machine/beaterbox setup as my bigger machines.

Posted in Computers, DIY, Electronics, General, OldBlog | Tagged , , | Leave a comment

Barrel #2: Away

barrel2guts.jpg
The 12-note barrel is away. I’m pretty sure everyone from Collexion involved is well and truly done with this particular stunt, but it was a neat project with some great results. This one went through the School of Music’s benefit gala to benefit the School of Music Service Organization. It only pulled in $750, but with the lower materials cost that still represents some income for the benefiting organization. The picture above is (almost) all the guts for the barrel, before being assembled and installed.

Posted in Announcements, DIY, Electronics, Entertainment, General, OldBlog | Tagged | Leave a comment

Musical Barrel #1

One of my hobby projects just came to fruition earlier tonight. A team from Collexion has been working on building a pair of musical Bourbon barrels to support local charity auctions. The first one (6 notes from an internal glockenspiel, triggered by capacitive touch sensors on the rings, with an excellent paint job by Sam Wilson) sold earlier tonight at Spirits of Giving, bringing in $1500 to be split between Collexion and the Nash Brigthon Project. It’s great to be doing technological art, and it’s great that it can be used to support good causes. I forgot to bring my camera, but as soon as I get sent pictures from the people who did have them I’ll throw at least one up.

Edit: I don’t have pictures, but here is a video of the demonstration.

Posted in Announcements, DIY, Electronics, General, OldBlog | Tagged | Leave a comment

Dorkbotlex #6 – Results

3937981657_2a0f07b6cd.jpg
It was, as always, a great show, with lots of inspiring local projects and an engaged audience. Hopefully sometime in the not TOO distant future I’ll actually get one of the hobby projects (the ones that are not so technical as to make non-engineers’ eye’s glaze over) done enough to show.

The usual, photos from the event are up on my flickr stream.

Posted in Announcements, DIY, General, OldBlog | Tagged | Leave a comment