This page contains links to some of my old software projects in AVR-C/Assembly, Java, and Objective-C.

1. Solving Schrodinger’s Equation

A wave-particle tunneling through a finite potential barrier.

A wave-particle tunneling through a finite potential barrier.

An interactive computer program that uses Numerov’s method to numerically evaluate time-independent particle wavefunctions for various potentials that can be adjusted by the user. I wrote this GUI in Java for my 9th grade introductory programming final project. In addition to modeling simple systems like a particle in a box, the program was also able to solve for Hydrogen atom orbitals and their energy eigenvalues.

Project Page

2. Analog to Servo PWM Converter for Electric Vehicle Throttles


The converter hooked up between the throttle and motor controller.

Sometimes (often!), it’s desirable to convert an 0.8V – 3.6V analog value from a hall effect scooter/Ebike throttle to a servo PWM signal that can be read by the brushless motor controller on your vehicle. I used the ADC and a timer/counter module in an ATTiny85V microcontroller to implement this conversion in my attempts to reincarnate StraightRazer (more on that someday…). The code and Eagle files should be useful to anyone trying to use an EV throttle with a Hobbyking ESC in their scooter.

Project Page

3. Wireless Control of a Quadrotor From an iPad

It's getting away!

It’s getting away!

This iPad app was written for my 11th grade iOS programming final project. It uses the iPad’s WiFi capability to communicate with a (slightly hacked) Hobbyking wifi module. Yaw and throttle are determined by joysticks on the iPad screen, while roll and pitch are determined by the physical orientation of the iPad, which is read using the built-in accelerometer and gyroscope.

Here’s a youtube video. It worked much better than this later on, but I never documented it properly and the iOS code has since started refusing to compile because new versions of Apple’s app development software and programming language are not backwards compatible. I wish I’d written it for an Android!


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s