Main Logo
Current Projects
All Projects

CSCE 462: Microcomputer Systems

This project is on github: Link

Previous: Undergraduate Research

This project is part of a series on 12d Printer

Next: 12d Printer

CSCE 462 focuses on microcontrollers, single board computers, and using them to realize a product in the physical world. I chose to use this class to spend time developing the physical prototype of my 12d Printer and integrating some of what I learned from Sumobots to develop a webapp for controlling a stepper motor. Its a realtively simple system: webserver and websockets server off the Raspberry PI. This is pretty much all the same as in Sumobots.

The stepper motors are controlled by a A4988 stepper driver. The hardest part was building a board to hold the motor drivers. For the eight motors, eight A4988s were required. Each requires 3 pins to control it and 8 * 3 = 24 is right at the limit of what the Raspberry PI 3B+ has. Adding in the eight limit switches, there were too many GPIO pins, so a MCP2017 extender was used. I made a sample board on protoboard. I naively thought it wouldn't be too bad; in hindsight I wish I had ordered PCBs. The biggest challenge was that the large stepper motors drew up to 2A each and that meant that I needed to be prepared to handle 16A of current.

There is not much to say about this project that isn't covered elsewhere:

  • 12d Printer for an overview of the mechanical design.
  • Sumobots for an overview of the software design
  • Github for diving into the code, etc.

As built images:

The web UI

The web UI
LinkedIn Logo
GitHub Logo
GrabCad Logo
Questions? Comments? Contact:
Spencer Gautreaux
Copyright 2022 Spencer Gautreaux. All Rights Reserved.