Hardware Projects

Drones with RFID Sensors

RFID tags are the perfect platform for sensors: cheap, small, and with an infinite lifetime because they harvest energy from RF signals when communicating. Their only problem is a very limited communication range. In this project with Travis Deyle and Jennifer Wang, we used mobile robots to distribute and read sensorized RFID tags.

We explored applications in Agricultural Monitoring, Infrastructure Monitoring, and Water Quality Monitoring, and used autonomous aerial drones and ground vehicles to communicate with distant tags planted over a wide area.

IoT-enabled Bike Sharing

For our CS244r final project we built a smart bike lock and an iPhone app that allowed users to rent out their own bike, or to rent other people's bikes. Our server generated Time-expiring One Time Passwords (TOTP) that were passed to the phone, and then to the lock over BLE if a user has permission to rent the bike. We focused on security / encryption to ensure that malicious users could not unlock a bike when they were not supposed to through replay attacks.

Spectroscopy Instrument

For a semester long design project, I worked on parts-per-trillion precision HCl detector that will fly on the Harvard / NASA "StratoCruiser", a long endurance balloon that can move around the stratosphere to investigate Ozone loss. In order to attain our required precision with strict weight and power constraints, we used ICOS laser spectroscopy, which measures laser absorption through a sample of gas.

Robot Circuit Boards

I spent the past school year leading a redesign of Robot Soccer Team's electronics for increased reliability, flexibility, and backwards communication. The robots have two way communication with a central computer over Xbee Radios, 3-phase brushless motor controllers that pull up to 5 Amps of current each, and capacitor charger that lets us driver a solenoid with 250 Volts to kick the ball at 8 m/s. I also learned about manufacturability when it came time to solder 4000 components to assemble our entire team before the competition.

Robotic Drawing

My final project for Advanced Robotics was to draw pictures from an input photo using a Catalyst-5 robot arm. Standard edge detection algorithms were just the beginning of my processing pipeline, the real challenge was to connect these edgelets into continuous pencil strokes for the arm to draw in the most efficient manner.

To find the best pencil strokes I transform the image into a graph, where edge pixels are nodes and adjacent pixels are connected by edges. I then repeatedly selected and removed the longest shortest path from the graph, which I found to be the fastest and most accurate heuristic for human-like drawings.


As part of a class on computing hardware, I designed and implemented a multicycle MIPS RISC architecture CPU on a Xilinx FPGA using Verilog. I started by creating the Arithmetic and Logic Unit (ALU) that is the heart of any CPU using combinational logic. I then created the datapath and control structure that loads instructions from memory, decodes them, and forwards the correct data between registers, external memory, and the ALU. My teammate and I also wrote an assembler to translate MIPS assembly language into the native machine code understood by the processor.

The class also covered pipelining, memory cache performance, branch prediction, and compiler optimizations.

Smart Contact Lens

This summer I'm working at Google[x] in the Smart Contact Lens group. The lens is designed measure glucose levels in tears and transmit information to your other devices. This will allow people with diabetes to continuously monitor their blood sugar levels throughout the day without drawing any blood.

We are also developing vision correcting lenses that dynamically change their focus like a digital camera, to help people with contacts switch between looking at near objects and far objects.


As part of my Laboratory Electronics class, I built a microcontroller from scratch in order to see how computers work at the most basic level. The processor is connected to 32K of RAM as well as an ADC and DAC through a shared data bus and address bus. Because I implemented the logic to control the buses myself I now understand how the processor, the memory, and I/O devices communicate over the same wires in a tight lock-step without ever interfering with each other.

Stirling Engine

My applied physics seminar focused on designing, modeling, and building a stirling engine. We learned the thermodynamics and operating principles behind the engine, and used them to model the theoretical efficiency of the engine based on a number of design parameters in Mathematica. Using Mathematica, we found the parameters to maximize efficiency and then constructed the engine. Our engine used metal bellows instead of pistons to decrease friction.

Steam Engine

For my high school senior project, I decided to build a steam engine. With only a drill press, a dremel, and a hacksaw, I built a crankshaft connecting a 45 lb flywheel to two pistons. I hand-sanded piston heads out of HDPE so that they were airtight with the aluminum piping I used to make my cylinders, and created a valve system to connect and disconnect the pistons to steam out of commercially available plumbing products. The valves were actuated by a rod that connected to the crankshaft.

Cellphone Based Robot

For my final project in Introduction to Electrical Engineering, my group created a robot that used an android handset as its processor. The robot was able to receive instructions through the cellphone's data service and also stream back video from the phone's camera.

I chose to use a cellphone as the base of the robot over the more conventional choices of a micocontroller or a full computer because cellphones are already optimized for mobility and come with standard technologies that are extremely applicable for robotics. A standard phone comes with a fast processor, a cellular data connection, GPS, a camera, an accelerometer, and most importantly a long battery life.

Shock Absorber

As the final project for my Mechanical Systems class, we had to design a shock absorber that would minimize the impact force of a 10lb weight dropped from 2 meters, as well as model the system as springs and dampers to predict the maximum force during the impact.

In order to achieve the lowest maximum force, we focused on giving the system as much displacement as possible. Our shock absorber was able to collapse from a height of 100 cm to 10 cm on impact, more displacement than any other team. Our group also had the lowest percent error in our prediction of maximum acceleration.

Vex and First Robotics

During high school, I was the lead mechanical engineer on my school's robotics team. We competed in FIRST robotics and then the Vex Robotics Challenge, making it to the World Championships four years in a row.

Freshman year we made it to the final match of the World Championships, and a different year we received first place in the Nationals Championships for our autonomous program.

Copyright Erik Schluntz 2014.