How to update firmware on the Flipsky 75100 & 75200 FOC ESC

Thank you for your reply. Maybe you are right about the LED. But still, I cannot connect with USB, and it works fine with my other identical 75100 Alu. Do you know if there is anything else I can try? Thank you for your help

@iawest , Check this out:
VESC as SWD programmer: Flash BLE modules and fix bricked VESCs

you can use the working vesc’s GND, CLK and DIO as a SWD Programmer

edit: A-damW was days before me.

Thank you for the suggestion!

I followed Vedders guide to use a VESC to flash it. It did not work :frowning:
I used an original Trampaboard VESC6 MK5 for that. I tried to connect it the same way to my functioning Flipsky Vesc, and that worked. But no contact with the dead one.

It seems like something has happened with the hardware then? Any ideas? Thanks a lot for your help!!

Hi,

I would like to thank @jaykup and all the people involved in this project, it helped me a lot.
I don’t use it in a skate but in an underwater scooter and I needed to boost the voltage of my motor to make it run faster.
I modified the 75100 (bought from Makerbase) to be able to use the hardware SPI interface for the AS5048A magnetic encoder on the motor shaft.
Then I took 2 shunts off on each branch because my motor runs at 7A maximum.
I had to recompile the firmware (I use 5.03), the scooter runs fine on land and I will test it next week-end underwater.

1 Like

you say your motor only runs at 7A, but that is unloaded, when you put it underwater it will be loaded and dependant on the size of the prop etc 100A isn’t uncommon, now you’ll be limited to ~33A which really isn’t much power or torque, i would put the shunts back

i finally got around to doing the 3.3v mod to an mksesc75200, that cleaned it up quite a bit, much, much smoother under load at low rpm. this is on a “2800w” 60h scooter hub motor , 20s battery, set to 150A battery, 300A motor. it took care of a lot of the noise/stutter/ect on WOT launches.

some before

and after



one thing i noticed also is that detection is VERY repeatable, this is after running detection(current settings), writing, then running it again (new detection numbers in the bottom in green)

4 Likes

Nice to see someone else getting similar results with that hardware mod. Seemed to have cleaned it up quite a bit. Also impressed that it’s pulling 300A without much drama or faults.

Im pretty impressed its been holding up as well, but now that i say that its probably gonna pop next time i ride it lol. Ive been running another one all year so far at 300a phase/ 150a battery with a 45h hub on my bike without any issues, only the firmware change on that one. At 325a it started to get a little choppy at low rpm so i lowered it back to 300a.

One thing i thought was a little weird is the one on my bike has only seen peak temps of ~55-60⁰c, but this one with the scooter motor got up to ~65⁰c just loading it with the brakes in my garage a couple times.

1 Like

I have tested loaded (in a bucket of water) and I had to raise the max current to make it turn at it’s maximum speed. I saw that it would not draw more than 10A so this was the limit I put.
I then went diving and I was quite disappointed by the top RPM I could get with 10A, it was a little bit faster than before when it was at 58V but not much more (600EPM. Then is stopped working for an unknown reason (CAN was unresponsive, we drive the Vesc this way) and it would not start again even after unplugging power!
Back home it was fine … I have to test it with a greater current limit but weather is not so good.
The motor is 1200W and is ment to run at 220V, the manufacturer told me that it could run at 7A but I guess I can push it because I feed it with only 80V. That’s not a problem as I have a temperature sensor on the winding and I can monitor it underwater.
The other scooter I have (Dive-Xtras Cuda650) runs under 12S and 35A motor and top RPM loaded is around 1000 (it’s fast!).

Hi guys, I’ve been looking at getting a vesc controller for my store bought ebike (Jupiter Defiant, has 48V brushless hub motor) so I can have some customization over the settings. Specifically been looking at this one: Makerbase VESC 75100 V2

What I’m worried about is setting it up with my ebike. I’ve taken apart my bike and the wiring should be no issue, but I don’t know the parameters of my motor or if it is geared or not. I know that it uses hall sensors and the voltage of the current controller is 48v with 20A and 40V shutoff, but I don’t know the number of poles or anything like that. What do I need to know to get it set up in the Vesc software? I’ve seen the Vesc software has an autodetect parameters thing but does that work for geared motors?

I don’t mind having to open up the motor, but I just want to make sure that I know what I need to for when I get the Vesc. Also if someone knows of any detailed instructions of getting a Vesc controller setup for an ebike that would be greatly appreciated. Thanks

Setup is pretty simple. Connect the battery, motor, hall sensors and throttle. Run motor wizard using 2kg outrunner, and then run the input wizard. Adjust motor (50a to start) / battery current (20a to start) and go for a ride to test it.

As for the firmware, Makerbase uploaded a bunch of configs recently, and the hardware update of 75_100_V2 looks like it has a power button so that may better firmware than what’s in this thread, but I haven’t tested any of it yet.

Pole count is only needed for the VESC to display the correct speed.

A few things you may struggle with on a ebike conversion:

Pedal assist can be tricky to setup as it’s fairly new. Simplest way to get input working is to use an ADC throttle.

The battery likely has a BMS connected through the discharge. This can be problematic for 2 reasons. One is it may shut off if pulling more than 20A or so. Two is if the BMS has overvoltage protection, it may trip when using regen on a fully charged battery. Once this happens the voltage in the ESC will rise a LOT since there is no battery to sink this current into, and can cause failure. If this is geared hub motor then no worries on point 2 as it doesn’t have the ability to regen. Still, probably best to bypass the BMS for discharge (battery straight to ESC) but keep it connected for charging. Then figure out how many cells are in parallel, and look up the cell model to see what sort of discharge current they can handle.

Hall sensor mapping - may not be super obvious which wires are which, and might need to figure out if it’s 5v or 3.3v input. You can measure this on the existing controller to see, then wire accordingly.

Temp sensor - if the motor has one it’s a really good idea to use it since you will be pushing more power and heating up the motor. You will have to figure out what setting makes it read correctly (10k, 100k, beta value, etc). Probably some standard most ebikes use that you could lookup.

The display. This won’t work out of the box, but you can either get something that works with the VESC natively like a Davega or Voyage Megan, use an NRF52 dongle and connect with your phone using the VESC app, look around on Github for the code for the display that comes with the ebike (@1zuna and maybe @dodjob? did some work on the m365 display for VESC compatability), or write something custom in lisp.

Good luck!

2 Likes

Thanks for your detailed response. To simplify stuff to start I could just use a max of 20A so the BMS doesn’t trip and not try regen right? Other than that this seems pretty simple to get started, thanks for all the good info

1 Like

Max of 20A battery yeah. The motor current can be much higher (50A+)

2 Likes

Just tried the 5V hack and it seems to be a bit better than with 3.3V (but still not very clean). I‘d prefer to use the FSESC_75200_ALU FW instead of the hacked one. What do you think about changing the opamp from 8584 to sgm8634. They seem to be pin compatible.
Motor was a 63100 on 6S. Maybe I should run it on 12S to get a better graph. I don‘t know how to scale the time axis.

1 Like

If it helps, those sampling images were taken with this command:

foc_openloop 60 1000

Need to have the “heart” clicked in the VESC tool for the command to work. Also this is 60 peak phase amps, so you only need about 5-8 input amps to reach this level with the duty cycle being so low.

Might have to play with the second number, ERPMs, depending on pole count and voltages. Too high and the motor won’t start, too low and you probably won’t see decent back emf.

I think even on 6s you can get a decent graph if you up the RPMs a bit. I often test with a 30v 10A power supply.

As for changing out the chip - I don’t see why not and I’m pretty curious to see if it will help. It’s cheap and looks easy to swap so it would be worth a shot IMO. Not only is the pinout the same, but the passive shouldn’t change much either so it seems like a pretty safe bet.

Maybe @Lucky can provide some additional input on whether this is fine to swap, and if he thinks it will help.

1 Like

Oh, one more thing. Since that hacked firmware was posted, I’ve seen a lot of people in various Telegram groups and on Facebook use it with no major issues, and it definitely makes the motor run way smoother. So it seems to be pretty good, but it will be harder to keep updated with the latest versions since that firmware actually modifies the base VESC code, rather than just creating a hardware config.

2 Likes

After reading through again the answer of @Lucky, it seems that the makerbase opamp sgm8584 is better than the flipsky sgm8634. Not sure anymore if I should change it. I‘l repeat the measurement as suggested with foc_openloop tonight. Might try the hacked FW.

Tried to run the motor on 12s without rerunning the motor wizzard --R.I.P.
Unfortunately, it died, after booting it gets an error, FAULT_CODE_HIGH_OFFSET_CURRENT_SENSOR_2

The SGM8584 may be more precise than the SGM8634, but it seems to come at the cost of much higher noise. The datasheet lists the input voltage noise at 6x higher.

Sorry to hear, the openloop command is a stress test on any controller, though 60A on a 200A controller isn’t normally a big deal. I use that command to see if repairs will hold or if some other component is weak. An incorrect motor detection can cause issues, but it can also just be the slow_abs command enabled or abs_max set too high, or the 3.3v mod touching the original 5v pad. Thankfully yours is still booting and that error is directly related to the SGM chip.

If it’s booting, then the 3.3v and 5v rails are probably fine but good to check anyway. Check resistance between phases with a motor disconnected to see if they are all the same. If not then probably a shorted mosfet. If all that is good, then putting a new SGM chip on is a good bet to fix it. I don’t see them on mouser or digikey, but LCSC has the SGM8634 in stock.

1 Like