Reducing the KP, Ki and Kd
PID= 30 20 10 (If I remember correctly)
Yes, but it was what I had. It works ok though. Open to suggestions for proper SWD ports.
settnigs are written to flash once per 5sec. in original fw with eeprom they are saved every encoder tick. if u really worrie about lifecycles u can just set longer timeout for write operations
Reducing the KP, Ki and Kd
PID= 30 20 10 (If I remember correctly)so u changed pid to some crazy values from default 18 5 2 and now solved the problem reverting them almost to default ?
Reducing the KP, Ki and Kd
PID= 30 20 10 (If I remember correctly)so u changed pid to some crazy values from default 18 5 2 and now solved the problem reverting them almost to default ?
I don't understand!
Default values are 75 48 12!
I realized something I'm kinda concerned about, so to speak. Since the controller remembers the last set t° after powering up, that means it stores it to flash every time it's changed, right? So wouldn't it be better if current set t° were simply stored in RAM and the default startup t° would be a user defined setting?
Admittedly, I have no idea how NAND durability is on those MCU but my guess is probably not that great. The thing is, I checked availability and price of STM32 yesterday and... it's scary. Now I look at my 1.5$ Chinese fake stlink from years ago like it's precious cause it has a "rare" 20K/128K F103 inside
i think i can make project in ide with current guides. but abcolutely no clue how to conpile .elf in .bin
The encoder direction seems broken?
I see, it's strange. Does the freeze happen when changing IRON settings? Only SYSTEM options? Or only debug setting? Is it really completely freezed? Try long clicking or wait 15 for the timeout.
Remove the tip just in case!.
Only when clicking exit?
What happens when long-clicking or waiting so it returns by itself?
I don't even know what that means But of course I could share the modified files. I'll just zip'em if that's ok.
happens after setting russian language?
I realized something I'm kinda concerned about, so to speak. Since the controller remembers the last set t° after powering up, that means it stores it to flash every time it's changed, right? So wouldn't it be better if current set t° were simply stored in RAM and the default startup t° would be a user defined setting?
Admittedly, I have no idea how NAND durability is on those MCU but my guess is probably not that great. The thing is, I checked availability and price of STM32 yesterday and... it's scary. Now I look at my 1.5$ Chinese fake stlink from years ago like it's precious cause it has a "rare" 20K/128K F103 inside
The settings are checked every second, if something changed then a 5s timeout is started.
If nothing else is changed in that time, the flash is updated.
But if you keep changing things, the timeout will be resetted and nothing written until you stop changing things.
No idea about the debug freezing.
Anyone else having that issue? Works perfect for me.
Does that v1.5 have a 32f103?
U+040x Ѐ Ё Ђ Ѓ Є Ѕ І Ї Ј Љ Њ Ћ Ќ Ѝ Ў Џ
U+041x А Б В Г Д Е Ж З И Й К Л М Н О П
U+042x Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
U+043x а б в г д е ж з и й к л м н о п
U+044x р с т у ф х ц ч ш щ ъ ы ь э ю я
So only these?Code: [Select]U+041x А Б В Г Д Е Ж З И Й К Л М Н О П
Funny to see russians thinking "weird" about other languages.
U+042x Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
U+043x а б в г д е ж з и й к л м н о п
U+044x р с т у ф х ц ч ш щ ъ ы ь э ю я
Next step: German, requiring 24" screens for they endless words
// language indexes and LANGUAGE_COUNT defined in settings.h
const strings_t strings[LANGUAGE_COUNT] = {
[lang_english] = {
...
},
},
[lang_russian] = {
...
},
};
char * Langs[LANGUAGE_COUNT] = {
[lang_english] = "EN",
[lang_russian] = "RU",
};
#define LANGUAGE_COUNT 2
enum{
...
...
lang_english = 0,
lang_russian = 1,
};
// language indexes and LANGUAGE_COUNT defined in settings.h
const strings_t strings[LANGUAGE_COUNT] = {
[lang_english] = {
...
},
[lang_russian] = {
...
},
[lang_spanish] = {
// Copy & paste structure from other language, modify the strings
},
};
char * Langs[LANGUAGE_COUNT] = {
[lang_english] = "EN",
[lang_russian] = "RU",
[lang_spanish] = "ES",
};
#define LANGUAGE_COUNT 3
enum{
...
...
lang_english = 0,
lang_russian = 1,
lang_spanish = 2,
};