DIY Gearbox
2023-2024 ICS4U Independent Study Projects (ISPs)

Independent Study Projects. Please read our overview on why ACES pursue Independent Study Projects so vigorously.

To my mind, the characteristics of a great project include such aspects as imagination, creativity, a degree of risk and, sometimes, even simplicity, to name a few. Check out the flashlight circuit 'board' this guy made out of little more that a piece of paper and a pencil? Simple, but inspiring. Consider a problem that needs a solution. Boyan Slat did at age 17 when he was in high school; four years later he is cleaning up the world's oceans. (Update: January 9, 2019) So, dig in, think, dream, research, and explore possible project pursuits. Be discerning: don't accept the first thing that comes along. Be conscious of the fact that a multi-page summary of your project will appear in your DER after Presentation Day for more permanent record of your efforts. You may wish to take into account the ISP Evaluation document that will be applied on your Presentation Day.

Also, don't underestimate the value of an enterprise/entrepreneurial aspect to your project that could see a number of units of your project in the hands of future ACES, for sale in the Dragon's Lair or beyond, reaching an even a broader audience.

2023-2024 ISP Commitments

ACE Short ISP (20%)
Saturday September 17
Medium ISP (20%)
Saturday January 13
Long ISP (20%)
Saturday April 20
Proposals >>> Short ISP Proposal Medium ISP Proposal Long ISP Proposal

Jacob C.


32 Pin SIMM Old RAM Module

DESCRIPTION 32 Pin SIMM (Single In-line Memory Module ) RAM used to be in computers around 1980’s to early 2000’s. It works like your normal RAM chip, but it's less convenient. It has to be refreshed to keep its contents because they use capacitors to store the data, and capacitors lose charge over time. The RAM has a 20-bit address. 10 bits are latched in, then the next 10 bits.

The plan is to create a module that will work with micro-controllers and micro-processors.

Idea: Hook up an EEPROM’s data pins to the refresh pins and use a counter IC to go through each address from 0-9. A read pin and write pin will then be used to change the address and therefore change the way the EEPROM interacts with the CAS and RAS pins on the ram. The EEPROM will also control which set of 10 bits are displayed on the rams address.

Note: I understand that EEPROM is a bit excessive, but I like EEPROM and it will be an interesting method. Maybe I can let the rest of the EEPROM be accessed separately. I want to try and do this without a microcontroller b/c it feels cheating, other than for testing.
DESIGN I would like to create a PCB in EAGLE and get it made with JLCPCB. Maybe even try to make my own RAM socket using 3d printing and adding metal bits, b/c its hard to get 30 pin SIMM RAM sockets.
COMMUNICATION Serial communication for debugging and for confirming that ram values, but not a core part.
Nintendo Card Reader and Emulator

DESCRIPTION This project will focus on dumping the contents of game cartridges and hopefully emulating one. The reading is straightforward. The community has discovered that the pins use a Nintendo proprietary SPI-like 8-bit bus. After taking apart a Nintendo switch and looking at the insides, I will 3D model a similar device and print and make it. The emulating won’t be as straightforward because of tiny encasing and high-density data. Most likely a cable-like device will be made instead of a cartridge.The microcontroller that will be doing all of the work will be an Arduino Uno R4 WIFI. It has a fast 32-Bit ARM chip and its WIFI module allows for creating an access point and making a TCP/IP server to interact with it remotely, removing the need for a tedious display or cable for serial to communicate to a person or computer. The cartridge has 17 total pins .I will use resistors on the pins just in case. The documentation isn’t that detailed.
SOFTWARE If I decide to make a webserver to interface with the device then I will also be using a basic markup language HTML and CSS.
DESIGN Cartridge reader and possible emulator will be designed in fusion 360. I will print it out in resin at home to get really thin dividers. Probably no PCB this time.
COMMUNICATION The Arduino will communicate to the client using WIFI, specifically the TCP/IP protocol. The device can then be controlled and read using a computer.

STM32F100R4T6B Microcontroller

DESCRIPTION With this project I plan to create a microcontroller development board based on the 3.3V STM32F100R4T6B microcontroller IC. This IC has an integrated 32-bit arm processor and is capable of running up to 24 MHz. I hope to use mostly surface mount parts, but that depends on the amount of components, the size of the components, and if JLC is good to me or not. Nothing too special about this board. It will have the bear necessities to work with the MCU with maybe a few extra pieces like an onboard LED.For communication this device is built like a pog champ. It has 2 SPI interfaces, 3 USART interfaces, and 2 I2C interfaces.The MCU has 128 Kbytes of flash memory, 16 ADC channels, internal RTC clock, 51 I/O, USART capabilities, internal temperature sensor, internal HDMI-CEC controller, pin remapping, an advanced-control timer, six general-purpose timers, two basic timers and two watchdog timers. 7-channel DMA and much more.
DESIGNPurely on a PCB, I plan to make the PCB the art. I plan it to look kind of like an UNO where it has female header pins.
COMMUNICATION It will use UART connected to a FT232RL chip to allow USB communication

Graham D.


8 Channel Graphic Equalizer

DESCRIPTION The 8 Channel Graphic Equalizer will use a combination of analog and digital circuitry to an 8 by 8 LED matrix graphic display. Eight multiple-feedback active filters will be used to process the audio input from a microphone into 8 analog outputs which correspond to the amount of audio from each filter frequency band. This data will then be fed into a 3-bit analog (?) multiplexor. The multiplexor be driven by a 3-bit counter. This counter will then drive a decoder which drives the cathodes of the LED matrix and perform the row scanning needed for the POV effect. The output of the multiplexor is sent to a 3-bit flash ADC without a priority encoder which drives the anodes of the matrix. All of this circuitry will be housed on a custom designed PCB which will employ both THT and SMT components. Additionally, a custom 3d printed case will be designed to achieve a simple and clean appearance. 
HARDWARE LM324N opamps will be used for all of the filters and the ADC. A standard electret microphone will be used for the audio input. This signal will then be amplified hopefully with an AGC circuit, so that it is of a suitable amplitude for the filters and display. The matrix driver circuitry will be driven by a 555 timer and features a 74HC193 counter, a 74HC42 decoder, and a 74HC4051 multiplexor.
DESIGN A custom PCB or PCBs featuring a combination of THT and SMT components will be designed to house all of the circuitry, and feature a custom 8x8 led matrix. A custom matrix will be designed so that the size of the matrix can be determined to create the best appearance. A 3D printed case and diffuser for the matrix will be designed to fully enclose the PCB
MECHANICAL A custom PCB or PCBs featuring a combination of THT and SMT components will be designed to house all of the circuitry, and feature a custom 8x8 led matrix. A custom matrix will be designed so that the size of the matrix can be determined to create the best appearance. A 3D printed case and diffuser for the matrix will be designed to fully enclose the PCB.
PID Servo Motor

DESCRIPTION I plan to create a Servo motor using a DC motor, a PID controller, and a custom gearbox. I will use basic opamp circuits to create the PID controller, which will drive the DC motor. The PID control system will be created from differential, inverting, differentiating, integrating and summing amplifier circuits. The motor will connect to a gearbox which will increase the torque while decreasing the rate of rotation. Additionally, the gearbox will connect the feedback potentiometer to the output. Due to the potentiometer, the servos range of rotation will be limited to 270º.
HARDWARE FET biased OPAMPs will be used for all of the opamp circuitry due to their better accuracy, especially with differentiating and integrating circuits. Additionally, a half MOSFET H-bridge will be used to drive the motor. A standard 5 V DC motor will be used.
DESIGN I will use fusion360 to design all of the gears, and the encasing for the servo motor. I plan to use eagle to create an SMT pcb for the controller circuit, which will then be integrated into the complete servo case. Ball bearings, and metal rods will be included in the gearbox. Additionally, i hope to be able to test different materials for the gears to be fabricated from.
MECHANICAL I will use a 5V DC motor to power the servo. I will design a gearbox in Fusion360 which will decrease the angular speed, and increase the torque of the motor. Additionally, the gearbox will connect the potentiometer which gives the controller the feedback needed for PID control.

ATtiny214/414/814 Development Platform

DESCRIPTION For this project I will design a development platform for the pin for pin compatible ATtiny214/414/814 MCUs. The main purpose of the platform is to allow programming of these MCUs over serial from the Arduino IDE, and communication/debugging through the serial monitor. The development platform will breakout the MCU’s pins into useful functional groupings such as ports or communication protocols. Additionally, I plan to develop a code repository/library which exploits and demonstrates the functions of the new ATtiny series.
SOFTWARE C & Registers

Vithusan J.

Remote Control Car

DESCRIPTION This project has two components: the main car and the remote-control. For the main car, it will have a body designed on Fusion360. Inside the body will be the main circuitry and components, including DC motors to control the rear wheels and a servo motor to control the steering. The whole car will be powered with batteries. It will receive instructions from the remote-control using RF. For the remote control, it will use joysticks (reminiscent of commercial RC cars) to control the steering and forward/backward motion. It will also be powered by batteries and be in a case designed in Fusion360.
HARDWARE 328P. It will include LEDs for head and tail lights with a switch on the remote to control them. 
DESIGN Fusion360 will be used to design the body of the car and the case for the remote. Eagle will be used to design custom PCBs for both the car and the remote.
MECHANICAL DC Motors will be used to control the rear tires (forward and backward motions). A Servo motor will be used to control the front tires (steering).
Pitching Machine

DESCRIPTION For this project, I plan to create a pitching machine. It will be able to launch baseballs to simulate pitches, which would be used to practice batting. To do this, there will be three spinning wheels, positioned equally spaced apart in a circular shape where it will accelerate the ball. By changing the speeds of the wheels, different pitches can be imitated (like a curveball). To control the pitch-type and the speed of the pitch, there will be a control panel with buttons.
DESIGN I’ll be using Fusion to design cases and mounts for the various parts of the machine. I’ll also use Eagle to design a PCB for the internal circuitry.
MECHANICAL I’ll be using DC motors to power the wheels.

DIY Gearbox

DESCRIPTION Gearboxes are mechanical devices used to transmit and control rotational motion between shafts or gears. They consist of multiple gears with varying sizes and configurations that mesh together to change the speed, torque, or direction of rotation. Gearboxes are commonly found in various machines, including automobiles, industrial machinery, and power transmission systems, where they play a crucial role in optimizing mechanical performance and efficiency. For my project, I plan to design and build a 3-speed gearbox. The purpose of building the gearbox is to explore different concepts including gear design and integration. It will also help to visualize and manipulate torque, as the gear ratios directly affect the relationship between speed and torque output. The gearbox will be powered by a DC motor and the output will be seen with a wheel. The gears will be shifted using a stick shift (like in a manual transmission car) and it will be 3D printed along with all the inner gears and shafts.
DESIGN Almost all components (including gears and shafts) of this project will be designed on Fusion360 and then 3D-printed. There will also be an acrylic face of the box to see the inner workings in action.
MECHANICAL A DC motor will be used to power the 3D Printed Gearbox

Liam M.

DIY Variable Power Supply

DESCRIPTION This ISP will be a DIY variable power supply, meaning it will supply a range of voltages as an output which the user can control. The device will plug straight into the wall and rectify the AC voltage and turn it into a useable DC output using a buck/boost converter. The voltage output and current draw will be displayed to the user on the device, which itself will be housed in a 3D printed case.
HARDWARE 328P. The device will work by first stepping down the mains AC voltage with a transformer before putting the secondary winding’s output through a full bridge rectifier, turning it into a low-voltage DC output. This will then be smoothed out before going into a buck/boost converter (inverting) before finally leading to the output of the device.
SOFTWARE Arduino C. Software will be implemented to create a feedback cycle to limit the current draw and output voltage, and also drive the display. The feedback cycle is required to keep voltage steady with different loads.
DESIGN Buck/Boost converter PCB designed in EAGLE, made by JLCPCB. The case will be primarily 3D printed with an acrylic panel to showcase the internals of the device. A PCB will be designed and implemented for the buck/boost converted to go inside the case.
5 DoF Robotic Arm

DESCRIPTION This ISP will be to build a robotic arm with 5 degrees of freedom (DoF). This arm will have a simple pincer jaw on the end effector and other than that will have three “elbow” joints and two “wrist” joints, meaning three joints used for normal positioning and two for rotation. The arm will have a diverse range of motion and be able to move to defined coordinates in 3D space as well as move along lines within 3D space. This is not a trivial task as to accomplish this every joint must work together.
HARDWARE There are not too many hardware components in this project (SAR ADC is enough for this term), so besides the microcontroller the only other major components will be the servo motors used in each joint as well as a potentiometer to measure the current joint angle. It is possible that the first joint will have to be a high torque stepper motor simply to keep the arm standing but it is impossible to tell if this will be necessary without first testing the servo with the arm assembled.
SOFTWARE (Register Level Adruino C) The software part of this project is quite tricky. To figure out what angle all the joints must be at to position the jaw at a certain coordinate in 3D space the inverse kinematics of the arm must be calculated which are essentially some complicated trigonometry equations that must be derived depending on the arm’s parameters. In addition, to allow the jaw to move in straight lines there must be an interpolation algorithm to calculate waypoints along the path. The plan for this is to define lines as Bezier curves which will allow for smooth interpolation and continuous movement if desired.
DESIGN This project will be largely 3D printed. The arm will be designed in Fusion 360 and broken into its different sections. Servo motors will be mounted within the 3D printed sections to allow for connections between segments at joints.
MECHANICAL As mentioned, the arm will use servo motors at each joint, and since this is a 5 DoF arm there will be 5 servos with one to control each joint. Two will be continuous servo motors as their rotation will not be restrained while with the other three elbow servos this would be unbeneficial as their range of motion is physically restricted by the rest of the arm.

Rocket Telemetry

DESCRIPTION In this project I plan to build a rocket telemetry device which will allow the user to see the acceleration, velocity, and position of their rocket on their computer. This is done by using an accelerometer on the rocket to gather acceleration data, and then sending it to the computer. Once the computer has it, it can integrate once (likely through trapezoidal approximation) once for acceleration and another time for position.
SOFTWARE C/Processing
DESIGN This device will be built on a PCB and mounted onto a model rocket, so it will have to be small in order to facilitate that.
COMMUNICATION I will use RF modules to communicate between the rocket and my computer. These will have to be long range modules, likely a 2 km model I found.

Alex S.

Reach For The Top Main Console

DESCRIPTION This is a two-part project to construct a scoring and playing system for the trivia game Reach For The Top. The idea is to be able to use this system to play games hosted by RSGC, and to replace the current buzzer system. This new system will be controlled by an Arduino Mega 2560 and have 3D printed/acrylic cases, and battery and outlet power options.

The first part of this project is the main console. The main console will have the scoreboard for individual players and teams on one side using seven segment displays and their accompanying ICs. The second side will have a control panel to alter scores and game settings using a button (PBNO) to select, a potentiometer to scroll through options, and an LCD panel to display the options. This device will be used by the game master.

The main console will also be built with the timer, buzzer, and RF modules which will be employed with the second part of this project. The second part, which will be the next ISP, will introduce 12 peripheral devices which wirelessly communicate with the main console. These devices will be used by the players, and there will be six for each team. Interacting with these peripheral devices (which just have a button for HID) will activate the buzzer and countdown timer on the controlling device.
SOFTWARE Arduino C and Libraries
RFTT – Console Completion and Peripherals

DESCRIPTION As a continuation of the previous project, this ISP aims to improve the scoreboard console for HID interaction, and sets it up for RF communication with six or twelve peripherals, which will be used by the players. The console expansions will take place on the same development board and Arduino, with added connections to a second PCB, as well as two RF modules (the nRF24L01 can only communicate with six other peripherals as a controller). The second PCB on the console will be a corrected version of a PCB design made in the first phase.

The peripherals only require enough pins to acquire button signals, light three displays, and control the nRF24L01 RF module which they communicate with (which should be just nine pins). The LEDs will display the team the device is set to, and indicate if the peripheral has been activated fast enough for the player to answer a question (by an RF signal from the console). Each peripheral will be encased, and each case will have a number (1 to 6) to indicate the player number of the team in connection with the individual players’ scores shown on the console.
HARDWARE (84 and 2560) The development board on the console is controlled by the same ATmega2560 Arduino Mega as the previous project. The peripherals will be using ATtiny84 µCs, as their functionality requires fewer pins
SOFTWARE High and Register level C. RF24 Library and, possibly, SPI.
DESIGN Acrylic casing for the console will be designed in Adobe Illustrator. This case will mount the console PCBs and development board as a frame. The peripherals will have 3D printed cases and PCBs designed in Fusion and Eagle respectively, and may have acrylic covers.
Selmer-Style Varitone

DESCRIPTION Variable Toning machines (varitones) were used in records from the late 50s and 60s, modifying the pitch and sound of the saxophone. One of the makers of these machines was Selmer, a company that designs saxophones and other reed type instruments, whose devices were built to fit over the lower register pads of their instruments near the bell. Rarely used in live performances, varitones went obsolete as much more effective recording/editing tools came to studios and live shows. I want to build my own varitone, which I hope to use in a live performance before the end of the year.

Rather than fitting for a specific type of saxophone, I hope to make mine adaptable for all of my instruments. It will include an attachment device, fit for various instruments I play, with a microphone and hand-accessible dials for speaker control, a Long & McQuade amp or speaker, a control pedal for when hand control isn’t viable, and a main circuit forming the various connections between audio sources and MIDI devices. Any operating Varitone will have three or four devices: an attachment, a main circuit, a speaker, and possibly a pedal.

I hope to 3D print most of the devices like the instrument attachments, but I plan to do some wire tinkering with guitar pedals to make use of their existing circuits. The internal circuit of each device will be housed on a THT PCB, and controlled by either a microcontroller or older devices that were used within varitones.

My varitone will have some of its historic capabilities such as sound distortion, modified vibrato, pitch dampening, and octave-wide intervals. I hope to add capabilities such as imperfect intervals, pitch bending (scoops, falls, lifts, drops), fine tuning, and volume control.
DESIGN PCBs for each device’s circuit. 3D printed cases for the instrument attachment devices and the main circuit. Cables for each device’s connection.
COMMUNICATION Wired Communication, if necessary. I2C preferred if so.

Short ISP Choices
ISPs are gifts. The best choice for you is the one that fits well with your interests, as well as strengths, and blows the doors of your future opportunities wide open! It takes CONSIDERABLE time and reflection to make the BEST ISP choices but, the good news is that this year you have more options than ever before. For the 2022/2023 ICS4U-E year, the starting point for your Short ISP could come from any of the following areas (no group projects and no duplications),

  1. Reverse Engineer any existing device with digital circuitry
  2. Identify a commercially-available device and design and manufacture it BETTER!
  3. Select a component from the gallery below (I will supply it, if necessary) and create a project that incorporates it into something wonderful
  4. Research Short ISP component choices from previous years (discuss with me first to avoid redundancy and duplication) and complete the step above.
Digital Voltmeter
Digital Ammeter
Digital Temperture
Rugged Metal Button
Vacuum Forming, & Production
MAYKU Formbox
3D Design and Printing

ARM Cortex-M7 @ 600 MHz:
Teensy 4.0
SMT Assembled PCBs
ACES DMM Concept ?
CNC Foam?:
Mint Tin Packaging

Laser Pointer/Follower System
Software Library (MSGEQ7?)

Water Flow Sensor
Seeed Studio:
Water Flow Sensor Kit
Large Analog Voltmeter
Analog Ammeter

Medium ISP (SMD & CAD)

As you wind up the final two terms of your secondary education it is time to both advance and lock in your burgeoning engineering skills. Whereas through-hole technology (THT) has had a good run over the past few decades, the future is Surface Mount Technology and Design. For this reason, you best be prepared. This ISP round you will refine your SMD and CAD skills to showcase your Design skills in preparation for the opportunities that await you in the next few years.

Your Medium ISP goal (20% of your final mark) should include the slimmest of useful DES devices consisting of a custom PCB, populated with SMT parts, and encased or hosting (Truth Be Told, Mastermind) 3D printed components in the thinnest form possible (think wallet-size proportions). You have two months. Our 3D Printing TAs, and either JLCPCB or DirtyPCBs are all about to get a serious Sr. ACES workout.

Should you be stuck for a meaningful project, consider a DDPv7 Legacy Shield to complement or replace the ones we already have (Intersection, ADC, Universal v1 or Universal v2). The only stipulation I impose is that these devices must remain compatible with our current EAGLE DDPv7/Shield files.

Download and review the updated Medium ISP Proposal. This Word version I would ask that you edit, attach, and email on Saturday January 14, 2023 under the Subject Line: Medium ISP Proposal.


Long ISP (THT and/or SMT, Fixed or Flex)

Download and review the updated Long ISP Proposal. This Word version I would ask that you edit, attach, and email to on Monday February 21, 2022 under the Subject Line: Long ISP Proposal.

Electronic control over your final ACES ISP must be in the form of custom PCB populated with either through hole and/or surface mount components. In the case of the latter, you can consider taking your design to the next level, in the form of a Flex circuit that will be laminated into a page of your DER. If your circuit proves fully functional a flexible 3.5V, 150 mA Powerfilm solar cell will be included in the lamination so that that viewers of your creativity will marvel at when shown the light of day!

The Flex Circuit concept was first introduced into the ACES curriculum in the 2015/2016 TEI4M year with some impressive results. Where the attempts since have failed is whren the designer becomes too ambitious. If you choose this route, I require that you keep it SIMPLE. (LEDs and resistors only?) Your Medium ISP requirements provided you with valuable experience that should improve your likelihood of success as will be a small project this term that requires the use of the ACES ATtiny85 SMD Trainer. The examples below are too ambitious for us but each offers a unique feature you may wish to consider,



For the bulk of your formal education you have been, and will continue to be, required to consume curriculum chosen for you by someone else. Fortunately (hopefully) you will put this knowledge and skill to good use in your future. However, jumping through someone else's hoops alone does not, typically, secure future success. For that, you must demonstrate your own initiative, motivation, and passion. These qualities need to be cultivated and our Grade 10 hardware course is a perfect place to start. There is so much to learn and there are so many great projects out there that offer stimulating contexts within which to develop and refine your interests.

Grade Contribution to Final Mark