RoboDurden / Hoverboard-Firmware-Hack-Gen2.x

with different defines_2-x.h for different board layouts :-) Compiles with Keil version 6
GNU General Public License v3.0
84 stars 28 forks source link

Gen2.1.6.1 : Questions about AutoDetect #80

Open hiliving opened 5 months ago

hiliving commented 5 months ago

image image image

My board is GD32F130C6T6, and the serial port pin is PA2 PA3. I flashed in the bin named hoverboard autodetect GD32F130 tx=PA2, rx=PA3. bin image

and open the serial terminal in arduino like this: image

I used a self-locking button to bridge the power switch, followed by pressing the enter key, then pressing v, and then pressing s according to the prompts, but I found that my interface remained on this interface and did not display the list of automatically detected pins. Like in your video, I have watched your video many times, but I haven't found any errors. Could you please write down the specific steps so that I can check which step is problematic. thx very much. e10185deac1270a72ee3c4c7040ef99

RoboDurden commented 5 months ago

Maybe you need to press enter in order to send the 'v' or 's' to the hoverboard.

Thank you for testing my autodetect.

hiliving commented 5 months ago

Yes, I pressed v and also pressed s, but the process seems to be looping back to the beginning, trying to bridge the power switch again, or returning to the original interface

hiliving commented 5 months ago

5b3169ae6c9088b1cc28d102ab44e9a b0997e4e5240f0beb6dceb4cdab7dd7 6b6f9659f7a093fd84091f9b25ebcd4 bb1bf0f73216b50a8d2600ef3497251

I feel that the prompt is not very clear. I don't know whether to click Enter or S, but regardless of which one to click, I will repeat the previous steps

RoboDurden commented 5 months ago

I do not see that you cycle through all analog pins by hitting enternto find the correct one. Your screenshots only show a0.

RoboDurden commented 5 months ago

Is the motor spinning for 2 seconds every two seconds in this first stage ,?

hiliving commented 5 months ago

yeah ,it spining like your video.

RoboDurden commented 5 months ago

Then please find the correct pin for battery voltage and then hit v to save the pin. Then send l to show the updated list. Then send s to proceed to next stage.

hiliving commented 5 months ago

image I am using a 24V power supply,When A4 appeared, I pressed V and then pressed S,When l is pressed, the motor restarts spinning

hiliving commented 5 months ago
try A5
PA5: 39.47 V +- 0.00
PA5: 39.84 V +- 0.37

try A7
PA7: 48.70 V +- 0.00
PA7: 49.91 V +- 1.21
PA7: 51.31 V +- 1.40

try B1
PB1: 98.73 V +- 0.00

try A0
PA0: 98.86 V +- 0.00
PA0: 98.89 V +- 0.03

try A5
PA5: 39.83 V +- 0.00
PA5: 39.82 V +- 0.01

try A7
PA7: 47.19 V +- 0.00
PA7: 50.50 V +- 3.31

try B1
PB1: 98.72 V +- 0.00

try A0
PA0: 98.87 V +- 0.00
PA0: 98.88 V +- 0.00
PA0: 98.86 V +- 0.01

try A5
PA5: 39.81 V +- 0.00
PA5: 38.36 V +- 1.45

try A7
PA7: 47.68 V +- 0.00
PA7: 45.73 V +- 1.95
PA7: 48.75 V +- 3.02

try B1
PB1: 98.75 V +- 0.00

try A0
PA0: 98.86 V +- 0.00
PA0: 98.87 V +- 0.01
PA0: 98.87 V +- 0.00

try A5
PA5: 38.26 V +- 0.00

try A7
PA7: 48.58 V +- 0.00
PA7: 48.71 V +- 0.13

try B1
PB1: 0.34 V +- 0.00
PB1: 0.34 V +- 0.00
PB1: 98.72 V +- 98.38

try A0
PA0: 98.87 V +- 0.00

PA0: 98.86 V +- 0.01
PA5: 39.81 V +- 0.00
PA5: 39.83 V +- 0.02
PA5: 39.83 V +- 0.00

try A7
PA7: 45.67 V +- 0.00
PA7: 51.99 V +- 6.31

try B1
PB1: 98.71 V +- 0.00
PB1: 98.73 V +- 0.01

PB1: 98.73 V +- 0.01
PA0: 98.87 V +- 0.00
PA0: 98.87 V +- 0.00

try A5
PA5: 38.25 V +- 0.00
PA5: 38.35 V +- 0.10
PA5: 38.36 V +- 0.01

try A7
PA7: 48.72 V +- 0.00
PA7: 48.70 V +- 0.02

PA7: 48.72 V +- 0.02
try B1
PB1: 0.34 V +- 0.00
PB1: 0.32 V +- 0.02
PB1: 98.73 V +- 98.41

try A0
PA0: 98.88 V +- 0.00
PA0: 98.87 V +- 0.01
PA0: 98.89 V +- 0.02

try A5
PA5: 39.81 V +- 0.00
PA5: 38.51 V +- 1.31

try A7
PA7: 45.05 V +- 0.00
PA7: 48.92 V +- 3.87
PA7: 48.79 V +- 0.13

try B1
PB1: 0.34 V +- 0.00
PB1: 0.34 V +- 0.01
PB1: 0.32 V +- 0.02
PB1: 98.72 V +- 98.40
PB1: 0.34 V +- 98.38
PB1: 98.72 V +- 98.38
PB1: 98.72 V +- 0.00
PB1: 98.75 V +- 0.03
PB1: 98.73 V +- 0.02
PB1: 98.74 V +- 0.01
PB1: 98.71 V +- 0.03
PB1: 0.32 V +- 98.39
PB1: 0.34 V +- 0.02
sPB1: 0.34 V +- 0.01
PB1: 0.34 V +- 0.01
PB1: 98.71 V +- 98.38
PB1: 0.34 V +- 98.37
PB1: 98.72 V +- 98.39
sPB1: 0.34 V +- 98.38
PB1: 0.34 V +- 0.00
PB1: 0.35 V +- 0.00
PB1: 0.35 V +- 0.00
PB1: 98.74 V +- 98.39
PB1: 0.32 V +- 98.42
PB1: 29.34 V +- 29.02
PB1: 0.34 V +- 29.00
PB1: 0.34 V +- 0.00
PB1: 0.34 V +- 0.00
PB1: 0.32 V +- 0.02
PB1: 0.32 V +- 0.00
PB1: 0.34 V +- 0.01
PB1: 98.72 V +- 98.38
PB1: 0.35 V +- 98.37
PB1: 0.34 V +- 0.01
PB1: 0.34 V +- 0.00

#define VBATT       PA4
now detecting SELF_HOLD p'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)
:-)s
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)v
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)s
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)

//#define VBATT     P??
now detecting SELF_HOLD pin,
bridg'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
try A4
PA4: 23.54 V +- 0.00
PA4: 22.50 V +- 1.04
PA4: 24.05 V +- 1.55
PA4: 24.04 V +- 0.00
PA4: 24.06 V +- 0.02
PA4: 24.06 V +- 0.00
PA4: 22.78 V +- 1.28
PA4: 22.68 V +- 0.10
PA4: 23.80 V +- 1.13
PA4: 24.02 V +- 0.21
PA4: 24.05 V +- 0.03
PA4: 24.04 V +- 0.01
vPA4: 23.14 V +- 0.90
PA4: 22.78 V +- 0.36
PA4: 22.79 V +- 0.01
PA4: 22.77 V +- 0.02
PA4: 24.03 V +- 1.25
PA4: 24.04 V +- 0.01
PA4: 23.61 V +- 0.44
PA4: 23.31 V +- 0.29
PA4: 22.71 V +- 0.61
PA4: 22.74 V +- 0.03
sPA4: 24.04 V +- 1.31
PA4: 24.05 V +- 0.00
PA4: 24.04 V +- 0.01
PA4: 23.95 V +- 0.09
PA4: 22.81 V +- 1.14
PA4: 22.76 V +- 0.05
PA4: 24.04 V +- 1.28
PA4: 24.05 V +- 0.01
PA4: 24.05 V +- 0.00
PA4: 24.05 V +- 0.01
PA4: 22.80 V +- 1.24
lPA4: 22.84 V +- 0.04
PA4: 22.42 V +- 0.43
PA4: 24.02 V +- 1.60
PA4: 24.05 V +- 0.03
PA4: 24.04 V +- 0.01
PA4: 22.51 V +- 1.53
PA4: 22.70 V +- 0.19
PA4: 22.49 V +- 0.21
PA4: 23.83 V +- 1.34
sPA4: 24.04 V +- 0.21
PA4: 24.03 V +- 0.01
PA4: 24.03 V +- 0.01
PA4: 22.99 V +- 1.04
PA4: 22.71 V +- 0.28
PA4: 22.69 V +- 0.02
PA4: 24.04 V +- 1.35
PA4: 24.03 V +- 0.01

//#define VBATT     P??
now detecting SELF_HOLD pin,
bridg'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
try A4
PA4: 24.05 V +- 0.00
PA4: 22.94 V +- 1.10
PA4: 22.98 V +- 0.03
PA4: 22.77 V +- 0.20
PA4: 24.04 V +- 1.27
PA4: 24.06 V +- 0.02
PA4: 24.03 V +- 0.03
PA4: 24.05 V +- 0.02
PA4: 22.90 V +- 1.15
PA4: 22.78 V +- 0.12
PA4: 22.79 V +- 0.01
PA4: 24.04 V +- 1.25
PA4: 24.05 V +- 0.01
PA4: 24.05 V +- 0.00
PA4: 23.45 V +- 0.60
vPA4: 22.77 V +- 0.67
PA4: 22.76 V +- 0.02
PA4: 22.45 V +- 0.30
PA4: 24.06 V +- 1.60
PA4: 24.04 V +- 0.02
PA4: 23.91 V +- 0.13
PA4: 22.91 V +- 1.00
PA4: 22.39 V +- 0.52
PA4: 22.47 V +- 0.08
PA4: 24.06 V +- 1.59
PA4: 23.99 V +- 0.07
PA4: 24.04 V +- 0.05
PA4: 24.03 V +- 0.02
PA4: 22.56 V +- 1.47
PA4: 22.54 V +- 0.02
PA4: 24.04 V +- 1.51
PA4: 24.06 V +- 0.01
PA4: 24.06 V +- 0.01
PA4: 24.05 V +- 0.01
PA4: 22.84 V +- 1.21
PA4: 22.76 V +- 0.08
PA4: 23.93 V +- 1.17
PA4: 24.03 V +- 0.10
PA4: 24.05 V +- 0.02
PA4: 24.06 V +- 0.01
PA4: 23.13 V +- 0.93
PA4: 22.87 V +- 0.26
PA4: 22.81 V +- 0.06
PA4: 23.03 V +- 0.22
PA4: 24.05 V +- 1.02
PA4: 24.06 V +- 0.02
PA4: 23.58 V +- 0.49
PA4: 23.31 V +- 0.26
PA4: 22.83 V +- 0.48
PA4: 22.80 V +- 0.02
PA4: 24.05 V +- 1.25
PA4: 24.06 V +- 0.01
PA4: 24.06 V +- 0.00
PA4: 23.95 V +- 0.10
PA4: 22.96 V +- 0.99
PA4: 22.90 V +- 0.06
PA4: 24.05 V +- 1.15
PA4: 24.06 V +- 0.01
PA4: 24.05 V +- 0.01
PA4: 24.05 V +- 0.00
PA4: 22.60 V +- 1.45
PA4: 22.67 V +- 0.07
PA4: 22.52 V +- 0.16
PA4: 24.05 V +- 1.53
PA4: 24.03 V +- 0.02
PA4: 24.04 V +- 0.01
PA4: 22.65 V +- 1.39
PA4: 22.80 V +- 0.15
PA4: 22.61 V +- 0.19
PA4: 23.95 V +- 1.34
PA4: 24.07 V +- 0.12
PA4: 24.05 V +- 0.02
PA4: 24.07 V +- 0.02
PA4: 23.03 V +- 1.04
PA4: 22.82 V +- 0.22
PA4: 22.77 V +- 0.05
PA4: 24.04 V +- 1.27
PA4: 24.06 V +- 0.02
PA4: 24.04 V +- 0.02
PA4: 23.53 V +- 0.51
PA4: 22.79 V +- 0.74
PA4: 22.76 V +- 0.03
PA4: 22.70 V +- 0.07
PA4: 24.04 V +- 1.35
PA4: 24.04 V +- 0.00
PA4: 23.98 V +- 0.06
PA4: 22.81 V +- 1.17
PA4: 22.84 V +- 0.03
PA4: 22.80 V +- 0.04
PA4: 24.06 V +- 1.26
PA4: 24.05 V +- 0.01
PA4: 24.06 V +- 0.01
PA4: 24.04 V +- 0.02
PA4: 22.97 V +- 1.08
PA4: 22.89 V +- 0.07
PA4: 24.03 V +- 1.14
PA4: 24.05 V +- 0.02
PA4: 24.05 V +- 0.00
PA4: 24.05 V +- 0.00
PA4: 22.49 V +- 1.55
PA4: 22.37 V +- 0.12
PA4: 23.45 V +- 1.08
PA4: 23.97 V +- 0.52
PA4: 24.06 V +- 0.09
PA4: 24.03 V +- 0.03
PA4: 22.88 V +- 1.15
PA4: 22.41 V +- 0.47
PA4: 22.68 V +- 0.27
PA4: 22.63 V +- 0.05
PA4: 24.04 V +- 1.41
PA4: 24.04 V +- 0.00
PA4: 23.67 V +- 0.37
PA4: 23.51 V +- 0.17
PA4: 22.76 V +- 0.74
PA4: 22.84 V +- 0.08
PA4: 24.06 V +- 1.22
PA4: 24.05 V +- 0.01
PA4: 24.05 V +- 0.00

try A6
PA6: 47.83 V +- 0.00
PA6: 49.01 V +- 1.18
PA6: 49.07 V +- 0.06
PA6: 47.74 V +- 1.33
PA6: 47.73 V +- 0.01
PA6: 47.73 V +- 0.00

try B0
PB0: 31.48 V +- 0.00

try A1
PA1: 98.72 V +- 0.00
PA1: 0.33 V +- 98.39
PA1: 98.72 V +- 98.40

try A4
PA4: 24.01 V +- 0.00
PA4: 24.04 V +- 0.04
PA4: 24.04 V +- 0.01
PA4: 22.96 V +- 1.08
PA4: 23.13 V +- 0.17
PA4: 22.93 V +- 0.20
PA4: 23.77 V +- 0.85
PA4: 24.05 V +- 0.28
PA4: 24.06 V +- 0.01
PA4: 24.06 V +- 0.00
PA4: 22.75 V +- 1.30
PA4: 22.35 V +- 0.40
PA4: 22.43 V +- 0.07
VPA4: 24.05 V +- 1.63
PA4: 24.06 V +- 0.00
PA4: 24.05 V +- 0.00
PA4: 23.58 V +- 0.47
PA4: 22.44 V +- 1.15
VPA4: 22.39 V +- 0.05
PA4: 22.63 V +- 0.25
PA4: 24.05 V +- 1.41
PA4: 24.07 V +- 0.02
PA4: 24.03 V +- 0.03
PA4: 22.59 V +- 1.44
PA4: 22.80 V +- 0.21
PA4: 22.75 V +- 0.05
PA4: 24.05 V +- 1.30
PA4: 24.04 V +- 0.01
PA4: 24.06 V +- 0.02
PA4: 24.05 V +- 0.00
PA4: 22.89 V +- 1.16
PA4: 22.81 V +- 0.09
PA4: 24.03 V +- 1.23
PA4: 24.07 V +- 0.04
PA4: 24.06 V +- 0.00
'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)I
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)l
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)

//#define VBATT     P??
PA0: 39.63 V +- 0.00
PA0: 39.40 V +- 0.23
PA0: 39.71 V +- 0.31
PA0: 39.71 V +- 0.00
PA0: 39.64 V +- 0.07
PA0: 38.26 V +- 1.38
PA0: 38.27 V +- 0.01
PA0: 38.26 V +- 0.01
PA0: 39.71 V +- 1.44
PA0: 39.71 V +- 0.00
PA0: 39.71 V +- 0.00
PA0: 39.70 V +- 0.00
PA0: 38.25 V +- 1.45

try A5
PA5: 38.26 V +- 0.00
PA5: 39.69 V +- 1.42
PA5: 39.70 V +- 0.02
PA5: 39.70 V +- 0.01
PA5: 39.70 V +- 0.01
PA5: 38.31 V +- 1.39

try A7
PA7: 49.54 V +- 0.00
PA7: 47.78 V +- 1.76
PA7: 48.71 V +- 0.93

try B1
PB1: 0.34 V +- 0.00
PB1: 0.34 V +- 0.00

try A0
PA0: 98.87 V +- 0.00
PA0: 98.86 V +- 0.01
PA0: 98.86 V +- 0.01

try A5
PA5: 38.26 V +- 0.00
PA5: 39.70 V +- 1.44
PA5: 39.71 V +- 0.00

try A7
PA7: 49.77 V +- 0.00
PA7: 45.76 V +- 4.02
PA7: 51.91 V +- 6.15
PA7: 48.40 V +- 3.51
PA7: 48.70 V +- 0.30
PA7: 48.71 V +- 0.01
PA7: 48.68 V +- 0.04
PA7: 49.85 V +- 1.18
PA7: 45.57 V +- 4.28
PA7: 48.43 V +- 2.86
PA7: 48.74 V +- 0.31
PA7: 48.70 V +- 0.04
PA7: 48.69 V +- 0.01
PA7: 48.72 V +- 0.02
PA7: 51.30 V +- 2.59
PA7: 49.62 V +- 1.68
PA7: 52.27 V +- 2.65
PA7: 48.68 V +- 3.59
PA7: 48.70 V +- 0.02
PA7: 48.71 V +- 0.00
PA7: 46.62 V +- 2.09
PA7: 50.02 V +- 3.39
PA7: 45.44 V +- 4.58
PA7: 49.00 V +- 3.57
PA7: 48.70 V +- 0.30
PA7: 48.70 V +- 0.00
PA7: 48.72 V +- 0.02
PA7: 47.83 V +- 0.90
PA7: 51.65 V +- 3.83
PA7: 46.72 V +- 4.94
PA7: 48.73 V +- 2.01
PA7: 48.71 V +- 0.02
PA7: 48.70 V +- 0.00
PA7: 49.21 V +- 0.51
PA7: 45.75 V +- 3.47
PA7: 51.03 V +- 5.28
PA7: 47.48 V +- 3.55
PA7: 48.69 V +- 1.21
PA7: 48.69 V +- 0.00
PA7: 48.90 V +- 0.21
PA7: 51.60 V +- 2.71
PA7: 48.65 V +- 2.96
PA7: 52.02 V +- 3.37
PA7: 48.69 V +- 3.33
PA7: 48.72 V +- 0.04
PA7: 48.72 V +- 0.00
PA7: 48.72 V +- 0.01
PA7: 49.40 V +- 0.69
PA7: 44.95 V +- 4.45
PA7: 48.91 V +- 3.96
PA7: 48.75 V +- 0.16
PA7: 48.69 V +- 0.06
PA7: 48.73 V +- 0.05
PA7: 47.49 V +- 1.24
PA7: 52.45 V +- 4.96
PA7: 47.23 V +- 5.22
PA7: 49.24 V +- 2.00
PA7: 48.71 V +- 0.52
PA7: 48.70 V +- 0.01
PA7: 49.96 V +- 1.26
PA7: 45.09 V +- 4.87
PA7: 46.82 V +- 1.73
PA7: 47.27 V +- 0.44
PA7: 48.72 V +- 1.45
PA7: 48.70 V +- 0.02
PA7: 47.84 V +- 0.86
PA7: 46.84 V +- 1.00
PA7: 50.73 V +- 3.89
PA7: 49.58 V +- 1.15
PA7: 48.69 V +- 0.89
PA7: 48.70 V +- 0.01
PA7: 48.71 V +- 0.01
PA7: 49.45 V +- 0.75
PA7: 46.32 V +- 3.14
PA7: 48.15 V +- 1.83
PA7: 48.76 V +- 0.61
PA7: 48.71 V +- 0.04
PA7: 48.69 V +- 0.03
PA7: 48.70 V +- 0.01
PA7: 50.63 V +- 1.93
PA7: 49.47 V +- 1.16
PA7: 51.97 V +- 2.49
PA7: 48.64 V +- 3.32
PA7: 48.74 V +- 0.09
PA7: 48.70 V +- 0.04
PA7: 48.58 V +- 0.12
PA7: 52.22 V +- 3.64
PA7: 45.71 V +- 6.51
PA7: 47.97 V +- 2.26
PA7: 48.74 V +- 0.77
PA7: 48.71 V +- 0.04
PA7: 48.69 V +- 0.01
PA7: 45.55 V +- 3.14
PA7: 51.22 V +- 5.67
PA7: 49.73 V +- 1.49

try B1
PB1: 0.34 V +- 0.00
PB1: 0.34 V +- 0.01
PB1: 0.34 V +- 0.01

try A0
PA0: 98.87 V +- 0.00

try A5
PA5: 38.28 V +- 0.00
PA5: 38.25 V +- 0.03
PA5: 38.30 V +- 0.04
PA5: 39.68 V +- 1.38

try A7
PA7: 48.74 V +- 0.00
PA7: 48.58 V +- 0.16
PA7: 50.50 V +- 1.92
PA7: 47.72 V +- 2.78

try B1
PB1: 98.70 V +- 0.00
PB1: 0.34 V +- 98.36

try A0
PA0: 98.86 V +- 0.00
PA0: 98.87 V +- 0.01
PA0: 98.87 V +- 0.00
PA0: 98.87 V +- 0.00

try A5
PA5: 38.22 V +- 0.00
PA5: 39.67 V +- 1.46

try A7
PA7: 48.77 V +- 0.00
PA7: 48.69 V +- 0.08
PA7: 48.73 V +- 0.04
PA7: 48.22 V +- 0.51
PA7: 51.59 V +- 3.37
PA7: 46.59 V +- 5.01
PA7: 49.54 V +- 2.95
PA7: 48.69 V +- 0.85
PA7: 48.69 V +- 0.00
PA7: 49.53 V +- 0.84
PA7: 45.72 V +- 3.81
PA7: 49.02 V +- 3.30
sPA7: 45.15 V +- 3.87
PA7: 48.74 V +- 3.59
PA7: 48.71 V +- 0.03
PA7: 47.31 V +- 1.40
PA7: 47.20 V +- 0.11
PA7: 47.95 V +- 0.75
PA7: 52.39 V +- 4.44
PA7: 48.71 V +- 3.69
PA7: 48.73 V +- 0.02
PA7: 48.70 V +- 0.03
PA7: 49.06 V +- 0.36
PA7: 49.84 V +- 0.78
vPA7: 44.88 V +- 4.96
PA7: 48.74 V +- 3.86
PA7: 48.72 V +- 0.02
PA7: 48.72 V +- 0.01
PA7: 48.74 V +- 0.02
PA7: 47.17 V +- 1.57
PA7: 52.32 V +- 5.15
PA7: 50.53 V +- 1.78
PA7: 48.72 V +- 1.81
PA7: 48.71 V +- 0.01
sPA7: 48.71 V +- 0.00
PA7: 49.87 V +- 1.16
PA7: 51.39 V +- 1.51
PA7: 46.52 V +- 4.87
PA7: 48.00 V +- 1.48
PA7: 48.75 V +- 0.75
PA7: 48.75 V +- 0.00
PA7: 48.69 V +- 0.05

//#define VBATT     P??
now detecting SELF_HOLD p'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)l
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)l

//#define VBATT     P??
PA0: 39.65 V +- 0.00
PA0: 39.67 V +- 0.01
PA0: 39.66 V +- 0.00
PA0: 39.67 V +- 0.01
PA0: 39.02 V +- 0.66
PA0: 38.31 V +- 0.71
PA0: 38.26 V +- 0.05
PA0: 38.24 V +- 0.02
PA0: 39.66 V +- 1.42
PA0: 39.68 V +- 0.01
PA0: 39.58 V +- 0.10
PA0: 38.29 V +- 1.29
PA0: 38.25 V +- 0.04
PA0: 38.22 V +- 0.03
PA0: 39.68 V +- 1.46
PA0: 39.66 V +- 0.02

try A5
PA5: 39.67 V +- 0.00
PA5: 39.67 V +- 0.00
PA5: 38.30 V +- 1.37

try A7
PA7: 50.98 V +- 0.00

try B1
PB1: 98.71 V +- 0.00

try A0
PA0: 98.87 V +- 0.00
PA0: 98.88 V +- 0.01
PA0: 98.87 V +- 0.01
PA0: 98.86 V +- 0.01
PA0: 98.86 V +- 0.00
PA0: 98.87 V +- 0.01
PA0: 98.86 V +- 0.01
PA0: 98.86 V +- 0.01
PA0: 98.86 V +- 0.00
PA0: 98.88 V +- 0.02
PA0: 98.88 V +- 0.00
PA0: 98.86 V +- 0.02
PA0: 98.87 V +- 0.01
PA0: 98.86 V +- 0.01
PA0: 98.87 V +- 0.01
v
try A5
PA5: 39.10 V +- 0.00
PA5: 38.96 V +- 0.14
PA5: 38.21 V +- 0.75
PA5: 38.19 V +- 0.02
PA5: 39.66 V +- 1.47
PA5: 39.67 V +- 0.01
PA5: 39.66 V +- 0.01
PA5: 39.55 V +- 0.11
PA5: 38.30 V +- 1.25
PA5: 38.25 V +- 0.05
PA5: 39.65 V +- 1.41
PA5: 39.66 V +- 0.01
s

#define VBATT       PA0
now detecting SELF_HOLD pin,
'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)
:-)
hiliving commented 5 months ago

I have replaced a serial port terminal that can display sending data. Perhaps you can see something, as if it is repeating the # define VBATT now detecting SELF_HOLD pin

hiliving commented 5 months ago

You and I are both on the Discord channel. If it's convenient, you can find me there

RoboDurden commented 5 months ago

Yes it seems that it is rebooting when stage AUTODETECT_Stage_Hold is run :-/ When this stage is initialized, all remaining pins are set as OUTPUT and HIGH.

    case AUTODETECT_Stage_Hold:
        for (i=0;i<COUNT_PinDigital; i++)   
        {
            if (!(aoPin[i].wState & STATE_HIDE))
            {
                //gpio_deinit(aoPin[i].i);
                pinMode(aoPin[i].i,GPIO_MODE_OUTPUT);
                digitalWrite(aoPin[iTest].i,1); // every remaining io pin might be the SELF_HOLD pin
            }
        }

Perhaps your board has a pin that resets the board :-(

I have uploaded a new autodetect binary with different stage order so that you can skip this stage for now:

https://github.com/RoboDurden/Hoverboard-Firmware-Hack-Gen2.x/blob/main/BinariesToTest/hoverboard%20autodetect%20B%20GD32F130%20tx%3DPA2%2C%20rx%3DPA3.bin

    #define AUTODETECT_Stage_Startup    1
    #define AUTODETECT_Stage_VBatt      2
    #define AUTODETECT_Stage_Led                4
    #define AUTODETECT_Stage_Hall           8
    #define AUTODETECT_Stage_HallOrder  16
    #define AUTODETECT_Stage_Hold           32
    #define AUTODETECT_Stage_Button         64
    #define AUTODETECT_Stage_CurrentDC 128
    #define AUTODETECT_Stage_Results    256
    #define AUTODETECT_Stage_Finished   512
hiliving commented 5 months ago

Great, thx, I will try this version

RoboDurden commented 5 months ago

Your board seems to be a variation (different pcb version) of https://github.com/RoboDurden/Hoverboard-Firmware-Hack-Gen2.x/tree/main/target_1%3DGD32F130/v6%3D2.5

There is a test firmware hoverboard 2.1.5 master Dummy.bin you could already try. I do not remember if this board has been traced properly.

// ADC defines
#define VBATT   PA0         // Batman313v, might be CURRENT_DC !!!
#define CURRENT_DC  PA1     // Batman313v, might be VBATT !!!

But it would be nice if you continue testing my autodetect.bin. This will help to improve it.

RoboDurden commented 5 months ago

i do not use these modern messangers..

I-hate-2FA commented 5 months ago

thats the reason to not use pinmode output in autodetect to just power off while detect self hold and maybe the reason to have a main menu

RoboDurden commented 5 months ago

Thanks AiLife for helping here. I have changed the code to

        if ((buzzerTimer%3000) < 100)   // relase SELF_HOLD for a short time
        {
            pinModePull(aoPin[i].i,GPIO_MODE_INPUT,GPIO_PUPD_PULLDOWN);
        }
        else
        {
            pinModePull(aoPin[i].i,GPIO_MODE_INPUT,GPIO_PUPD_PULLUP);
        }

@hiliving , please give that hoverboard autodetect C GD32F130 tx=PA2, rx=PA3.bin a try.

hiliving commented 5 months ago

i flashed the firmware you uploaded , it works, I print the pin list like below:

//#define LED_RED       P??
//#define LED_ORANGE        P??
#define LED_GREEN       PB8
#define UPPER_LED       PB8
//#define LOWER_LED     P??
//#define ONBOARD_LED       P??
#define BUZZER      PB9

hall and phase currents: 'r'=restart    's'=save
try 1 = C14 HALL
try 2 = C15 
try 3 = F0  
try 4 = F1  
try 5 = A0  
try 6 = B11 HALL
try 8 = A5  
try 9 = A6  
try 10 = A7 
try 11 = B0 
try 12 = B1 
try 13 = B2 
try 14 = B10    
try 15 = A1 HALL
try 16 = B12    
try 17 = A11    
try 18 = F6 
try 19 = F7 
try 20 = A12    
try 21 = A15    
try 22 = B3 
try 23 = B4 
try 24 = B5 
try 25 = B6 
try 26 = B7 
try 28 = B9 
#define HALL_A      PC14
#define HALL_B      PB11
#define HALL_C      PA1

#define HALL_A      PC14
#define HALL_B      PA1
#define HALL_C      PB11
//#define PHASE_A       P??
//#define PHASE_B       P??
//#define PHASE_C       P??
now detecting SELF_HOLD pin,'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)

and I feel that some options can be optimized, such as “s” being the next stage in some places and saving in others, which is easy to confuse.

int this section , I found that "l" didn`t work , Does it have any other function?

//#define VBATT     P??
'r'=red,    'o'=orange, 'g'=green,  'u'=up, 'd'=down,   'p'=pcb led,    'b'=buzzer
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now C13
try C15

try F1

try B11

try A5

try A7

try B1

try B10

try B12

try F6

try A12

try B3
g
try B5

try B7

try B9
b
try C14

try F0

try A0

try A4

try A6

try B0

try B2

try A1

try A11

try F7

try A15

try B4
r
try B6

try B8

try C13

try C15

try F1

try B11

try A5

try A7

try B1

try B10

try B12

try F6

try A12

try B3

try B5
l
try B6
l
try B7
l
try B8
l
try B9
l
try C13
RoboDurden commented 5 months ago

No, 'l' should print the definition list also in stage AUTODETECT_Stage_Led.

This is autodetect B you tested ? And stage AUTODETECT_Stage_VBatt will still reset the board ?!

Could you please try autodetect C :-)

hiliving commented 5 months ago

right , this is B, now I will test C,sorry, I wasn`t realized there was already C until you told me

RoboDurden commented 5 months ago

According to your log ouput you have

#define LED_RED     PB4
//#define LED_ORANGE        P??
#define LED_GREEN       PB3
//#define UPPER_LED     P??
//#define LOWER_LED     P??
//#define ONBOARD_LED       P??
#define BUZZER      PB9

#define HALL_A      PC14
#define HALL_B      PA1
#define HALL_C      PB11

Make sure you have the 3 color led module attached.

autodetect C has the old stage order but AUTODETECT_Stage_Hold might succeed now.

RoboDurden commented 5 months ago

I will setup a Gen2.1 test setup today or tomorrow so i can verify your findings for a better user interface :-)

RoboDurden commented 5 months ago

@hiliving you have an impressive list of github forks ! Are your from China or Taiwan ? If you know someone who cares about peace and politics, please forward my world peace plan: www.RoboDurden.de , thanks !

RoboDurden commented 5 months ago

I now see that the LED stage also uses OUTPUT:

    switch(wStage)
    {
    case AUTODETECT_Stage_Led:
        pinMode(iPinNew,GPIO_MODE_OUTPUT);
        break;

And as all possible pins are cycles, this should have resetted your board at some point. So there might be another problem with AUTODETECT_Stage_Hold

hiliving commented 5 months ago

According to your log ouput you have

#define LED_RED       PB4
//#define LED_ORANGE      P??
#define LED_GREEN     PB3
//#define UPPER_LED       P??
//#define LOWER_LED       P??
//#define ONBOARD_LED     P??
#define BUZZER        PB9

#define HALL_A        PC14
#define HALL_B        PA1
#define HALL_C        PB11

Make sure you have the 3 color led module attached.

autodetect C has the old stage order but AUTODETECT_Stage_Hold might succeed now.

it doesnt matter for LED now ,it can be done in the end, i want to control the motor through serial first . by the way,supporting peace is a responsibility that everyone should bear, and I am glad to contribute.

hiliving commented 5 months ago

This is the log for firmware C,

'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
:-)
try A4
PA4: 24.05 V +- 0.00
PA4: 24.07 V +- 0.02
PA4: 24.05 V +- 0.01
PA4: 23.11 V +- 0.94
PA4: 22.85 V +- 0.26
PA4: 23.03 V +- 0.17
PA4: 22.59 V +- 0.43
PA4: 22.44 V +- 0.15
PA4: 24.05 V +- 1.60
PA4: 24.04 V +- 0.00
PA4: 24.06 V +- 0.02
PA4: 24.05 V +- 0.01
PA4: 24.06 V +- 0.01
PA4: 22.78 V +- 1.28
PA4: 22.55 V +- 0.24
v
try A6
PA6: 49.03 V +- 0.00
PA6: 49.29 V +- 0.25
PA6: 49.47 V +- 0.18
PA6: 47.69 V +- 1.78
PA6: 47.73 V +- 0.04
PA6: 47.74 V +- 0.01
PA6: 47.71 V +- 0.03
PA6: 47.74 V +- 0.04
PA6: 49.31 V +- 1.57
PA6: 48.84 V +- 0.47
PA6: 49.18 V +- 0.33
PA6: 49.35 V +- 0.18
s

#define VBATT       PA4
now detecting SELF_HOLD pin,
bridge the onOff button
press ENTER to begin or 's' for next stage.

992
0 now C14 : 991
0 now C15 : 991
0 now F0 : 991
0 now F1 : 991
0 now A0 : 991
0 now B11 : 991
0 now A5 : 989
0 now A6 : 991
0 now A7 : 991
0 now B0 : 991
0 now B1 : 991
0 now B2 : 991
0 now B10 : 991
0 now A1 : 991
0 now B12 : 991
0 now A11 : 991
0 now F6 : 991
0 now F7 : 991
0 now A12 : 991
0 now A15 : 991
0 now B3 : 991
0 now B4 : 991
0 now B5 : 991
0 now B6 : 991
0 now B7 : 991
0 now B8 : 991
0 now B9 : 991
release OnOff button
press ENTER to begin or 's' for next stage.

-991 = 1
1 now C14 : -991 = 0
1 now C15 : -991 = 0
1 now F0 : -991 = 0
1 now F1 : -991 = 0
1 now A0 : -991 = 0
1 now B11 : -991 = 0
1 now A5 : -990 = -1
1 now A6 : -991 = 0
1 now A7 : -991 = 0
1 now B0 : -991 = 0
1 now B1 : -991 = 0
1 now B2 : -991 = 0
1 now B10 : -991 = 0
1 now A1 : -991 = 0
1 now B12 : -991 = 0
1 now A11 : -991 = 0
1 now F6 : -991 = 0
1 now F7 : -991 = 0
1 now A12 : -991 = 0
1 now A15 : -991 = 0
1 now B3 : -991 = 0
1 now B4 : -991 = 0
1 now B5 : -991 = 0
1 now B6 : -991 = 0
1 now B7 : -991 = 0
1 now B8 : -991 = 0
1 now B9 : -989 = 2
SELF_HOLD PB9 //2
bridge OnOff button
press ENTER to begin or 's' for next stage.

991
0 now C14 : 991
0 now C15 : 991
0 now F0 : 991
0 now F1 : 991
0 now A0 : 991
0 now B11 : 991
0 now A5 : 991
0 now A6 : 991
0 now A7 : 991
0 now B0 : 991
0 now B1 : 991
0 now B2 : 991
0 now B10 : 991
0 now A1 : 991
0 now B12 : 990
0 now A11 : 991
0 now F6 : 991
0 now F7 : 991
0 now A12 : 991
0 now A15 : 991
0 now B3 : 991
0 now B4 : 991
0 now B5 : 991
0 now B6 : 991
0 now B7 : 991
0 now B8 : 991
0 now B9 : 991
release OnOff button
press ENTER to begin or 's' for next stage.

-992 = -1
1 now C14 : -991 = 0
1 now C15 : -991 = 0
1 now F0 : -991 = 0
1 now F1 : -991 = 0
1 now A0 : -991 = 0
1 now B11 : -990 = 1
1 now A5 : -991 = 0
1 now A6 : -991 = 0
1 now A7 : -991 = 0
1 now B0 : -991 = 0
1 now B1 : -989 = 2
1 now B2 : -991 = 0
1 now B10 : -991 = 0
1 now A1 : -991 = 0
1 now B12 : -991 = -1
1 now A11 : -991 = 0
1 now F6 : -991 = 0
1 now F7 : -991 = 0
1 now A12 : -991 = 0
1 now A15 : -991 = 0
1 now B3 : -989 = 2
1 now B4 : -991 = 0
1 now B5 : -991 = 0
1 now B6 : -991 = 0
1 now B7 : -991 = 0
1 now B8 : -991 = 0
1 now B9 : -991 = 0
SELF_HOLD PB1 //2
bridge OnOff button
press ENTER to begin or 's' for next stage.

991
0 now C14 : 991
0 now C15 : 991
0 now F0 : 991
0 now F1 : 991
0 now A0 : 991
0 now B11 : 989
0 now A5 : 991
0 now A6 : 991
0 now A7 : 991
0 now B0 : 991
0 now B1 : 991
0 now B2 : 991
0 now B10 : 991
0 now A1 : 989
0 now B12 : 991
0 now A11 : 991
0 now F6 : 989
0 now F7 : 991
0 now A12 : 991
0 now A15 : 991
0 now B3 : 991
0 now B4 : 991
0 now B5 : 991
0 now B6 : 991
0 now B7 : 991
0 now B8 : 990
0 now B9 : 991
release OnOff button
press ENTER to begin or 's' for next stage.
s

#define SELF_HOLD       PB1
now detecting BUTTON pin,
release OnOff button
press ENTER to begin or 's' for next stage.

//when i release the OnOff button , the power is off ,and when i re bright it , it came to beginning.

'v'=battery voltage
'x'=delete pin  'l'=list,   'c'=reset and 's'=next stage
ENTER for next pin
now A0
press ENTER to begin or 's' for next stage.

:-)
:-)
:-)
:-)
:-)
:-)
:-)
RoboDurden commented 5 months ago

Okay so the change from OUTPUT to INPUT_PULLUP prevents the stage to crash. However my too-clever trick to detect the hold pin does not seem to work.

For now i suggest that you keep the onOff button bridged and skip these stages with 's' and complete all the other steps. It is good to have the three led as they can help to output debug info.. Be sure your motor is strongly mounted before you enter the current pin detection

A4 is you battery voltage ?

I already have uploaded test binaries for your 2.1.6.1 board. With no hold and button pin, these should already work for the slave board, that needs external power anyway.

RoboDurden commented 5 months ago

You can also update your Gen2_GD32 fork and update defines_2-1-6.h yourself (if you have Keil installed)

RoboDurden commented 5 months ago

@I-hate-2FA maybe you have some eeprom code for GD32 so i could implement your hold-pin detection..

RoboDurden commented 5 months ago

@hiliving would be nice if you could upload some nice clean photos of frontside and backside of master and of slave.

I-hate-2FA commented 5 months ago

using input pullup or output high wont effect what method of detecting, the only bad side effect it may have is that the signal is too weak it can no longer self hold(which does happen, on a mm32 board, but it is very rare), that way you need to trace manually no way around it

it is not needed to use eeprom to detect self hold, just print the pin you are going to release, and wait 200ms if the code is still running use backspace to delete that and print new pin untill the board is off, but this will have to be done last ofcourse

I-hate-2FA commented 5 months ago

can i ask, what is the minimum necessary pin configuration in order to make the board boot normally in gd32 like if buzzer is not set board can still drive motor normally just no boot sound in mm32 only 5 pin is verified on boot, if its not valid the firmware will not boot up (3 hall pin and 2 serial pin), all other is optional

I-hate-2FA commented 5 months ago

btw your autodetect also will cause my 2.6.1 board to reset, with power button bridged, when detecting led, so the side effect of using pinmode output is already known back then, but you just removed the problematic pin from the list and call it a day

RoboDurden commented 5 months ago

i have added #ifdef for more pins like ORANGE and HOLD to get it compiled. I still have to insert #ifdef for red and green.

I do not remember to be so ignorant as to no woreship your contributions.

I have a 2.1.4 setup running now and it can also not detect the hold pin. Yes, the led stage still uses OUTPUT instead of INPUT_PULLUP.

Today is the last sunny day here for at least a week. I will continue tomorrow with this issue here.

hiliving commented 5 months ago

@hiliving would be nice if you could upload some nice clean photos of frontside and backside of master and of slave.

https://github.com/RoboDurden/Hoverboard-Firmware-Hack-Gen2.x/issues/80#issue-2273719019 done it, and very thanks

I-hate-2FA commented 5 months ago

I do not remember to be so ignorant as to no woreship your contributions.

https://github.com/RoboDurden/Hoverboard-Firmware-Hack-Gen2.x/issues/53#issuecomment-1900691584

hiliving commented 5 months ago

Okay so the change from OUTPUT to INPUT_PULLUP prevents the stage to crash. However my too-clever trick to detect the hold pin does not seem to work.

For now i suggest that you keep the onOff button bridged and skip these stages with 's' and complete all the other steps. It is good to have the three led as they can help to output debug info.. Be sure your motor is strongly mounted before you enter the current pin detection

A4 is you battery voltage ?

I already have uploaded test binaries for your 2.1.6.1 board. With no hold and button pin, these should already work for the slave board, that needs external power anyway.

yeah PA4 is my voltage for 24V。i am using the 24V LED power. thanks for your compile, ill test it now

I-hate-2FA commented 5 months ago

The LEDs should not really effect the code, even if it's not set it'll just not be outputted, but for vbat and current DC if it's not set will the board still work normally, and the button too, the code may get stuck waiting for button to release

RoboDurden commented 5 months ago

code will work without vbat and currentDC:

bldc.c

float batteryVoltage = BAT_CELLS * 3.6;
float currentDC = 0.42;     // to see in serial log that pin is not defined

...

    #ifdef VBATT
        if (buzzerTimer % 100 == 0)
            batteryVoltage = batteryVoltage * 0.999 + ((float)adc_buffer.v_batt * ADC_BATTERY_VOLT) * 0.001;
    #endif

..

    #ifdef CURRENT_DC
        currentDC = ABS((adc_buffer.current_dc - offsetdc) * MOTOR_AMP_CONV_DC_AMP);
    #endif

button can be disabled in config.h

//#define CHECK_BUTTON // disable = add '//' if you use a slave board as master

But yes, i shoud add

#ifndef BUTTON
  #undef CHECK_BUTTON 
#endif

Please @I-hate-2FA remeber that i did not write this firmware from scratch. And i have no happiness to fully recode it. So there will always be old code lingering around.

I-hate-2FA commented 5 months ago

At least this is a good start to turn the unreadable gen1 mess into something workable given enough time, great work none the less, but it's why I decide to redo everything with mm and not merge into this

hiliving commented 5 months ago

i test the 2.1.6.1 firmware with dummy.bin and single_uart.bin and single_uartbus_0.bin , unfortunately it can`t work. well I found that the Hall pins in 2.1.7 are the same as those in 2.1.6.1, but in a different order,and VBATT pin、 LED pin is also the same。so I changed the Hall pin of 2.1.7 to be the same as 2.1.6.1. then, it works normally and can be controlled through serial, but the button pins are incorrect and the power cannot be turned off. Only can be turned on.

RoboDurden commented 5 months ago

Good to see that you can solve problems yourself :-) please post your final pin definitions so i can update 2.1.6

RoboDurden commented 5 months ago

Gen2.1.6.1: Gen2 1 6 1 front+back

I guess i have Gen2.1.6 somewhere. Gen2.1.6 slave: Gen2 1 6_slave

I-hate-2FA commented 5 months ago

Looks like a master to me with charger and a buck converter Self hold circuit is not clear though

RoboDurden commented 5 months ago

I posted my image of the 2.1.6(.0) slave because it shows the label v1.1. The board of @hiliving might be the older v1.0

Here my master board, 2.1.6.0 master: Gen2 1 6_master

I-hate-2FA commented 5 months ago

the one hiliving have is v1.3

RoboDurden commented 5 months ago

I have added a menu to my autodetect:

autodetect menu:
0: do all
1: VBatt
2: Hold
3: Button
4: Led
5: Hall
6: HallOrder
7: CurrentDc
8: Results

6,7, and 8 only show up when the preceeding stage has been completed.

for Hold i added a manual mode:

now detecting SELF_HOLD pin,
bridge the onOff button
't' to toggle manual mode.
ENTER to begin, 's' for next stage, 'q' for menu

with auto find: 0 the user has to click through every pin with ENTER. When the onOff button is released, the board will turn off and the user can see which pin it was. Then after restart and entering manual mode again, the user has to cycle through the pins again with onOff bridged and send 'f' when the correct pin shows up again. I would prefer to store the value in eeprom but i do not know how to do this. And i am again very close to the 32 kB limit: Program Size: Code=30448 RO-data=1564 RW-data=564 ZI-data=2996

I can not find a button (onOff) pin with my autodetect on Gen2.1.4:

now detecting BUTTON pin,
release OnOff button
ENTER to begin, 's' for next stage, 'q' for menu
 C14 C15 F0 F1 A0 B11 A4 A5 A6 A7 B0 B1 B2 B10 A1 B12 A11 F6 F7 A12 A15 B3 B4 B5 B8 B9 A2
bridge OnOff button
ENTER to begin, 's' for next stage, 'q' for menu
 C14 C15 F0 F1 A0 B11 A4 A5 A6 A7 B0 B1 B2 B10 A1 B12 A11 F6 F7 A12 A15 B3 B4 B5 B8 B9 A2
0 pins found. release OnOff button
ENTER to begin, 's' for next stage, 'q' for menu

Maybe this 2.1.4 does not have a onOff button detection ? Board simply holds the power on once it has powered on..

currentDC is also not working. With this 2.1.4 Unable to detect backcurrents. I am not sure about VBatt either :-/ All the adc does not seem to work.

@hiliving , i have uploaded a hoverboard autodetect D GD32F130 tx=PA2, rx=PA3.bin with this new autodetect. Would be nice if you give it a try.

I-hate-2FA commented 5 months ago

2.1.4.1 have latch and on off button and i know which pin it was

to use eeprom,you need 2kb of free storage(last 1kb cannot be used or the chip may not be able to boot,and you need a full page allocated to be eeprom)

its nice seeing were improving together and leave the gen1 behind,today got f103 blinking,although it will be a long and hard way because the f103 is M3 core,mm32spin is M0 core, there is allot of compatibility issue, and ofcourse the clock on f103 is also problematic, just like the mm32spin

I-hate-2FA commented 5 months ago

you are 99.4% full on storage idk why is that the case when there isnt allot of strings like in my firmware

RoboDurden commented 5 months ago

With #ifndef REMOTE_AUTODETECT i really tried hard to remove all unnecessary code. Maybe i will give the MicroLib a try again: Program Size: Code=26336 RO-data=1388 RW-data=564 ZI-data=1876

do you know you can read data back from terminal that you just printed?

I have never heard of that. But i could program my autodetect.ino to store and send back a byte with some special characters like i bridge your serial detection.. This however would then only work with my autodetect.ino