View my resume
Riley Tuttle

Riley Tuttle

Computer Engineer

Hi, I'm Riley.

I'm a computer engineer with a passion for solving everyday problems.

Professionally my interests are in Consumer Electronics and frequently my personal projects involve embedded systems In my spare time you'll probably find me playing frisbee or working on my old cars and motorcycles Check out some of my projects below Feel free to contact me.

Professional Experience

Embedded Software Engineer

iRobot

May 2019 - present

Coding reflexes and behaviors into the production robots. Using C++ and OOP principles to create robust state machines allowing the robotic vacuum cleaner to move about the home.

Lead an effort to modernize portion of the codebase to facilitate unit testing. Organized code into classes with easy to understand state machines. Wrote unit tests using the google test framework.

Embedded Software Engineer

Mayflower Communications Company

Septempber 2018 - May 2019

Wrote low level drivers for hardware components such as Gyroscope, Accelerometer, Magnetometer, and Barometer Implemented code responsible for reliable GPS receiver positioning in government applications.

Embedded Linux development. I worked on ruggedized handheld radios running embedded linux. I was tasked with working with hardware drivers linux system networking to support different network topology demonstrations.

Ran demos to showcase different capabilities of the GPS receivers for high level government officials.

Developed a GPS tracking Web Application. This effort supported "field testing"; Taking receivers out on the road to test new algorithms and collect data. Previously we needed to post process the collected data to see how close to the truth our new algorithm was. As a side project I developed a web application that plotted the receiver's calculated coordinates on a downloaded map (downloaded maps removed the need for internet access in a car).

Graduate Teaching Assistant

University of Rhode Island

May 2016 - May 2018

Developed and proctored lab series for senior level Computer Engineering class Taught students: computer organization levels including designing hardware (in VHDL) for FPGA and interfacing it with system via a device driver; developing software in C for embedded system in Linux environment using cross compilation; and Python coding exercises.

Computer Engineering Intern

IAV, Gifhorn Germany

Feb - Aug 2015

Developed analysis tools to visualize automotive sensor data The tools were used to analyze emissions performance of Audi 6 and 8 cylinder diesel engines These tools were developed using MATLAB.

Electrical Engineering Intern

Sensata Technologies, Attleboro MA

Jun-Aug 2014

Developed debugging tools for an automotive pressure sensor The Arduino interface communicated with the sensor via I2C and with the host computer via USB. The GUI portion of the tool was made with MATLAB.

Noteable Courses and Projects

Electic Wheel Barrow

Personal Project

2021-2022

One day I saw my father trying to load a very large rock/boulder into a wheel barrow. At that point I realized that I never really cared for the design of the common everyday wheel barrow. Instead wouldn't it better to have lower to the ground platform. And then for good measure wouldn't it be nice if the wheels were individually motorized. And if the wheel modules were designed just right they could be identical and modular. At this point I started trying to make a prototype. Started by combining 2 Power Wheels toy cars, a motor controller, raspberry pi, and controlled it with a playstation 4 controller. Below you can see it carrying some rocks as a proof of concept

At this point I realized 3 things:

  1. I would need more powerful motors
  2. I would need to make the software more robust
  3. I wanted to be able to do testing indoors
For 1 and 2 I bought some 24V electric scooter motors and drive wheels. And I converted to using ROS2 for my control software. This opened up many doors. For 3 I 3D modelled a 2 piece chassis. One piece holding the brains of the wheelbarrow or cart. The other part holding the drive motors/wheels and batteries. this would allow me to just plug the brain into the small test body and later the bigger body. At this point I wanted to test more of the features of ROS2 so I added a camera to the robot with the hopes of getting some kind of visual odometry setup. Possibly even some kind of follow me feature. It would make more sense for a robot like this to have encoded wheels but I sourcing parts is hard in post Covid times. Speaking of sourcing parts I really wanted to use a playstation 4 eye that I had laying around because then I would get some 3D mapping for free but I would need a raspberry pi 4 for this to work and I still cannot get my hands on one. At the very least I have a pretty neat remote control car until I can source more parts or get around to building the larger wheelbarrow platform. Check out my code here.

Auto Cone

Personal Project

2021-2022

My sister lives in the city. It's pretty common to see traffic cones, lawn chairs, garbage bins, etc being used as space savers on the side of the street. It's also pretty common to see them blown into the street. So I started trying to build an automated platform for space saving. For now it just deploys a cone or flag if there based on some phone app input with a distance sensor to tell when there might be a car over it. But one day it could have a camera that could allow for integration into home monitoring. Or stowing the flag automatically when specific license plates come near. Below you can see the simple prototype I made. Check out the code here.

Smart Thermostat

Personal Project

Fall 2018

Utilized a raspberry pi and temperature sensor to make my own smart thermostat It installs on top of the current thermostat So the original thermostat is still 100% functional (good for apartment living where I don't want to make any permanent changes) It also connects to Apples homekit so Siri can control it. Update: I have set up more of a hub and node architecture in the hopes of reducing the power and running on battery someday Now the temp sensor is attached to NodeMCU while the raspberry pi can be remote to the houses thermostat.

One handed typing application

Personal Project

Fall 2018

This project requires a bit of background. In short typing with one hand on a keyboard can be achieved by utilizing the muscle memory of the other hand see here for more details Most implementations require some modifier key to tell the program that the typist wants to type a key from the other side. I envisioned and implemented a version that guesses possible words based on all the possible combinations of letters cross referenced with a dictionary. I believe this version is much more natural. Right now it only works in Windows because the predictive text program I leveraged from only works on Windows.

Automated Temperature Sampler

Senior Capstone Project for Eagle Electric Engineering Enterprise (4E)

Fall 2015 - Spring 2016

Team designed and built robot to crawl on inner face of submarine hull and probe hull for temperature Programmed controller (Arduino Uno) to take sensor inputs and control motor outputs Included programming of a 12 bit counter chip In charge of making HMI (Human Machine Interface), an android tablet app Created protocol overlay on top of SPI for main controller to communicate with the HMI through Wifi shield For a better description check out the slides and the report Check out a demo video below.

Classification of Written Digits

ELE665 Detection and Modulation

Spring 2017

Used Detection Theory techniques (spefically GLRT) to classify written digits Click here to look through a short presentation and here for a paper describing the results Check out my code here.

Value Prediction

ELE548 Computer Architecture

Spring 2018

Implemented a method for predicting processor load values (Vtage) in a simulated processor Able to predict correctly 8.49% of the time while limiting incorrect predictions to 0.35% The code and simulated framework were written in C++. Click here for a paper describing the results Check my code out here.

Wifi Based Motion Detection

ELE543 Computer Networks

Spring 2018

Designed and implemented a method for detecting motion between a wifi access point and a wireless device (Raspberry Pi 3) without any hardware modifications The method used detection theory techniques (a simplified version of energy detection). Click here for a brief presentation of the implementation and click here for the report.

Karaoke Machine

ELE501 Linear Transform Analysis

Fall 2017

Designed a filter to remove vocals from a single channel song Written in matlab used signal processing techniques Click here to view the code.

Keytar Project

Personal Project

Fall 2017

Circuit-Bending project to modify an old casio keyboard into a faux keytar Modifications include: 1/4 in guitar amp jack, feedback loop for "crunchier" sound, and the addition of a variable clock source hooked up to a strip potentiometer to make a slide pitch bender Video to come soon.

Guitar Pick Holder

Personal Project

Spring 2018

Other guitar pick holder designs require sticking an adhesive onto the body of the guitar (see image) Instead I designed a 3D modelled snap in fixture to hold guitar picks See the modelhere.
Please excuse the shaky video it was hard to film and snap the pick holder in place at the same time.

Skills

  • Assembly (mostly arm)

  • C/C++

    • most of my work is done bare bones C
  • Java

    • I don't do much in java anymore but I learned to code in Java so it holds a special place in my heart
  • Bash scripting

    • I find it incredibly rewarding to successfully automate a task using a script. And I work with linux systems enough for it to be very time-saving.
  • Matlab

    • In grad school I ran many simulations and I would usually design them in Matlab first to make sure they worked before porting them to C or C++
  • Python

    • to a lesser extent I have used python for task automation
  • HTML/javascript

    • I know enough HTML/javascript to maintain this webpage and implement my GPS tracking application

Education

Graduate (GPA: 3.63/4) - May 2018

University of Rhode Island - Kingston, RI

M.S. Electrical Engineering
Certificate in Embedded Systems

View my most recent Transcripts

Undergraduate (GPA: 3.79/4) - May 2016

University of Rhode Island - Kingston, RI

B.S. Computer Engineering
B.S. Applied Mathematics
B.A. German

URI International Engineering Program (IEP) - Sep-Dec 2014

Technical University of Brunswick, Germany