Should we focus some effort on building a simple (best) controller prototype? Not the final thing at all, but something to let folks get started with some hardware and software. Rev 0. Start simple and improve.
Scale the requirements way back to get things moving for this prototype.
I'd like to see something that would be useable on a bike with common motors we already have. So we can swap it into our systems for some real world testing and development. Get that homemade controller grin going!
I would suggest some simplified "prototype requirements" like:
The prototype should be useful, not a tangle of wires on a bench. It should be able to run on a bike with a common motor at reasonable voltages and currents. The actual capability would come out as the detailed design evolves, but something along the lines of existing controllers. Something reasonably easy to attain on the first try.
Use readily available through hole parts for this prototype. Designed so someone with some soldering skills can make it. Easy to repair and mod.
Limit the PCB to one that we can readily get in small quantities at reasonable cost. Use a free design tool that is easy to learn and make a public open schematic and layout so folks can make their own version of it with their own improvements. One such solution I'm aware of that works this way is expresspcb. There are undoubtedly others, pick one. Their 2 layer plated through miniboard is 3.8 by 2.5 inches and costs $51 for three boards and they turn it around in a few days. They have free software for schematics and pcb design that takes a couple of minutes to learn. It is 1.25 ounce copper, so plan for bare wires to be added to support reasonable currents if needed, but again this is not a mega controller (yet). It is the baby that will grow up later.
We can get creative and put some parts on the backside of the board if needed, but keep it serviceable. ONE pc board. Leave the fancy master CPU till later, just do the motor control board. A compact (probably six) FET unit. Standalone.
Use FETs that are readily available, through hole, low cost and fit on the board - constrain by space but keep it simple to start. Not a huge number of them. How many will fit on this board? We want to keep the price moderate, we may be blowing some of these boards up as we try out software ideas, etc. I'd rather blow up smaller numbers of FETS while testing just from a practical standpoint, even if it means testing at lower current.
Voltage - again, what is simple, will fit, and will be useable by most as a test platform for the controller technology (not the performance edge of bike motors). Perhaps not a switching regulator on this first prototype. Add that later? Unless someone has a small footprint trusted design in hand.
Use a micro with open high level software tools. This might mean the AVR since other suggestions either are surface mount only or don't have free high level tools. Choose the most capable fairly common through hole chip with the best hardware for motor control that is well supported for the purpose (app notes, sample code, etc) and low in cost.
Scale other requirements back to what is essential to make it operate on a bike. Throttle, ebrake. Detectors for sensorless control if they will fit (this will be an important software development area). Toss the things that are not really needed like 12V outputs, etc. This is a platform for developing experience and software. To do that well it needs to be run on the bikes. It should be easy to reprogram without necessarily removing it from the bike. A jack on the board that can be brought out with a cable. AVRs can be programmed with a six pin cable, a laptop and a 15 dollar programmer.
Extra inputs/outputs as available for other things. What does the chip have room for? Like a skilled woodworker, find the "grain" and work with it. Do what is easy and put off what is hard for a future model.
Then we make a few and get started. Once some hardware is out there this project might really take off. Share some software. Write some code, rewrite, throw it out and write it again once the needs are better understood.
It might make sense to split off another thread to focus on this "Basic Prototype". Keep this thread for planning the best controller, and have a focussed thread for some more basic prototypes. More here
http://endless-sphere.com/forums/viewtopic.php?f=2&t=22630.