VESC HM-10 bluetooth wiring

Hey guys,

just bought a HM-10 module to connect the VESC to the iOS BLDC tool app, just wondering if someone could help me with the wiring and first connection?

photos of the VESC and HM-10 wiring would be most appreciated.



I was thinking on getting simple jumper leads to connect the pins, but what the heck are those 1k and 2k ohm and in a T junction ? sorry the stupid question, I’m a newbie in electronics…

can I buy that ready or need to assemble myself?

Not sure you can buy it ready to use. Resistors are here to lower the signal level from 5V (level of VESC) to 3,3V (level of HM10) only for the RX pin of HM10. BTW, some guys don’t use them and it works. But no idea how long it will last.

For JST pins connection, see Vedder schematic :

It depends on each module. My module is safe up to 6V i think but the old ones are only safe up to 3,3V

If I’m not mistaken my VESC has 3.3v output as well as the 5v. Its written down on the pcb.

Will test it before plug it in and let you know

Are you talking about power supply or RX/TX level ? Mine is safe also up to 6V… for power supply ! Not for RX/TX level.

@rodrigovolkmer : yes, for power supply, not for TX/RX level.

1 Like

Power Supply but i do not know my rating of the rx/tx

I’m using an HC-05 module without resistors for tx and it works fine. Powered by 3,3v off the VESC UART port.

Don’t know yet about the HM-10 module, still waiting for it.

Should be 3,3V as HC05 is 3,3V. There are some boards workinf with a power supply because manifacturers add their PCB with DC/DC converter to be accept 5/6V.

BTW, 5V on the RX seems to be supported by the HC05. I lowered it to 3,3V for the peace of mind. :slight_smile:

Don’t feed 5v to the RX of an HC05. It wont short straight away, but it will eventualy, the RX port of the HC05 is 3.3v rated. Most modules allow for higher vcc, but not on the pins.

The ideal hookup to the vesc would be gnd and 3.3v rail

The VESC has a STM32 operating @3V3, why would the serial port communicate @5V? As far as I know the signal levels on the VESC are 3V3. Does anybody know where the 5V info comes from?

1 Like

Arduino confusion, since they have 5v signals that need to be reduced with a voltage divider.

My fault. I was sure that TX level of VESC was 5V… BTW it’s possible to directly use 5V Arduino TX level on RX pin of the VESC.

Its so easy to add 2 resistors to the TX pin of the arduino that its just not worth the risk of blowing up an ic

100% agree.

Hello guys, this wiring was not very clear for me, hope to get help to this.

On the VESC there is no indication on what pins of the UART are what, only on the bluetooth module.

Does anyone has a picture with the HM-10 connected?

1 Like

I have HM-10 bluetooth installed on my VESC-X. It works good, no problem.

Post a photo of your vesc I’ll show. You only need to 4 connection wires. On the HM-10 TX RX Grnd VCC or 3-5 voltage

Sorry, previous wiring diagram was not clear (even wrong with the resistors). Here is a better one :slight_smile: Just replace HC-05 by HM-10 (same pin layout)


Just to add a little bit more clarification for future users:

  1. On the back of THE VESC UART port is an indication of what pin is what
  2. You need to plug in this layout otherwise Bluetooth will connect but no data will be displayed: VCC - 5V GND - GND TX - RX RX - TX
  3. Connect HM-10 cables to master VESC UART port
  4. Change application from PPM to PPM and UART

If these steps were written somewhere, it would have saved me 2 hours at least


there’s always a learning curve :wink: