DIYshift open source electronic bicycle shifter project

Diyshift is an open source project in its early stages. I try to use as many open source and free tools as possible in its creation. Once finished all of the CAD files, schematics and code will be open source. Keep in mind this is currently a work in progress and there are still many bugs to be worked out and improvements to be made.   

The aim of this project is to create an open source/open hardware electronic bicycle shifting platform using an inexpensive mid-level front and rear derailleurs modified to work electronically using a custom servo mounts,  a standard RC servos, an Arduino based microcontroller and a hand full of easily obtainable components.

I am hoping that this project will open up opportunities for those who are interested in experimenting with electronic shifting but who have been deterred by the high price tag for current production systems.  

The benefits of electronic shifting: 

  • Electronic shift systems are not susceptible to deteriorated shifting caused by cable friction, contamination or cable stretch.   As a result, electronic systems are virtually maintenance free once calibrated and weatherproofed. 
  • The shifters can be mounted virtually anywhere on the bicycle.
  • Shifting can automatically be trimmed to eliminate chain rub on the front derailleur when certain gear combinations are selected.
  • Push button shifting is effortless, to shift many mechanical indexed cable systems requires hand contortions to overcome cable friction and spring tension. Also there is no chance of over shifting an electronic system.
  • The shifters do not rely on fussy ratcheting mechanisms that are only good for specific drivetrains. For instance if you wish to switch from an 8-speed drivetrain to a 10-speed drivetrain you must purchase new shifters. 
  • Open source electronic shifters let you decide how many speeds you want to control simply by modifying the software and swapping out the drivetrain. 

A few possible applications :
  • Biofeedback, perhaps shifting based on current speed, heart rate or wattage. 
  • Automatic shifting based on wheel speed,  RPM or wattage input.
  • Code which will allow pre-programmed interval shifting for use when the bicycle is mounted to a resistance trainer.
  • Special projects where traditional cable routing is infeasible or problematic .
  • Wireless electronic shifting.
  • A Processing or web interface which will allow easy configuration of the microcontroller setup variables.
  • Logging of shift data for later analysis.
  • Control of both front and rear derailleurs using a single shifter.