10S custom skate ESC: testers wanted!

Congrats on the first FOC release Benjamin!

I just tried FW 2.3 (on 4.7 HW), together with the no-name 44x85mm, 980 kv, ironless 2-pole inrunner that came with a car I got recently. Detection worked well, in integrate comm mode it needs a bit more start-up boost (.07) to get started smoothly (Int. Lim. = 125, BEMF Coupling =350), but seems to run well so far on the bench.

FOC detection parameters below (the autodetection is really really really awesome Benjamin!):

dr_t-albums-kyosho-scorpion-xxl-pt-ii-picture34093-4485-980-bldc-foc-param.jpg


Revved up in FOC mode a couple of times without load (no pinion on shaft), all very smooth and quiet, but I am getting ABS_OVER_CURRENT faults at no load :shock: (and one DRV8302 fault):

Code:
The following faults were registered since start:

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 143.3
Current filtered : 143.3
Voltage          : 22.70
Duty             : 0.31
RPM              : 7173.0
Tacho            : 11232
Cycles running   : 18
TIM duty         : 1708
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 27.41

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 146.4
Current filtered : 146.4
Voltage          : 22.62
Duty             : 0.29
RPM              : 7572.4
Tacho            : 15141
Cycles running   : 52
TIM duty         : 1641
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 27.64

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 109.7
Current filtered : 109.7
Voltage          : 22.68
Duty             : -0.35
RPM              : 8694.9
Tacho            : 23859
Cycles running   : 11
TIM duty         : -1979
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 27.62

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 142.6
Current filtered : 142.6
Voltage          : 22.76
Duty             : 0.24
RPM              : 6100.3
Tacho            : 42498
Cycles running   : 184
TIM duty         : 1341
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 25.47

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 165.9
Current filtered : 165.9
Voltage          : 22.68
Duty             : 0.28
RPM              : 8749.9
Tacho            : 108442
Cycles running   : 26
TIM duty         : 1580
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 27.87

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 157.9
Current filtered : 157.9
Voltage          : 22.68
Duty             : 0.28
RPM              : 7568.5
Tacho            : 111490
Cycles running   : 28
TIM duty         : 1547
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 28.06

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 156.7
Current filtered : 156.7
Voltage          : 22.61
Duty             : 0.24
RPM              : 7244.1
Tacho            : 136362
Cycles running   : 91
TIM duty         : 1343
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 28.84

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : -150.8
Current filtered : -150.8
Voltage          : 22.62
Duty             : -0.25
RPM              : 6927.3
Tacho            : 148202
Cycles running   : 59
TIM duty         : -1424
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 29.18

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : -78.8
Current filtered : -78.8
Voltage          : 22.65
Duty             : -0.15
RPM              : 5237.9
Tacho            : 230350
Cycles running   : 193
TIM duty         : -864
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 30.68

Fault            : FAULT_CODE_DRV8302
Current          : 20.5
Current filtered : 20.5
Voltage          : 22.55
Duty             : 0.13
RPM              : 2507.5
Tacho            : 248463
Cycles running   : 1762
TIM duty         : 715
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 30.62

Fault            : FAULT_CODE_ABS_OVER_CURRENT
Current          : 174.2
Current filtered : 174.2
Voltage          : 22.61
Duty             : -0.35
RPM              : -5172.6
Tacho            : 247226
Cycles running   : 127
TIM duty         : -1982
TIM val samp     : 5
TIM current samp : 5598
TIM top          : 5600
Comm step        : 4
Temperature      : 30.52

Do I need to tweak some settings for this motor?
 
Cant find infos about HW 4.11 here on endless-sphere. Can someone point out what are the changes to HW 4.10?
 
FOC v2.4 with single hub motor, 8s.

working well except cruise control is a bit strange with FOC. It doesn't seem to maintain the speed - it slows down, then suddenly speeds up...
 
Dr_T said:
Congrats on the first FOC release Benjamin!

I just tried FW 2.3 (on 4.7 HW), together with the no-name 44x85mm, 980 kv, ironless 2-pole inrunner that came with a car I got recently. Detection worked well, in integrate comm mode it needs a bit more start-up boost (.07) to get started smoothly (Int. Lim. = 125, BEMF Coupling =350), but seems to run well so far on the bench.

FOC detection parameters below (the autodetection is really really really awesome Benjamin!):

Revved up in FOC mode a couple of times without load (no pinion on shaft), all very smooth and quiet, but I am getting ABS_OVER_CURRENT faults at no load :shock: (and one DRV8302 fault):

Do I need to tweak some settings for this motor?

Nice that you gave the new implementation a try. On a motor with so low inductance you can try increasing the switching frequency to 60 KHz or so. You can also experiment with the time constant for generating the current controller gains. Try 200µS or 1000 µS and see if you notice any difference.

spaceman said:
Dr_T said:
I just tried FW 2.3 (on 4.7 HW), ...
Is HW 4.7 compatible with HW 4.11? I think the shunt current amplifier outputs of DRV are connected to different ports of the STM32 in version 4.11.

The new firmware should work on all hardware versions, but you have to make sure to choose the correct build. All of them are included with bldc tool, and if you build the firmware yourself you have to select the correct hardware version in conf_general.h.

It is very important to use the correct firmware for the hardware version since the pins have changed. Choosing the wrong firmware will almost certainly kill the VESC.

hexakopter said:
Cant find infos about HW 4.11 here on endless-sphere. Can someone point out what are the changes to HW 4.10?
4.10 and 4.11 are almost exactly the same, I just made one wire thicker that caused some problems for me with some motors.

tomtnt said:
FOC v2.4 with single hub motor, 8s.

working well except cruise control is a bit strange with FOC. It doesn't seem to maintain the speed - it slows down, then suddenly speeds up...

Sounds good. The speed controller is based on current control with FOC and on duty cycle control for BLDC. With FOC you can increase the speed control parameters to make the control loop faster in the advanced tab of bldc tool. Try setting KI to something like 0.015.


This weekend I assembled my first 4.10 PCB and gave it a try. The only thing I did notice is that the red LED was not working, so I fixed that in the firmware. I will test 4.10 a bit more and upload the latest firmware in a few days.
 
vedder said:
tomtnt said:
FOC v2.4 with single hub motor, 8s.

working well except cruise control is a bit strange with FOC. It doesn't seem to maintain the speed - it slows down, then suddenly speeds up...

Sounds good. The speed controller is based on current control with FOC and on duty cycle control for BLDC. With FOC you can increase the speed control parameters to make the control loop faster in the advanced tab of bldc tool. Try setting KI to something like 0.015.

Thanks, the new KI setting solved the cruise control issue
 
This thread is getting kind of long and there is information all over the internet about the VESC, so I just set up a forum for it:

http://vedder.se/forums/

I hope this makes it easier to get support from me and the community. Let me know if you think this was a bad idea :)
 
Just received my vesc from elkick. Very good job there.
Now I'm setting up the vesc and I would like to know few things. I hope you guys can help me.

The low voltage settings to protect my lipos:
In BLDC tool there is battery cutoff start and end. I don't want to go any lower than 3.4V per cell. I am running 12s, so should I use the end number of 3.4V or 40.8V? (3.4Vx12)

Second thing: Is there any way to adjust the throttle to be more smoother at the start? Basically like first 70% of the throttle range would provide 30% of the power. I am using GT2B.
 
About your first question: I attached an overview, you could see the remaining capacity in the right hand column. So the end of 12x 3.4V seems to be ok.
I don't know the answer for your second question though.
 

Attachments

  • Lipo.gif
    Lipo.gif
    29.9 KB · Views: 4,080
Dunkirk said:
Just received my vesc from elkick. Very good job there.
Now I'm setting up the vesc and I would like to know few things. I hope you guys can help me.

The low voltage settings to protect my lipos:
In BLDC tool there is battery cutoff start and end. I don't want to go any lower than 3.4V per cell. I am running 12s, so should I use the end number of 3.4V or 40.8V? (3.4Vx12)

Second thing: Is there any way to adjust the throttle to be more smoother at the start? Basically like first 70% of the throttle range would provide 30% of the power. I am using GT2B.

Hello Dunkirk, The default settings are a very good starting point when using the VESC. After running motor detection and entering your parameters the VESC will have a very gradual and smooth throttle curve without any other adjustments. You can change this by adjusting your amp/current settings to get more acceleration.
 
Anyone got BLDC OSX & FW 2.6 available ? I only got 2.5 on jacob's folder.

Here's a video feedback on FOC with 12S dual VESC/canbus/traction control. FOC still behaves weird.

ON HW 4.7 - FW 2.5 - 12S - RSPEC : Detection is fine/fixed, well done Benjamin.

But brake and acceleration are weird. Brake makes a lot of noise, cruise control on nunchuck makes motors cog even with no rolling. Check the video, it's detailed enough I hope.

[youtube]sFdEmyUDQxU[/youtube]

ON HW 4.10 - FW 2.5 - 12S - SK 6374 : Detection FAILS - Resistance R is not adequately measured. Detection takes a WHILE!

[youtube]l4YFEiP-Icw[/youtube]

hope this helps :D
 
That's what I have done, different sequence, other motor (6374/148kv):

0. BLDC detection with "delay" on (don't know if this is required)
1. Measure λ
2. Measure R and L
3. Calc CC
4. Apply (both of them)
5. Write config

Does that change anything?
 
Hey David, just exactly did this. Does not work on 12S with HW4.10/FW2.5 - SK 6374 168kv. R is not detected (or is detected to 0.0000)

foc_state
Mod d: -0.00
Mod q: -0.00
Duty: -0.00
Vd: -0.00
Vq: -0.02
Phase: -2.51
V_alpha: -0.01
V_beta: 0.02
id: 0.00
iq: 0.00
id_target: 0.00
iq_target: 15.19
Obs_x1: -0.00
Obs_x2: -0.00

The following faults were registered since start:

Fault : FAULT_CODE_DRV8302
Current : -1.2
Current filtered : -1.2
Voltage : 45.46
Duty : 0.01
RPM : 896.4
Tacho : 0
Cycles running : 327
TIM duty : 123
TIM val samp : 5
TIM current samp : 16798
TIM top : 16800
Comm step : 1
Temperature : 21.04

Fault : FAULT_CODE_DRV8302
Current : -0.4
Current filtered : -0.4
Voltage : 45.44
Duty : 0.01
RPM : 1049.5
Tacho : 0
Cycles running : 72
TIM duty : 200
TIM val samp : 5
TIM current samp : 16798
TIM top : 16800
Comm step : 1
Temperature : 21.16

Fault : FAULT_CODE_DRV8302
Current : 0.3
Current filtered : 0.3
Voltage : 45.43
Duty : 0.02
RPM : 1784.7
Tacho : 0
Cycles running : 67
TIM duty : 332
TIM val samp : 5
TIM current samp : 16798
TIM top : 16800
Comm step : 1
Temperature : 21.38

Fault : FAULT_CODE_DRV8302
Current : -0.0
Current filtered : -0.0
Voltage : 45.43
Duty : 0.01
RPM : 2442.2
Tacho : 0
Cycles running : 12
TIM duty : 114
TIM val samp : 5
TIM current samp : 16798
TIM top : 16800
Comm step : 1
Temperature : 21.68

Fault : FAULT_CODE_DRV8302
Current : 0.1
Current filtered : 0.1
Voltage : 45.38
Duty : 0.04
RPM : 0.1
Tacho : 0
Cycles running : 3492
TIM duty : 701
TIM val samp : 5
TIM current samp : 16798
TIM top : 16800
Comm step : 1
Temperature : 21.88

Fault : FAULT_CODE_DRV8302
Current : 31.2
Current filtered : 31.2
Voltage : 45.32
Duty : 0.04
RPM : 0.0
Tacho : 0
Cycles running : 6142
TIM duty : 727
TIM val samp : 5
TIM current samp : 16798
TIM top : 16800
Comm step : 1
Temperature : 22.38
 
I have not done it in the video, but it works on HW4.7 in both ways. Measuring λ works fine, it makes the motor roll perfectly. Problem is the detection on 12S HW4.10 of the Resistance.

Are you using a 12S setup ?
 
I just upgraded to FW2.7 / same testing protocol

Early this morning, I had these results on the SK 168KV MOTOR.

on 12S : FAIL

0) Put BLDC in Delay mode
1) Mesure λ gives me 0,00446350
2) Mesure R gives me 0,00000 Ω and L: 16,55 µH (detection takes like 1 minute)

on 2), same than yesterday except that I got a popup saying that I need first to Measure R (as it's set to 0).

on 6S : DETECTS R

0) Put BLDC in Delay mode
1) Mesure λ gives me 0,00445190
2) Mesure R gives me 0,01398 Ω and L: 15,32 µH (detection takes like 10 seconds)

I decided to give a try on another motor I had available; APS 6374 190KV, still on 12S, still HW4.10. I only swapped one of the motor cables from my E-MTB.

- FOC Detection worked (at least it provided R to a high value and the results where provided in like 10 seconds, not one minute later), no DRV errors in terminal
- I then retried a few second after that a FOC detection and it failed detecting R, detection took 1 minute
- I powered off the VESC
- I put back the motor cable to the SK 168KV motor cables
- I run FOC detection and it provided values (first time ever on 12S - even the R is a high value ...)

so after that I made this video (which are two more FOC detection and not the previous ones)
- FOC on APS motor 190kv
- FOC on SK 168kv

[youtube]Qnec-W1uciw[/youtube]

at this time, I would say that on 12S / HW4.10, FOC detection is inconsistent whereas on HW4.7 it's working perfectly. Not even sure that the R detected values are appropriate; I assume that R value should be more close to 0.018 or so.. If I look at the 168KV motor specs these are :

Turns: 16T
Voltage: 12S Lipoly
RPM/V: 168kv
Internal resistance: 0.019 Ohm
 
HW 4.7 with nunchuck NRF - TESTS ON 12S AND 6S
- I also upgraded both VESCs to FW2.7 on 12S
- FOC parameters detected correctly (R is close to 0.018Ohms)
- Startup boost set to 0.020 (instead of 0.010 by default)
- Motor current limits max set to 80A (instead of 60 by default)
- Voltage limits were set to 8V/57V/40.80/38.40 to match 12S voltage
- Traction Control with nunchuck NRF - Dual RSPEC 190kv

This lead to this video which makes FOC really unmanageable/weird with Motor set to 80A and boost to 0.020

[youtube]o3CUUSkZ-aE[/youtube]

I decided to modify these values:
- Startup boost set to 0.010 (back to default)
- Motor current limits max set to 60A (back to default)

And it is now working WAY better on my desk.. I got sometimes (often) a cogging motor which generates in the real time display or in the terminal some DRV errors. When the motors rolls perfectly, no DRV error are generated. Maybe there's too much power on 12S which make it difficult for the FOC to follow.. I don't know.

As an example (of course you will see that in the next video)

No faults registered since startup

The following faults were registered since start:

Fault : FAULT_CODE_DRV8302
Current : 29.8
Current filtered : 23.7
Voltage : 49.05
Duty : 0.03
RPM : -148.5
Tacho : 6633
Cycles running : 2785
TIM duty : 232
TIM val samp : 5
TIM current samp : 6718
TIM top : 6720
Comm step : 0
Temperature : 25.70

Fault : FAULT_CODE_DRV8302
Current : -0.1
Current filtered : -0.1
Voltage : 49.08
Duty : 0.04
RPM : 1898.2
Tacho : 10928
Cycles running : 25
TIM duty : 285
TIM val samp : 5
TIM current samp : 6718
TIM top : 6720
Comm step : 0
Temperature : 26.18

To make this tests complete, I decided to provide you with the video with Startup boost to 0.10 and Motor Max Current to 60A... first with 12S (you will see the DRV errors and how they occur...) as well as ... 6S ! On 6S, there're no DRV errors displayed. I tried many times but didn't manage to get one displayed. It's like if when I go higher voltage.. something happens that just make an uncontrollable situation/blackout situation of a few seconds that generated the DRV error. Of course, putting motor to 80A make it almost impossible to avoid DRV errors.

[youtube]xkqG5PjuAsM[/youtube]
 
We finally had a chance to use the vertical USB ports on a custom VESC build. The parallel wiring was a challenge, spent many evenings trying to envision the most compact configuration possible. Ended up having a eureka moment involving some of Vedder's capacitor boards and managed to get a very clean result. We extended the base to provide mounting tabs but the actual dimensions are 80mm by 130mm with a depth of 25mm.

8729b36a74d9d0e25322f37f7aab187a9f663515_1_690x495.jpg

1b864e954198b58262321fda59ec27631e8398f3_1_641x500.jpg
 
4 jammed as close as possible. Nice. Not many capacitors needed I guess with the battery beside it and long battery wires.


4 of those on one board..why bother standing.

When are you going to start potting? Im wondering your plans. I've been planning a while as you know, but haven't done anything but think about it and get the rubber. Want to make sure first.

Coat everything in soft silicone (the right kind without sulfur I think)
Paste coconut oil on the fets and all the plug holes and then sink it in a to-be-determined mold shape that just covers it all. Melt the oil out, acetone, stick heatsinks on
 
That looks awesome Chaka, how do you have the CAN bus wired? Are all 4 controllers on the one bus? What are the plans for the board/s?

The heat shinks are the icing on the cake, nice work.
 
Back
Top