EBiCS Firmware on a M365 STM32 Controller

stancecoke said:
Disable the PLL first. If it runs with disabled PLL try to find the right shift factors for the PLL.
regards
stancecoke
Comment this ?
#define P_FACTOR_PLL 10
#define I_FACTOR_PLL 9
How to disable it ? What are the parameter limits ?
 
miklelv said:
stancecoke said:
Disable the PLL first. If it runs with disabled PLL try to find the right shift factors for the PLL.
regards
stancecoke
Comment this ?
#define P_FACTOR_PLL 10
#define I_FACTOR_PLL 9
How to disable it ? What are the parameter limits ?
That numbers 9 and 10, you need to increase or decresa then them, like 10 to 11, 12 or 13, or contrary, 9, 8, etc.

I think values of 0 for both parameters are the same as disable the PLL.
 
miklelv said:
How to disable it ?
https://github.com/Koxx3/SmartESC_STM32_v3/blob/5592815e7d0b30c56bbb9697e75960e97fb2ccc9/Core/Inc/config.h#L54
It is disabled by default, if you haven't activated it manually, there something different wrong.

regards
stancecoke
 
stancecoke said:
there something different wrong.
regards
stancecoke
OK, Smartec_STM32_v3 was debugged on which version of the m365 controller? Looking at the Driver V2.1 M365.pdf file, this is version V2.1. Have any improvements been made on the PCB according to scheme 2.1? I am trying to run on version 1.4 and have attached a diagram of this version. There are differences in the binding of the LMV324I chip.
https://endless-sphere.com/forums/download/file.php?mode=view&id=303936
 

Attachments

  • Driver_v1.4_3.JPG
    Driver_v1.4_3.JPG
    248.7 KB · Views: 965
miklelv said:
I am trying to run on version 1.4
For hardware specific issues please ask in the Telegram chatgroup.
For the ESP32 interface, please be patient, I'll update it next week to work with the recent version of the controller firmware.

regards
stancecoke
 
I found the jonpry Fork of EBiCS firmware. It uses an analog throttle stick straight CPU pin 11(PA1) STM32. If you look at it, this is what suits me. There is no need for an ESP32 controller. If possible, please add this function to the controller firmware.

please be patient
Yes, of course.
 
hi .... nice firm :)
flashed v3 0.5 the cube ide compile dont use the config.h settings at all :\
#define SPEEDLIMIT_ECO 15
#define SPEEDLIMIT_NORMAL 22
#define SPEEDLIMIT_SPORT 55

// motor current limits for invividual modes in mA
#define PH_CURRENT_MAX_ECO 8000
#define PH_CURRENT_MAX_NORMAL 11000
#define PH_CURRENT_MAX_SPORT 21000

it still runs only 6 km/h eco and speed in normal is to slow too
ota update doesent work cuz scooter doesent identifies itself with firm version
patched downg always stops .... something with retry :\

m365 classic camible v10 ... trace mod (no cut) ...13s2p 21700 54v 9,6ah
how to go back without stlink? it's ordered but it takes some time :\
 
M0g13r said:
the cube ide compile dont use the config.h settings

Hm, strange. Sure, that you are on the right branch on CubeIDE?!

M0g13r said:
ota update doesent work cuz scooter doesent identifies itself with firm version
Hm, I don't know, if DownG is not compatible with a certain dashboard firmware version, perhaps better ask at scooterhacking.org for the compatibility issue....

regards
stancecoke
 
Hm, strange. Sure, that you are on the right branch on CubeIDE?!

yepp was my first use ... so i checked more times everything is right ;)

Hm, I don't know, if DownG is not compatible with a certain dashboard firmware version, perhaps better ask at scooterhacking.org for the compatibility issue....

they can't help .... have to wait for stlink :\

und weil du deutscher bist ..... er kommt ja mittwoch da flash ich wieder rum :D
du könntest aber mal so nett sein und max settings für nen m365 classic posten ;)
die werte scheinen ja anders interpretiert zu werden wie in den gehackten firms

also meine settings für 1.3.8 (botox)
DRV138 kers_min_speed=45.0 normal_max_speed=35 eco_max_speed=21 motor_start_speed=3.0 motor_power_constant=33000 instant_eco_switch=on russian_throttle=on remove_hard_speed_limit=on wheel_speed_const=33

und xiaogen 2.0.5
alt_throttle_on=1
smoothness=0
throttle_type=5
throttle_on_cruise=1
motor_start_speed_on=1
motor_start_speed=3
cruise_control_delay_on=0
cruise_control_delay=0
toggle_cruise_on=1
toggle_cruise_type=1
toggle_cruise_pause=100
toggle_cruise_spd=1
toggle_cruise_start_speed=25
toggle_cruise_value=20
toggle_cruise_delay=50
throttle_step_on=1
s_throttle_step=600
d_throttle_step=300
eco_throttle_step=300
cruise_control_sens_on=1
cruise_control_sens=25
brake_lever_par=1
brake_lever_limit=125
brake_min_current=1000
brake_max_current=40000
brake_step_on=1
s_brake_step=600
d_brake_step=600
eco_brake_step=600
kers_min_speed_on=1
kers_min_speed=60
anticlonk=1
kers_multip_on=0
kers_multip=0
kers_by_mode_on=0
kers_by_mode_eco=6
kers_by_mode_d=12
kers_by_mode_s=20
kers_off_switch=1
s_max_speed_on=1
s_max_speed=55
d_max_speed_on=1
d_max_speed=25
eco_max_speed_on=1
eco_max_speed=18
alt_speed_limits_on=0
alt_lim_cond=0
s_max_speed2=45
d_max_speed2=24
eco_max_speed2=18
s_main_limit_on=1
s_main_limit=22000
eco_d_main_limit_on=1
eco_d_main_limit=11000
s_currents=1
s_max_battery_current=22000
d_currents=1
d_max_battery_current=11000
eco_currents=1
eco_max_battery_current=8000
min_temp_limit_on=1
min_temp_limit=-10
max_temp_limit_on=1
max_temp_limit=65
voltage_limit_on=1
voltage_limit=32
remove_power_reduce=0
mode_to_turn_off_cruise_on=0
mode_to_turn_off_cruise_type=1
mode_to_turn_off_cruise_set=2
cruise_on_all_throttle_on=1
skip_cruise_max_throttle=1
boot_with_eco=0
skip_d_s=0
overvoltage_limit_on=1
overvoltage_limit=55
remove_charg_mode=0
baud_rate=0
no_bms_data_on=1
no_bms_brake=1
no_bms_min_temp=1
no_bms_max_temp=1
no_bms_volt=1
no_bms_cap=1
no_bms_error=1
no_bms_full_battery=1
shutdown_time_on=0
shutdown_time=0
lock_time_on=0
lock_time=0
no_lock_shutdown=1
postcharge_time_on=1
postcharge_time=600
postcharge_time2_on=1
postcharge_time2=300
cruise_beep_on=1
cruise_beep=0
mode_beep_on=1
s_beep=0
d_beep=0
eco_beep=0
charge_in_on=1
charge_in=0
charge_out_on=1
charge_out=0
turn_off_on=1
turn_off=0
charge_end_on=0
back_flash_freq_on=1
back_flash_freq=1
no_kers_flash=1
stop_beep_on=0
stop_beep_value=52
battery_beep_on=0
battery_beep_value=62
predicted_distance_on=1
eco_distance=30
d_distance=25
s_distance=20
ten_wheels_fix=0
ten_wheels_mult=0
strobo_on=0
strobo_spd=0
strobo_stop=1
strobo_fst_on=0
strobo_fst_off=8
strobo_scd_on=16
strobo_scd_off=24
strobo_reset=128
spd_chrg_swap_on=0
spd_chrg_mode_on=1
spd_chrg_mode=1
spd_chrg_set=0
spd_chrg_stop=1
show_param_on=0
show_param_time=12
show_param_type=0
drv_max_temp_on=1
drv_max_temp=90
boot_with_headlight=0
ext_err14=1
ext_err15=1
err_shd_time=1
swap_main_button=0
enable_wr_reg=1
 
M0g13r said:
settings für 1.3.8 (botox)

Sorry, but I'm not familiar with the original or hacked firmware. I think, the settings in the config.h are self explanatory. It was reported, that the BMS of the original Scooter Battery switches off at 15 A battery current, if there is no UART communication, as it is on our v3 firmware actually. The limits for phase current and flux weakening current are not known and are depending very much on the duration, you really use them, as it's a matter of overheating of the motor and the controller.

regards
stancecoke
 
another thing ... i get these warnings .. does it matter?
Invalid project path: Include path not found /home/xxxxxx/git/SmartESC_STM32_v3/Middlewares/Third_Party/FreeRTOS/Source
battery is not orig and can do 30a short time :)
did a 20km ride with gps log ... same speed as before with hacked firm :\ .... but less torque
switching off only works when front lite is on or it starts autodetect
have to do autodetect after ervery startup or it doesent ride :\
starts always in normal mode

mfg
M0g13r
 
M0g13r said:
another thing ... i get these warnings .. does it matter?

Are you sure, we are talking about v3? v3 has no folder called "Middlewares"
https://github.com/Koxx3/SmartESC_STM32_v3/tree/v0.5

M0g13r said:
same speed as before with hacked firm

flux weakening only works in sports mode. What is your setting for #define FW_CURRENT_MAX 18000 //max id

regards
stancecoke
 
OK, does the wheel spin faster, if you hold the wheel in the air in sport mode?

The max phase current can be set to 50000 mA or even higher, if you are brave :wink:
But of course the risk to burn the motor or the controller is quite high, if you use this setting at a long and steep ascent....

regards
stancecoke
 
M0g13r said:
but in intervals

OK, that's just the speed limit with no mass inertia from the rider. Set the speed limit in sport mode to 200. Then there should be no oszillation any more.

regards
stancecoke
 
I'm curious about the senseless performance of FW V3 on M365, can this guy totally throw away the 5-pin hall sensor cable and running like or even better than the hall way? any road test on that?
 
flute2k3@hotmail.com said:
senseless performance of FW V3 on M365
the v3 can't do sensorless commutation at the moment. There is a branch that offers sensorless mode (using the same observer than the VESC), but it's still on the Lishui hardware.
You should take a look at the v2, as far as I know, it has implemented the sensorless option already.
https://github.com/Koxx3/SmartESC_STM32_v2

regards
stancecoke
 
stancecoke said:
the v3 can't do sensorless commutation at the moment. There is a branch that offers sensorless mode (using the same observer than the VESC), but it's still on the Lishui hardware.
You should take a look at the v2, as far as I know, it has implemented the sensorless option already.
https://github.com/Koxx3/SmartESC_STM32_v2

regards
stancecoke
I checked the most recent update of readme, it says no
Capture.PNG

just want a general comments what is your feeling for Lishui sensorless performance? is it feasible to supersede hall? or by another wrods, in the future motor produced without hall is possible?
 
flute2k3@hotmail.com said:
what is your feeling for Lishui sensorless performance
The sensorless branch works for an EBike with a geared hubmotor and freewheel. The firmware has no ability to start the motor under load. The rider has to give the first push by the pedal first, so the wheel spins, then the rotor can start turning in open loop without load due to the freewheel. After the observer syncronized the commutation, the motor runs flawlessly. (with some limitation in max current and temperature)
For a direct drive without freewheel, the sensorless firmware is not suited and I don't plan to implement something like HFI to make the motor start sensorless under load

regards
stancecoke
 
stancecoke said:
flute2k3@hotmail.com said:
what is your feeling for Lishui sensorless performance
The sensorless branch works for an EBike with a geared hubmotor and freewheel. The firmware has no ability to start the motor under load. The rider has to give the first push by the pedal first, so the wheel spins, then the rotor can start turning in open loop without load due to the freewheel. After the observer syncronized the commutation, the motor runs flawlessly. (with some limitation in max current and temperature)
For a direct drive without freewheel, the sensorless firmware is not suited and I don't plan to implement something like HFI to make the motor start sensorless under load

regards
stancecoke

thank you for share, quite informative. yes the HFI make unpleasant noise during start up, I agree with you further efforts on HFI is not very necessary.
 
Back
Top