Cheap FOCer 2 (Open-source, Low-cost, VESC 6 based ESC) (v0.9 Release. Beta testing ongoing)

Agreed. But I’m guessing I’m having bigger problems if I’m blowing FETs and traces. I have a theory, but maybe not a good one. At one point I had the “DRV8301 OC Mode” set to “Current limit”, and my board struggled mightily to go uphill. Disabling that has turned it back into a mountain goat. Perhaps I should set it back to “current limit” and increase the value?

Hmm, I was thinking that the burned trace could have caused current spikes blowing up the FETs. But I could be totally wrong. I don’t know much about the DRV8301 OC modes but it seems to be disabled by default, so I don’t think you need to enable it. Setting the Motor current max lower might help protect the controller. I’m only running my controller with a motor current max of 30 so I am not exactly stress testing anything.

1 Like

Your theory on the blown trace blowing up the FETs might well be the case. I have to confess that I’m not quite sure how that would happen. But it does seem consistent with what I experienced this time. First FET failed open - that could in fact be nothing more than the blown trace. Perhaps that somehow led to the opposite FET on that phase to fail shorted. Now that I think about it, I didn’t test the first FET out of circuit. I may look for it in the trash can and see if it was actually bad.

I kind of like the idea of backing off on my current limits. I can examine my logs and see what I’m normally getting.

1N5819WS | Guangdong Hottech | Schottky Barrier Diodes (SBD) | JLCPCB I think these would be good. These are the only ones available from the jlcpcb parts library in that package.

You can just omit Q7 to Q12 and R75 to R80 and use 10 Ohms for R41 to R43 and R47 to R49 like in the v0.9 schematic.

I’m not sure about the capacitors on the gate. It looks like they should be changed to 2.2nF caps but this was just forgotten on phase 3. I don’t know what the effect is of the filtering on the hall sensors and the TVS diode. The schematic of the original vesc 6 doesn’t contain these.

I went back and tested the FETs I removed. You were right that two were blown and two were still good. Presumably the two where the trace was blown were fine, and in each case the opposing one was blown. I suppose it doesn’t really matter, but I’d love to understand how taking one out of the circuit causes the other to blow. Anyone have any ideas?

the “here” link is dead. Any other source?

vesc_fw_archive/6.00/Cheap_FOCer_2_V09 at main · vedderb/vesc_fw_archive · GitHub Upload it in the custom tab. You will probably have to upload the bootloader first

1 Like

BINGO!

Thank you!

1 Like

does anyone know a different way to flash the stm32 on the VESC? the ST-Links are very expensive and I was kinda hoping to use a FTDI232 serial to USB programmer I have but pinout is completely different. I did see a video however of someone using the serial adapter to flash an stm32 dev board so I’m wondering if I could do the same here? if not could I use an Arduino ISP to program it? I don’t really know any of this but I will continue my research.

1 Like

One of the 5 dollar st-links on ebay works fine. I dont know about other ways to flash it, i think you can use another vesc. You dont need a genuine official st link the cheapo ones works fine for flashing bootloader.

2 Likes

yeah I ended up getting a cheap clone from eBay, thanks.

2 Likes

I have 10 v0.9 on the way from JLCPCB. Thanks for this great project! Does anyone know if it is possible to do position control on a geared motor (belt drive, FOC mode) with dual encoders? There are 3 hall sensors on the BLDC motor (aka the forst encoder) and a AS5147 14 bit SPI encoder on the output shaft of the belt drive (aka the second encoder). The HALL sensors are used for the commutation and the magnetic absolute encoder for the (PID) position control. Would this be possible out of the box (HW and SW wise)?

You can flash one with a healthy vesc

1 Like

I have a strange issue with at least 2/3 assembled boards. 1/3 board was working OK for some time (couple of hours testing), also with hall sensors and sensorless. After that several MOSFETS burned (they have close to zero resistance between their legs. Tried to swap the DRV from another board, but that was not the issue, it where the mosfets.

The other 2 booards show identical strange behavior: when I rotate the motor (tried 3 different motors) by hand the duty cycle, RPM etc goes from negative to positive between each pole pair. This happens when I rotate the motor slowly and fast by hand. It seem like the polarity of one phase is reversed. Tried all combinations op the phase cables, but that does not make any difference.

Triple checked the soldering of every component under the microscope, especially the DRV and MCU. I am convinced that the soldering is good.

Tried to swap R64 and R65 for 10k resistors (op-amp V1 mod), and build 6.2 V1.0 firmware from source. Same issue. It doesn’t seem V0.9/V1.0 HW or firmware related.

During motor detection the motor does make noise but doesn’t spin up. Whereas the other (now defective board) did. Probabaly because the board detection an opposite/reverse movement of the motor for the next pole pair.

I’m out of options and really hope @shaman or someone else has a clue where to look into this issue. Can someone please help me with this?

Have you ordered the boards from jlcpcb completely soldered? Or what components did you put on yourself? Pictures of the boards and a video of the behaviour might help as well

Sorry for my late response. I did not get a notification.
Yes, all from JLCPCB. Fully soldered, except MCU, electrolytic caps and Mosfets.

In the mean time I have assembled 4 boards. 3 died, 1 works (for a coulpe of days under light testing).

Everything more or less works. Position control is troublesome at low speeds (500 erpm). On HALL, HFI and even on a AS5048 encoder. The phase current of phase 3 is (static, not rotation/braking) at -1 amps, wheres phase 2 and 1 measure +0.5 amps. Not sure if thats related, or linked with the OP-AMP gains in code and the resistors.

Here are some photos:



1 Like

Hey,

I have one weird issue with Focer 2 and one specific motor. That motor is turnigy aerodrive sk3 - 5055. I have two such motors, but with different KV ratings. One motor with 320kv rating works fine and I used this motor some years ago without issues. I bought second one later as a spare piece and it also works just fine, but recently I bought one with 280kv rating and FOCer (actually even when looking through VESC tool) significantly misreads current. It seems that current is too high by a factor of 5 or so. Multimeter shows good and appropriate current value, but VESC just reads totally outrageous numbers, too high numbers to be more precise. Due this reason, it limits current very soon although actual, measured current is way way lower. I tried changing motor parameters, redoing motor configuration, but still… that current is way way too high. Any ideas, what can cause that? I also found out, that inductivity of motors also differs quite significantly…

Might be the wrong firmware for the hardware. If I recall, there were some shunt changes with different revisions of this esc. Check the board and the vesc tool to make sure it matches

But how could motor affect current readings? Those motors, when holding in hand, are totally identical (poles etc.). It is really weird, to be honest.

Although, I could try to reflash the firmware…