🞴 Engineering Index About Search

Project Portfolio


My name is Sam Blazes. I am an avid maker and programmer, and this website is a portfolio of my personal projects. I hope people find my projects interesting, instructive, and helpful.

Projects

Servo Control GUI Tool Jul 01, 2021

I created a GUI tool to control, observe, visualize, and configure the servo control firmware I wrote. Currently the GUI is a very useful tool for configuring and tuning the servo controller.

FOC Servo Control Firmware Jul 01, 2021

I wrote robust servo control firmware for brushless motors based on a low cost field oriented control board from ST. The goal of the project is to create brushless servos that can act as drop-in replacements for stepper motors in DIY motion applications such as 3D printers.

Design for a Linear Motor FDM 3D Printer Jul 18, 2021

The design and process for a 3D printer using the linear motors I prototyped and servo control firmware I wrote.

Improved Linear Motor Design Jul 16, 2021

An improved revision of my linear motor design, focusing on a better force-to-mass ratio and cleaner overall design.

An Electrical Discharge Machining Power Supply Design Apr 07, 2021

I discuss the requirement for an electrical discharge machining pulse generator and design the power electronics for a high power implementation. The pulse generator is one of the critical components of the EDM process that is not readily available.

Linear Motor Control and Tuning Apr 06, 2021

Using a prototype brushless linear motor, I assemble the control electronics and tune the controller for robust position control using an ODrive brushless motor controller.

Linear Motor Test Bench Apr 05, 2021

I created a prototype tubular brushless linear motor and characterize some of the electrical properties of the original design. While this initial design is pretty rough around the edges, it was very instructive about how to construct future designs.

DIY Soldering Station: PCB Design Mar 31, 2021

I designed a PCB for a digital soldering iron controller. In addition to the power electronics, there are also other features such as a touch screen for displaying data and configuring the iron.

DIY Smashbox-Style Gamecube Controller Jan 31, 2021

Designed and built a simple, low-cost digital gamepad and programmed the logic for how the digital buttons are converted to analog signals normally present on a Gamecube controller. The controller is primarily intended to be used for Super Smash Bros Melee.

Voxel Raymarching Jan 13, 2021

I implemented a GPU real-time path-tracing renderer for voxel geometry, which supports global illumination for both point lights and directional lights as well as emissive materials. The voxel geometry can be freely modified in real-time, and changes are immediately reflected in the renderer.

Parallel Cable-Driven Robot Kinematics May 24, 2020

A proof-of-concept implementation of general forward and inverse kinematics for parallel cable-driven robots, along with an accompanying simulation and visualization. One potential application of this algorithm could be to calculate the kinematics for a haptic input device.

Othello Bot Introduction Oct 08, 2019

An introduction to and an overview of an Othello/Reversi-playing program I wrote for a competition in a class. The program is based on the AlphaZero reinforcement learning algorithm, and it performed at the top level in an annual Caltech Othello program competition.

Clue Constraint Solver Sep 25, 2019

Development of a simple tool that reconciles observations in a game of Clue to determine the potential 'solutions' to the game. The Z3 theorem prover library Python bindings are used to solve the constraints.

Rubik's Cube Solving Robot Sep 25, 2019

A summary of the design, fabrication, and programming of a robot that solves a 3x3x3 Rubik's Cube, which was my senior project in high school.