Brems Chopper Part 2: the legitimating

Brems Chopper is back, with more treadmill motor and more amps than ever before.

Bremstroller Update

To increase odds of the motor controller not exploding, I etched a proper board for it.  Having traces instead of jiggly solid core wires,  it is easier to deal with and less failure prone than the protoboarded assembly of earlier.  It still serves the same purpose of generating the gate drive waveform for the giant Infineon IGBT.

schematic from last time

Still following the low side chopper architecture, this new layout ditches the optoisolator and isolated 12V supply present in the previous protoboarded design.  I included them there thinking that they'd provide an extra layer of protection between the Arduino and the power side, and also because I wanted to figure out how to connect them properly.  Since the IGBT is on the low side of the motor, the source voltage is always at ground potential.  In N channel MOSFETs and IGBTs, it is the voltage difference between the gate and the source/emitter that determines how "on" the device is.


In the datasheet for the big ole IGBT, they list a gate threshold voltage.  This is the gate voltage at which the device is "on".

Gate threshold characteristic

there's a graph which shows how much continuous current the device will handle for a given gate voltage.  They call that the Übertragungscharakteristik (transfer characteristic).

transfer characteristic

Although the maximum current draw (over a second or so) for Brems-chopper is likely nowhere near 1200A (yet), it is a good idea to drive the gate well into saturation to make sure it is indeed totally on.  The datasheet quotes a maximum Vge of +/- 20V.  I'm driving it from 0 to +V logic, which depending on the state of charge of the 4s LiPo, is somewhere between 14 and 17V.

board etching ing ing ing

After no fewer than three (3!) mirroring errors, I correctly transferred the mask to a piece of copper-clad fiberglass and etched it.  I am using Eagle CAD for board layout and MS-paint for inverting the colors and printing to transfer paper as .bmp

etched board etched board with Arduino and capacitors installed

The code looks like this:

int led = 9;
int gate = 10;
int th = 0;
int thout = 0;
int bat = 0;
int a = 0;
int toggler = 0;
int smoother[100] = {0};
int smoothedthout = 0;
int i = 0;

void setup() {
cli();   //disable interrupts
TIMSK1 |= (1 << TOIE1); // enable overflow interrupt 
pinMode(led, OUTPUT); 
pinMode(gate, OUTPUT); 
TCCR1B = TCCR1B & B11111000 | B00000010;  // set PWM to 4kHz 

ISR(TIMER1_OVF_vect) {
   a = a + 1; 

void loop() {   
  th = analogRead(A1);   
  bat = analogRead(A0);   
  thout = constrain(map(th,200,850,255,0),0,255);   
  smoother[i] = thout;   
  if (i >= 99) i=0;

  smoothedthout = mean(smoother, 99);  

  if(a > 2000) {
  toggler = !toggler;
  if(bat < 750){
    digitalWrite(led, toggler);
  else {
    digitalWrite(led, LOW);

the code does this:


On this rev, I added a few things to avoid potential catastrophe

Bayley keeps telling me that he won't ride this thing until it has an actual safety measure, like a fuse on the power side.  A potentially concerning failure mode is the logic's shitting itself and dumping +logic voltage (15 or so in this case) on to the gate of the IGBT.  This would result in the motor being uncontrollably fully on.

Currently, the countermeasure to that failure mode is to have the battery disconnect easily accessible to the rider.  If the thing starts running away, YANK it.  Good e-nuff.

disconnect IMG_1513

The new-to-MITERS solidoodle got a work out by printing housings for the logic board and the IGBT.




Now that Brems-Chopper is becoming a thing, it's time to make some dedicated packs for it.  I soldered up some new 12S4P A123 packs for brems-duty.

assembled battery

That's 12 in series and 4 in parallel, for a total of 48 cells per pack.  Each series cell contributes 3.3V, so the pack is a nominal 39.6V, more like 40 and a bit when fully charged.  40V packs are easily charged on the big 40V power supply at MITERS.  Being 12s, they can be broken out into a pair of 6S balance connectors, after which each pack-half can be handled by a 6S-capable balancer.  These decade-old 26650 size cells were donated to a neighboring student team a few years back.  They float around MITERS and power many of the local contraptions.

I do all the soldering, then wrap the exposed cell ends with strips of rubber harvested from bicycle inner tubes.  Following that, the whole thing gets bottle armor – the only reason ever to buy 3 liter sodas.  Most plastic soda bottles are blow molded high density polyethylene (HDPE).  Many blow molded or thermoformed plastic products will relax back to their unformed shape when heated.  In the case of soda bottles, this is shrinking.  It takes two bottles to cover this pack, which is about 150mm or 14″ long.


Brems Chopper runs at arbitrarily high voltage, as the IGBT's 1700V rating far exceeds any other part of the system.  The real limiter is the treadmill motor, which has '90V' stamped on the tin.

treadmill motor

Two of the 40V 12S4P packs put in series make a reasonable 80V 24S4P pack.


I am using two XT-60 connectors super glued together to make an XT-120 connector.  Take that, XT-90.


Tasty New Moter Mount

The motor mount shown in this image was jiggly enough to let the chain skip during hard acceleration, so I designed a proper clamp dealio.IMG_1527

Two identical rings-with-feet were milled of 3/8″ aluminum using the noble and robust MITERS Dyna-MYTE DM1007 CNC mill.

motor mount CAD

They were cleaned up on the bandsaw, and appropriate holes were drilled and tapped.


CNC motor mount delicious sprocket

motor characterization and rough gnarly top speed estimate

Using the Strobotac, this motor was measured out to be a rather low (when compared to the RC plane motors that inhabit MITERS) 50 RPM per volt.

It's about a 2.5:1 reduction from motor to rear sprocket, and the rear wheel is about 250mm in diameter.

50[RPM/V] / 2.5 = 20[RPM/V] at the rear wheel.  1 RPM on a 250mm tire corresponds to pi*D/60 [m/s]/[RPM], a ground speed .013 m/s.

We get 20 of those for every volt, so that makes ground speed of about 0.26 [m/s]/V

The 80V system in Brems Chopper guesses at a top speed of 20 [m/s] or 45 miles per hour.

So let's call it 30.  Fats e-nuff.

This analysis neglects all losses.  Big ones may include electrical resistance, transmission losses, and air resistance.

These are the basic calculations for the gear ratio of a single-speed EV.  You pick a desired top speed, derate the no-load speed of the motor by a bit, and calculate the ratio necessary to get from motor shaft speed to wheel speed.

This is done while keeping in mind the available power, and also that low end torque will be traded for top speed in a fixed-gear setup.


LiPo for logic power

3D printed motor controller housing

Brems-Troller has been explosion free for nearly two months.  Conclusion: needs more volts!


Here, a daring test pilot prepares to take the controls of Brems-Chopper. Mike prepares for a test ride