OWIE Wiring & FW (Use FM BMS for 15s VEXR)

VESC - FM-BMS - OWIE Tutorial

Disclaimer: Reusing the FM BMS as a charge only BMS in a VESC OneWheel conversion disables safety features and by going this route you accept that risk. This configuration should allow for reasonably safe balance charging, but there are still risks. Do your own research. The better solution would obviously be a reliable, well built battery pack combined with an appropriate BMS that is capable of communicating with the VESC controller. This is simply an attempt to reuse the FM BMS for balance charging and should not be accepted as a final solution.


  • 2022-11-11: Updated method for connecting the FM BMS in charge only configuration that should “in theory” be safer than the previous method.

Table of Contents

  1. Quick Config/Summary of Options
  2. Hardware Needed
  3. Load OWIE FW to the ESP8266 chip
  4. Installation/Wiring Diagrams (VESC/XR)

Quick Config/Summary of Options

MY hardware/wiring config (Expand)
  • I am using the standard latching switch with a 10amp diode to prevent power feeding back to the XLR charge pins.
  • I bridged the positive XT60 terminals on my FM BMS . I have re-run my wiring configuration to match what is shown in the new infographic → Installation/Wiring Diagrams (VESC/XR)
  • The purple wire from the stock harness connects my XLR positive pins to the FM BMS:
    • Connection point 1: Purple wire connected behind the diode (between the diode and the XLR positive pin 2) or connected to pin 3. Not all XLR chargers provide bridged power on pin 3 but the FM Charger does.
    • Connection point 2: Future Motion BMS. See infographic.
  • I placed my OWIE in the battery enclosure with the FM BMS and CBXR Battery.
  • OWIE power is sourced from the FM_BMS 5v and GND Pins
  • OWIE Rx hooked up to white wire coming from FM BMS
  • In this configuration the OWIE only turns on when the Future Motion BMS turns on due to power on the XLR port (via charge port pin 2 with diode or pin 3) passing voltage down the purple wire to the FM BMS.
Other Options (Expand)
  • There is a way to use a momentary switch and the blue wire for discharge BMS config, but I am not familiar with it. Do your own research and feel free to share.
  • Place the OWIE in the controller box.
    • You could hijack one/two of the small unused wired from the stock harness and use them to run power from the FM-BMS 5v/GND pins up to the controller box or run new wires if all are wires are in use.

Hardware Needed

  • VESC Controller of your choosing. I run the little FOCer 3.1
  • Any FM BMS (I have only done this on XR, but process is pretty much the same for pint bms)
  • 15s (series) battery. Future motion BMS is only for 15s batteries.
  • ESP8266 chip. Can be purchased on amazon.
  • Soldering tools

Load OWIE FW to the ESP8266 chip

Option 1 (Windows)

  1. Download the latest OWIE “firmware.bin” release from github here:
  2. Download the ‘nodemcu-flasher-master.zip’ from the internet or my google drive link:
  3. Extract the ‘nodemcu-flasher-master.zip’ to a folder on your PC
  4. Plug the ESP8266 chip into your windows computer via a Micro USB cable.
  5. launch the ‘ESP8266Flasher.exe’ executable located in the folder you just extracted. Example:
    • C:\Users\yournamehere\Downloads\nodemcu-flasher-master\Win64\Release\ESP8266Flasher.exe
  6. Go to the ‘Advanced’ tab and set your ‘Baudrate’ to ‘115200’ as seen here:
  7. Go to the ‘Config’ tab
    1. Click on the ‘Gear’ icon on the topmost line:
    2. Select the latest OWIE “firmware.bin” file from your computer that you downloaded in ‘Step 1’ and then click ‘Open’
  8. Next, Go to the ‘Operation’ tab
    1. If your ESP8266 chip is properly connected via USB to your computer, then you should see an option to Select ‘COM#’ in the ‘COM Port’ Dropdown: (If no COM port is showing up in the drop-down then it’s worth trying a different USB cable, or looking for drivers. That is outside of the scope of this ‘How-To’ at the moment.)
      Untitled 2

    2. Still on the ‘Operations’ tab, no click “Flash”.

    3. After you click “Flash” the ‘AP MAC’ and ‘STA MAC’ fields should populate and the progress bar should start moving. Similar to this image:

    4. Once the progress bar is all the way across and the firmware flash has finished, the interface should say ‘Ready’ and a green check mark. Also the button will return to saying “Flash(F)”:

    5. Hit the small reset button on the side/corner of the ESP8266 chip and wait a few seconds for the chip to reboot:

    6. You can now close the “ESP8266Flasher.exe” flashing application.

    7. Now you are ready to test the OWIE Chip before installation.

  9. Test the OWI Chip before installation
    1. If you did not hit the ‘Reset’ button on the side of the chip, you can do that now and wait a few seconds for the chip to reboot.
    2. On your phone you should now be able to find and connect to a Wi-Fi Network named similar to ‘Owie-xxx’
    3. Once connected you may be prompted to sign-in to the Wi-Fi network or your phone may just redirect you to the Owie page. You should see a screen like this:
    4. If you see the expected screen then you are ready to install your chip. Disconnect it from the USB port and take the chip over to your BMS for installation.

Installation/Wiring Diagrams (VESC/XR/OWIE/FM-BMS)

Addtional Wiring diagram provided by @Haverr4 & @OMOT :


Thanks to @Haverr4 & @OMOT for their contributions and explaining to me why this is the better option as it still allows the FM BMS to cut power to the battery when charging.


Quick update on purple wire. Should go to the 3rd pin of the XLR charge port or else the BMS would try to balance all the time unless you have diodes in place then it would still work behind those, but I will update the post/picture soon.

Thanks a lot for this. This is going to save me a lot of money. I think I will combine this with u/Haverr4’s guide. That way I can charge only without the XT60 bypass. I don’t plan on using the BMS while riding. Crazy to me that the bluetooth only needs 3 wires to get all that info.


OWIE is WiFi. But yeah, only need the white wire to grab the data from the FM BMS.

This is a very well written and clear guide! Thank you!

I’m planning my next XR conversion right now and I think an OWIE chip will make it into the mix.

1 Like

I added a cross link in the above post to @Haverr4’s post showing how you can use an XT60 pig tail as an option instead of having to add the soldered bridge directly on the FM BMS. It’s effectively the same outcome as far as I know. It’s not the same. His method is better as it leaves FM BMS ability to cut power to the battery during charging.

1 Like

Post has been updated with better wiring and safety disclaimer.

Can you explain why the diode is required to wire purple directly to charger pin 2? Thanks

Diode isn’t required using the latest wiring diagram because the charge and discharge path are no longer shared. We are awaiting full tests on possibly jumping the purple wire directly to the positive side of the charge xt60 on the BMS so that we might be able to at the purple wire to the bundle of the 4 other wires being used as the charge path from the XLR to battery box.

Previously the diode was required because the charge and discharge path were shared. Therefore, the purple wire would have always had power leaving the future motion BMS powered on at all times because the battery would have been feeding power to it to the purple wire without the diode blocking it.

Hopefully that makes sense.

Maybe a dumb question, but why is this method safer than the XT60 bridge-wire method?

Not necessarily safer IMO just different. A bit easier for some people to implement maybe. With the bridge method the discharge wire (edited) is connected to the other side of the BMS so the discharge current travels through the BMS. The bridge prevents the BMS from cutting your power off. With this method only charge current travels through the BMS.

It’s safer without the bridge because the BMS can cut power to the battery during charging if/when needed.

1 Like

is the blue wire still needed?
Edit; I see now that it’s not. vesc looks to be powered directly thru the latching switch instead of being triggered to turn on via the blue wire

Is the Wiring diagram suggesting to use the four remaining BMS wires in the harness (blue, black, green, white) to carry the charge current?

Correct. Or else you could run a separate larger gauge wire.

Hey thanks for this guide!
Why the antispark switch is needed? And I mean, why I don’t see it in any other guide?
Is there something different in this circuit so that the vesc should be more protected?

Thanks for this helpful guide.

Just want to add that when flashing the firmware, you need to (or at least I needed to) short the G and TX pins (aka GPIO 0 and GROUND) on boot up and plug in of USB. Check the baud rate and add firmware directory, then click flash. At this point I un-shorted the G and TX pins and the status bar started and had a successful upload.

Are you running a different version of the ESP8266 chip than the one linked? I have never had to do this on this version of the chip:

Please confirm if it is a different chip or the same one as this is definitely worth noting. I’ve flashed at least 10 of these and I’ve never had to do that yet.

Good question. I don’t use an anti-spark switch on any of my builds. That diagram with the anti-spark switch was originally created for another purpose than this tutorial, but it is very relevant so I added it here. I don’t think it would hurt to add the anti-spark switch, but I will leave that choice up to the end user.

At the time I searched for ESP8266 in Amazon (I’m in Australia) and purchased without much thought.

I flashed successfully but am yet to connect to the BMS/battery.

This is the one I purchased. Link: https://www.amazon.com.au/dp/B0966MLWV1?psc=1&ref=ppx_yo2ov_dt_b_product_details

Edit - the one I purchased is definitely bigger than what you’ve linked. I will grab the smaller unit to save space. Thanks.