Removing assist limitation on e-bike by reducing sensor pulse rate to half


I have a Giant Explore 2 2018 edition e-bike and I want to make the engine assist me beyond the 25km/h limit.
The speed of the bike is sensed through a sensor mounted on the frame and a magnet mounted on one of the spokes, so when the magnet passes in front of the sensor, it will generate an electric impulse. The frequency of the pulse will tell the bike's computer how fast the bike is going.

My question is if I could halven the pulse rate using an Arduino.
One of my ideas was
-to mount another magnetic field sensor (UXYSID_hall-module) on the frame, above the bike's "official" sensor
-have the Arduino sense that the magnet is coming, and
-break connection between the sensor and the bike, every second time.

Is this doable?

Then, I read on Arduino Forum
that "A type-T flip-flop (or a J-K flip-flip flop wired as a type-T) will cut the pulse rate in half."

but I'd appreciate more information on this solution.

Thanks a lot,


My question is if I could halven the pulse rate using an Arduino.

Detect each change of detector state and add 1 to a counter. If the counter is an odd number (use the modulo operator %) then output a pulse

You can certainly employ an Arduino to halve the pulse rate. If the present sensor is a reed switch, it will suffer from "contact bounce" and require a de-bounce algorithm and for this reason, a "T" flip-flop would not be useful as it would react to the bouncing.

There may be a legal restraint for that speed , and “ deristricted” it may not be much faster. ( power requirement for speed rises by the 2nd or 3rd power) , may over rev the motor components or reduce run time dramatically .
Parts will have been optimised for the performance you have.
If you just disconnect the sensor you could try it ?

Thank you all for your replies.

@Hammy, I don't want to go crazy on this bike. I'd just like a +10km/h assist on a slight uphill slope - which is much less assist than what I am squeezing out of the engine on a brutal uphill 25km/h run.

@Paul__B, shame on me, but I don't know what that contact bounce thingy or the de-bounce algorithm are. Could you please post a link?

@UKHeliBob, this is what I will try. I will need to check what voltage the sensor outputs (probably mV) and see how I can reduce the Arduino pulse (2.5V) - probably with some resistors.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.