Slow Scan TV
This is a ham radio related project. Traditionally, communicating with Slow Scan TV (SSTV) over ham radio has required a lot of equipment. Even today, hauling around laptops and cameras is too much equipment for many applications.
Today’s smart phones bring a lot to the table that could make SSTV easier. These phones include built-in cameras, powerful processors, and sound abilities. Using these capabilities, we could see SSTV operations shrink in size.
My project is to develop SSTV tools and apps that will assist in making this more possible. I’ve already begun playing around by writing a python app to convert pictures to SSTV signals. The next step is to write a basic app to use this capability to provide a proof-of-concept.
HP Superdome 2
While at Hewlett-Packard, I’ve worked on firmware for HP’s next generation Superdome 2 platform. Primarily I’ve worked on the firmware update feature, but I’ve also worked a little on the GUI and console.
Web Sites
I’ve built a number of website over the years. Those which I currently maintain include:
- JacobBrunson.com — this web site.
- Square Galaxy – my general purpose blog.
- Vanilla House Designs — an e-commerce website for my mom’s business which sells sewing patterns. For this web site, I wrote a custom shopping cart which interfaces with Google, Paypal, or Amazon as a custom WordPress plugin. I also created another, related site to sell discontinued patterns.
- HamRadioClub.net — a domain with which I can provide sub-domains for ham radio clubs.
Previously, I have worked on:
- A web site for my high school, in raw HTML and flash.
- The website for the BYU Department of Chemistry and Biochemistry, using a content management system that I wrote from scratch using PHP, MySQL, and LDAP.
- The website for the BYU College of Physical and Mathematical Sciences, using a wiki system that I wrote from scratch.
- The website for the BYU Cancer Research Center, using Plone
- The website for the Rex Lee Run, which included an online registration and payment system. I wrote this website using PHP and it has collected registrations for many thousands of runners and many tens of thousands of dollars.
- A web application to work as a library-like checkout system, written in PHP and Javascript.
HamRadioClub.net
I bought the domain, HamRadioClub.net hoping to help ham radio clubs to better manage their own websites.
Google Docs Uploader Apps
I have written two different applications to upload documents and files to Google Docs. Combined, they have had over 18,000 downloads and are both open source. Both applications are published as GDocsUploader. Both work similarly, and allow a user to drag and drop a file’s icon onto the uploader icon for automatic uploading to Google Docs.
I first wrote a Mac OS X version, which uses a combination of Applescript, Python, and the GData APIs to deal with the user interaction and the uploading. A project called Platypus helped me to bundle the whole thing together as a distributable app.
Later I wrote a cross-platform version using Adobe Air. The whole thing is written in Javascript/AJAX, including a basic HTTP client which interacts with Google’s servers on a socket level.
Y-Not: BYU’s DARPA Grand Challenge Car
For 6 months I worked on BYU’s team for the DARPA Grand Challenge, a content for a completely autonomous vehicle for urban driving.
My part of the project involved writing in C code a path tracking system that uses calculates clothoids (continuous curvature) between multiple close waypoints and then calculates the rate of change of the angle of the steering wheel.
Arduino Project

This is my Arduino compatible board that I built from a kit. I’m excited to do some low-cost embedded system programming, but I haven’t yet decided what project I should undertake.
I found a forum which shows off a bunch of various projects, maybe I’ll decide to do something similar to one of the ones presented there.
Web Site Statistics
I’ve been working on two methods for displaying users clicks. I gather click statistics with AJAX and save the data into a database. With one method I render a screenshot of the page and overlay semi-transparent dots showing where users have click. The other method I record the id of the page element that was clicked, and later I can shade the page elements differently based on the most clicked elements.