Universal Advanced VESC Remote Control (Photon) - Custom design

Hello everyone,

For the past months I have been working on this project on and off trying to design an advanced and compact remote control for diy electic skateboards/longboards.

After doing some research trying to find the ideal remote for my DIY build, I was disappointed by how basic and unreliable all the available remotes are.

Why have such an advanced ESC like the VESC if we can’t really take advantage of it?

So I decided to start from scratch and design the ultimate universal remote that is both feature rich, compact, and ergonomic. The purpose of this design is to allow DIY builders to have access to a top notch remote that competes with the big brands out there.

Without further ado, here is the design breakdown:

Hardware: Custom designed PCB specifically for this project.

  • Powerful and fast cortex M0 32bit microcontroller.
  • Built in LIPO charger
  • Built in Piezo Buzzer for alerts
  • Built in 2.4Ghz transmitter receiver with a ceramic antenna amplifier for an extended range and better reliability.
  • Soft power latching, turns on and off with a single push button
  • Micro USB for charging.
  • 0.95" Color OLED display.
  • Smooth joystick control.
  • Three push buttons

Software: Custom designed software to take full advantage of your electric skateboard.

  • Well designed user interface with an advanced gauge.
  • Displays remote battery level
  • Displays electric board battery level
  • Failsafe neutral throttle in case of disconnection
  • Total distance traveled
  • Buzzer warning when battery is low
  • Custom throttle acceleration and braking sensitivity - Instead of having only 3 predefined riding modes like most other remotes do, you can adjust both acceleration and braking sensitivity separately. From -10 to 10 each, allowing for around 400 possible riding modes.
  • Predefined wheel and gear ratios for speed calculation
  • Ability to turn the buzzer on and off
  • Detailed stats about your board, voltage, amperage, etc…
  • Option to turn board lights on and off if you have them installed.
  • Units change -Mile/KM
  • Assign a function to the custom push button( Light control, cruise control…).

Quickly put together prototype.

Case: Last but not least, a custom designed enclosure that is very compact, ergonomic, and very portable. Only about 4.4 inches long/ 11.4cm and 1.8inches wide/ 4.6mm

Cost: The cost to produce a single unit right now is fairly high, but certainly cheaper than the evolve remote, it should be less than 120$ and if we manage to order a large batch then we can reduce the cost significantly. Remote cost will factor parts prices, assembly, as well as my personal effort and time spent designing the hardware, software, and the whole thing from scratch.

I’m currently in the final stage, everything was designed, assembled, and tested. If you are interested in this project, please vote on the following poll so that I can have a clear idea on how to take things from here.

  • Yes! Count me in.
  • not interested.

0 voters


Amazing work! But I have a couple questions:

  1. What does left/right on the joystick do, wouldn’t it be easier to using if the controller only pivoted on one axis?

  2. Why not go for a slimmer profile? Putting the remote in my jeans pocket is super convenient which is why I never opted for the classic “steez” remotes. For this, my benchwheel remote works perfectly for me.

  3. I’m assuming this will plug into the UART port on the VESC? Does this also mean the remote will be operating on bluetooth? Have you tested reliability in network congested environments? This seems to be a common concern amongst bluetooth based controllers. If it is bluetooth, which version will it be running, 5.0?

  4. More of a suggestion, but you should include a little lanyard loop on the bottom for people to attach landyards :slight_smile:


Thanks for your suggestions, to answer your questions:

  1. The left/right on the joystick is used to operate different sections of the menu, like increase/decrease values. It is more convenient than mapping everything to buttons.
  2. The design right now is actually pretty slim, only around 3 cm. I can barely squeeze a lipo in there :smiley: However I will keep that in mind and see if I can tighten things up a little more.
  3. Yes you can plug the transreceiver on UART. And no the remote does not use Bluetooth. Bluetooth is not really suitable for critical operations. The remote uses a straight 2.4Ghz based on the nrf24l01 controller. It was proven to be very reliable. Bluetooth is needed when you want to send and receive data to mobile devices, which is not the case here since the purpose of this remote is to provide all the necessary stats you need without using a smartphone.
  4. I agree! I actually had that in my todo list, should be done by the end of the day.

I have to say that I love your work so far. Really inspiring stuff TBH. But I have a feww questions:

Is this data coming from the VESCs them selfs? If so, multiple VESCS? Assuming the answer to both of those is a yes, how do you get the data if your only connected via ppm for both data and control? Do you need to modify the VESC firmware? Are there any other catches or drawbacks?

Regardless, it looks nice and I can’t wait to see more about it!


My #1 concern on 2.4 is reliability. I continue to come back to the GT2b because of the frequency hopping (or whatever they call it), which has been the most reliable in high congestion 2.4 areas. I can consistently get drops on others riding along Alki beach w/ wifi from condos along the path.

Love the idea and also curious around how it integrates with the data from VESC. And is this expected to work with VESC 6?


A follow-up to 2. perhaps you can move the pcb sideways and have the screen parallel with your palm instead of perpendicular.


Thank you. To answer your questions:

  1. Yes the data is coming from the VESC, multiple VESCs should be no problem, though I didn’t test it yet.
  2. Packets are sent and received from the VESC in intervals, control packets are given a higher priority and sent at a higher rate, received data is coming as an acknowledgement payload.
  3. No, the VESC has already the UART protocol implemented, all you have to do is connect the transreceiver to the UART port. The transreceiver ( not shown yet ) is small device that I developed based on the arduino nano, and it has the nrf module built in. The transreceiver comes with open digital and analog ports, as well as spi to control custom stuff on your board like lights.

To solve congestion problems, I implemented a channel selection that lets you change your operating frequency if you ever find yourself in a noisy environment. Frequency hopping is a good solution and in fact it can be implemented using nrf24l01, all we have to do is rapidly switch frequencies using a predetermined random function, the only problem is that we have to ensure that both transreceivers are kept in sync. Regarding VESC 6, I don’t see why it wouldn’t, as long as the new firmware keep the UART protocol.


Looks very cool. Could you offer an electronics only version for people who have 3D printers? Can it keep track of total millage? I know that’s a feature a lot of people want.

*Edit. I would feel much safer if the remote and transceiver had plug in external antennas, like in RC gear. Maybe not totally necessary on the remote but on the board antenna position can make a big difference to the reliability of the connection. Being able to move the antenna to good location is really helpful.


Finally!!! This remote looks awesome

1 Like

Thanks, yes it does keep track of total millage, I will showcase all the detailed features in an upcoming video. About the electronics only version, I will consider that. About the antenna concern, I have been testing the module extensively, and I didn’t have a problem with reliability. I will keep your suggestion in mind, and maybe add an antenna port on the vesc side.

1 Like

just curious what was your riding environment? I live in SF and the 2.4ghz congestion here can get pretty crazy.

1 Like

Yeah I’m sure its reliable under most conditions but there is always rare circumstances. I use the GT2B and experienced some drop outs when going over tram tracks. But due to it having a fail safe set to neutral it just meant a temporary loss of power. After this I moved the receiver antenna from under my rear foot to the middle of the board and never had another dropout. People with carbon fiber boards need to be extra careful of antenna location. If your transceiver can have a fail safe it would be great, I think its a very good safety feature. @squad in another thread broke his arm real bad when going over a tram track with a nano remote, if it had a fail safe this probably would not have happened. nano dropout

1 Like

Nothing as crazy as SF that’s for sure :smile:

1 Like

Good point, actually the transceiver has a failsafe function, received packets coming from the remote are checked against a threshold timeline, if there is a delayed response, it sets the VESC to neutral throttle.

1 Like

nice work. where did you get that color oled? I can’t find fully color for a decent price…

1 Like

Excellent! That should prevent worst case scenarios.

1 Like

Absolutely amazing !!! …but there is one design flaw…it needs KILLSWITCH !! Otherwise it’s going to have the same most hated feature as EVOLVE remote.

Here is what I am talking about starts at 2:16:


lol shit got real at 4 min! :joy:


Also what a about simple TURN by TURN navigation connected to the phone ? would that be possible.? having such an amazing color display it would be a pity not to have a simple navigation…