Skip to content

Servo tester firmware for the STM32F0 microcontroller.

Notifications You must be signed in to change notification settings

akohlsmith/Servo_Tester

 
 

Repository files navigation

Servo Tester / Spectrum Analyzer / Tetris-like Game

Written by Farrell Farahbod < farrellfarahbod@gmail.com >

===============================================================================

This project started as a servo tester back in 2012. It has since grown to include a 2.4GHz spectrum analyzer and an implementation of a Tetris-like arcade game. The original code base was my first significant project with a microcontroller, and it was a phenominal showcase of my inexperience ;) In mid-2014 I began the code refactoring process and added many features. This project has reached a usable state with only one feature still unimplemented -- bluetooth. I eventually plan to stream data out via bluetooth and write an Android app to graph the history of various data points and allow remote control of the servo tester features.

===============================================================================

Navigating the code base:

1. Start with /settings.h, /globals.c and /main.c
2. The ISRs are defined in /isrs.c
3. The screens (servo tester modes, spectrum analyzer modes, and the arcade game) are defined in the various /screen_*.c files.
4. My collection of anything remotely reusable is in /f0lib/. It's a crude library, not really ready for sharing, but it's used in this project. If you plan to use it elsewhere you MUST read the function implementations as many aspects are incomplete or "fragile."

===============================================================================

License:

The three files in /stm/ were NOT written by myself, see each file for it's license.

All of the other files were written by myself and are released into the public domain (this is also indicated at the top of each file.) Use the code however you wish.

===============================================================================

Hardware used:

	1 STM32F051R8T6 microcontroller
	1 TFT1P4705 LCD module with backlight (320x480, 16bit RGB565, D51E5TA7601 controller IC)
	1 CC2500 2.4GHz RF module (for the spectrum analyzer features)
	1 HC05 Bluetooth 2.0 module
	4 TI INA199A1 current sense amplifiers (50x gain)
	4 10mOhm current shunt resistors (results in 6A fullscale readings with 12bits of resolution)
	A power switch, 6V battery, lots of wires and a project box.

===============================================================================

A blog post with photos and video clips is available online at:  http://www.farrellf.com

About

Servo tester firmware for the STM32F0 microcontroller.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 86.7%
  • C++ 7.9%
  • Assembly 4.3%
  • Makefile 1.1%