Building a kick-assist / push-assist / endless mode longboard with VESC and Arduino


I wonder if anyone has successfully built a board with the exact mellow board endless ride feature? (endless ride: where you kick push, and the board automatically maintains the speed for a few sec (without remote holding the throttle), and then the motor spinning gradually decrease by ~30rpm/sec)

Specifically, I am thinking about building a board with a single belt motor, and connecting a BEC-compatible Vesc like this (®-bldc-electronic-speed-controller) to an Arduino UNO.

The arduino will take the PWM signal as input and basically use a loop to control the motor’s rpm. For example, when you kick push and when the motor spins greater than X rpm/sec, I delay for 1 sec and decrease the spinning by 30 rpm/sec. I can hit the brake anytime.

I saw Ackmanic’s VESC tool has a cruise control feature, but I believe it doesn’t do exactly what I wanted.

I am a beginner in electronics but know programming (software engineer). Has anyone done a similar build and/or could offer any advice? Thanks a lot.


By the way, what I hoped to achieve implies that when I start the board the normal way (using remote), and when I hit the throttle, the board will have a cruise control kind of ride-feeling, and doesn’t slow down very quickly

1 Like

Sounds difficult, to MATCH speed, and not flip you. It has to be matched, not just some speed.

Yo I am literally trying to build the same thing right now. I feel like it is possible. I was messing around with my friends hub motored skateboard and it definitely feels doable. For my build, I was thinking about using hub motors. I heard they provide less resistance when kicking. I am not sure how true that is since I haven’t tried to push a belt-driven skateboard but that is the current plan. From your description, I can’t tell if you are thinking about building your own motor controller or not. I heard from one of my electrical engineering friends that building a motor controller is hella hard so my plan was to instead use an Arduino to make a codable remote. With remotes, a lot of their dials are analog variable resistors. So as you turn the dial on your remote, you are increasing or decreasing the voltage signal and the motor controller is able to interpret that as directions on how to change the speed of the motors. My plan was to rewire my remote so instead of having an analog variable resistor, we convert that Arduino into a digital variable resistor. This way when I kick, my board can provide some instant boost and from there using code, I can have the motors slow down the amount of force they are providing. Also if you had any recommendations on parts that would be super helpful. I am struggling to find components in my price range.

Yes, so belt driven boards will render a lot of resistance when pushing. Hub motors are the best for kick pushing. I decide to go with teamgee H3 DIY kit’s hub motor. Motor controller – are you referring to VESCs?

1 Like

O ok bet. Yeah when I say motor controller, I mean vesc