Eric Wong

software engineer by day, software tinkerer by night


I like programming and building stuff and playing with microcontrollers.

I currently work at a stodgy defense contractor. This is my outlet.

» More about me


Photobooth software I wrote using Python

Android app to talk to the GeogramOne open source tracking device

I'm a spare-time contributor


Archives »

Converted blog to Pelican

WordPress seemed too heavy for such a small blog as this one. Plus you hear about all the vulnerabilities in WordPress. Easy as it is, keeping WordPress and its plugins up to date was becoming a chore.

Octopress, a static site generator that uses Ruby, piqued my interest. Being a Python fanboy, I found the Python equivalent of Octopress in Pelican. I exported the few posts I had in WordPress and imported into Pelican. Some tweaking over two nights and my blog is now generated statically! The only downside is having no comments for the blog now, but I don't think I have any readers and 99.99% of the comments was spam, so it's a moot point. If anyone wants to make a comment, use the tweet button at the bottom of each post or email me.

Posted on July 22, 2013 at 11:15 PM by Eric in Python

Open Source Photobooth Software

I open sourced the photobooth software I wrote for my sister's wedding.  I wrote it in Python (and built the photobooth itself) over the course of a month in 2012.  It uses OpenCV to grab frames from a camera and the GUI is built with pygame.

But the software was the easy part. With my (lack of) woodworking skills, the photobooth itself took more time to build.

Building the photobooth

I had two little helpers My little helpers

Building the booth enclosure out of PVC pipes: PVC enclosure

Photobooth on location

Photobooth on location Inside the photobooth

It's not the fanciest photobooth there is, but it was a big hit at the banquet!

Got my Stellaris Launchpad

The TI Stellaris Launchpad I ordered a few months ago arrived yesterday. For only $4.99, it's quite a deal. An 80Mhz Cortex M4 ARM microcontroller with 32K RAM, 256K Flash and loaded with peripherals.  It was pretty easy to get started with it on my Windows 7 machine.  I needed the following software and drivers:

I installed all the drivers and software and was able to compile some of the sample code programs from StellarisWare Software and flash it onto the Launchpad.

I also have a MSP430 Launchpad that I've been fiddling with. I built a RS232 Shifter to convert the MSP430's 3.3V signals to RS232 voltage levels. I used the schematic found on Sparkfun's RS232 Shifter Board Kit, along with a bit-banged serial port on the MSP430 itself, and it works great.  (I've ordered a bunch of headers so I won't have wires directly soldered anymore!)

TI Launchpads

Next, I'm trying to get the MSP430 talking to a Dallas Semiconductor DS1820 digital thermometer.

Long term, I see a bunch of MSP430 Launchpads (or my own custom MSP430 hardware) interfaced with various sensors (temperature, humidity, detect open garage door, electricity monitor) reporting data back to the Stellaris Launchpad, and other MSP430 hardware with actuators (not sure what yet) that the Stellaris can command.  The Stellaris will serve as a data collector and home automation controller and provide status/control via a simple webpage.  That would be cool and fun project if I can find the time to do all that.

Becoming a full-fledged Mozilla contributor

The first Firefox bug I've submitted a patch for is in the recently released Firefox 15! I've since worked on another Firefox bug, slated for Firefox 17, and am currently working on two more bugs.

Being a fan of Python, I am also trying to work on some Mozilla Release Engineering bugs, but run into problems trying to replicate the dev environment used. This area, while interesting, is not as well developed in terms of documentation or process for outside contributors; their wiki information on setting up a dev environment is somewhat geared towards Mozilla employees.

But while I haven't made any real headway on any release engineering bugs yet, I do have a partial dev environment up so that I can attempt to tackle a subset of their bugs, mainly the ones that don't rely on having permissions to Mozilla's massive build infrastructure. I also want to get involved with Autoland after reading Lukas Blakk's (a Mozilla Release Manager) blog post on Autoland.

All in all, I feel like I am well on the way to becoming a full-fledged Mozilla contributor.

What to do with MSP430 LaunchPad?

I ordered a MSP430 LaunchPad a few months ago. I haven't gotten beyond the blinking LED stage yet. Still trying to come up with a project idea to implement with it. I'm thinking some kind of simple robot or toy to entertain my kids.

Page 1 / 2 »