Author Topic: CFW for KSGER/Quicko STM32 Soldering Stations  (Read 676136 times)

clytle374 and 8 Guests are viewing this topic.

Offline Embehu

  • Contributor
  • Posts: 30
  • Country: vn
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3550 on: July 08, 2023, 09:23:37 pm »
Code: [Select]
Wrong!
  pinC is the protective ground + gnd
  Pin B is heater +
  Pin A is TC (Temperature sensor).

That means my board doesn’t support for jbc tips? Because pin4 is tired with gnd? Or what could I do to use jbc tips with my board?
Really appreciate your time to make this wonderful CFW. It makes the station go to another level
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3551 on: July 08, 2023, 09:26:46 pm »
Usually you need to make a small modification in the board
Search C245 in this thread, you will find out.

Check out this picture. Your board seems very similar.

You have to cut the trace R0, then find where the bottom pad is connected in the vertical connector.
That's where you need to solder the C245 "A" connection (The pin the end of the cartridge).

Similar to the one shown here:
https://www.eevblog.com/forum/reviews/nt115-jbc-handle-for-ksger-t12-with-cfw-by-davidalfa/msg3871406/#msg3871406

« Last Edit: July 08, 2023, 09:47:11 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline Embehu

  • Contributor
  • Posts: 30
  • Country: vn
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3552 on: July 10, 2023, 05:17:33 am »
Thanks so much, I did it, now it works quite  well with both jbc and t12. The tip temperature is really fast and steady. But with jbc245 it seems to be corrosive a lot
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3553 on: July 10, 2023, 07:20:38 am »
What do you mean by "corrosive"?
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3554 on: July 10, 2023, 06:14:36 pm »
Hi.. i flashed the wrong firmware [HW2.1S]_[0.96OLED].hex, i flashing for new stm32 with blue phil board, i plan to install a new chip for my t12, but I don't think it will damage my new chip , currently the chip just wasn't detected with stlink in SWD mode, but the chip can still be read with uart, how do you restore it so that it can read SWD stlink again? i did the steps according to the instructions https://github.com/deividAlfa/stm32_soldering_iron_controller/blob/master/Readme_files/Programming.md
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3555 on: July 10, 2023, 08:17:01 pm »
Did you also try this?
After detection, remove Level 1 protection and erase the chip as shown here.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 
The following users thanked this post: anwfeb

Offline Embehu

  • Contributor
  • Posts: 30
  • Country: vn
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3556 on: July 10, 2023, 10:24:15 pm »
What do you mean by "corrosive"?

Oops, sorry my mistake. It should be oxidization, I have to sand the tip to use
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3557 on: July 11, 2023, 12:07:06 am »
Did you also try this?
After detection, remove Level 1 protection and erase the chip as shown here.

Hi, thank you, I missed wire up the RST PIN, I did the only jumper PIN7 to GND like capacitor jumper before, but I didn't do the PIN7 cable installation for the RST PIN on STLINK. thanks my STM32 is working again.
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3558 on: July 16, 2023, 01:14:18 pm »
after compiling the firmware, the log shows a warning:
Code: [Select]
../Drivers/generalIO/adc_global.c:245:81: warning: expression does not compute the number of elements in this array; element type is 'adc_measures_t', not 'uint16_t' {aka 'short unsigned int'} [-Wsizeof-array-div]
  245 |   if(HAL_ADC_Start_DMA(adc_device, (uint32_t*)ADC_measures, sizeof(ADC_measures)/ sizeof(uint16_t) )!=HAL_OK){  // Start ADC conversion now
      |
21:27:18 Build Finished. 0 errors, 1 warnings. (took 11s.811ms)
please help me what is the problem..


notes: firmware bin working despite getting a warning (1)
« Last Edit: July 16, 2023, 03:35:11 pm by anwfeb »
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3559 on: July 16, 2023, 02:09:38 pm »
Have you modified anything? I have never seen that error.
A clean build on CubeIDE 1.12.1 shows "Build Finished. 0 errors, 0 warnings".

Anyways, it's perfectly fine.
Code: [Select]
typedef struct {
  #ifdef ADC_1st
          uint16_t  ADC_1st;
  #endif
  #ifdef ADC_2nd
          uint16_t  ADC_2nd;
  #endif
  #ifdef ADC_3rd
          uint16_t  ADC_3rd;
  #endif
  #ifdef ADC_4th
          uint16_t  ADC_4th;
  #endif
} adc_measures_t;

extern volatile adc_measures_t adc_measures[ADC_BFSIZ];

That code doesn't want to get the number of measures_tin adc_measures, but the total count of uint16_t it contains.
« Last Edit: July 16, 2023, 02:31:40 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3560 on: July 16, 2023, 02:26:03 pm »
Have you modified anything? I have never seen that error.

I haven't changed any of the original code, I just learned to compile the cube ide, keeping the original chip, then I bought a new chip to program. there is currently no change in the code, I use the bat building script by selecting [3] ksger v2
the file compiles without error, there is only 1 warning like the log that I informed you before, I uploaded the bin file to stm32 and it turns on (I haven't attached it to the soldering board yet) this is still done with the bluepill board and by installing i2c oled 0.96
idecube version 1.13.0

then the second problem, I want to change i2c oled to pin i2c hardware mod.jpg then I enable I2C_TRY_HW on board.h, but I found a lot of errors, I'm very new to microcontrollers, which other parts to change I don't know.
change:
Code: [Select]
//#define DISPLAY_SPI // SPI display
#define DISPLAY_I2C                                             // I2C display
#define I2C_TRY_HW                                          // Try I2C HW first, use I2C SW if not detected
#define DISPLAY_ADDRESS        (0x3c<<1)                        // Only used for I2C
//#define DISPLAY_DEVICE         hi2c2                          // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is used
#define FILL_DMA            hdma_memtomem_dma1_channel2        // DMA mem2mem for filling
//#define USE_RST                                              // Reset pin is used
//#define USE_DC                                              // DC pin is used
//#define USE_CS                                              // CS pin is used
#define DISPLAY_OFFSET         0                                // Display offset
logs error:
Code: [Select]
make -j4 all
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.d" -MT"Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.o"
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.d" -MT"Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.o"
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/addons_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/addons_screen.d" -MT"Drivers/graphics/gui/screens/addons_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/addons_screen.o"
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/boot_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/boot_screen.d" -MT"Drivers/graphics/gui/screens/boot_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/boot_screen.o"
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addons_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addons_screen.c:8:
../Drivers/graphics/display.h:265:2: error: #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
  265 | #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
      |  ^~~~~
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.c:7:
../Drivers/graphics/display.h:265:2: error: #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
  265 | #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
      |  ^~~~~
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/boot_screen.h:10,
                 from ../Drivers/graphics/gui/screens/boot_screen.c:8:
../Drivers/graphics/display.h:265:2: error: #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
  265 | #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
      |  ^~~~~
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.c:8:
../Drivers/graphics/display.h:265:2: error: #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
  265 | #error "I2C_TRY_HW defined, but DISPLAY_DEVICE is missing!"
      |  ^~~~~
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/addons_screen.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.o] Error 1
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/boot_screen.o] Error 1
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.o] Error 1
"make -j4 all" terminated with exit code 2. Build might be incomplete.

21:49:53 Build Failed. 9 errors, 0 warnings. (took 2s.584ms)
« Last Edit: July 16, 2023, 04:44:50 pm by anwfeb »
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3561 on: July 16, 2023, 02:33:28 pm »
I guess CubeIDE 1.13.0 uses a newer GCC compiler. It'll be fine, I guess.

Use code tags for your logs!
Code: [Select]
[c0de]
Paste your code between these tags (write "code" instead "c0de")
[/c0de]

Code: [Select]
Paste your code between these tags (write "code" instead "c0de")

Better skip the i2c mod, it doesn't worth it, anyways if you insist, by default your Core/Inc/board.h will look like this:
Code: [Select]
#define HWSTRING "HW: KSGER v2.x"

/********************************
 *       Display Settings    *
 ********************************/
//#define DISPLAY_SPI                                            // SPI display
#define DISPLAY_I2C                                              // I2C display
//#define I2C_TRY_HW                                          // Try I2C HW first, use I2C SW if not detected
#define DISPLAY_ADDRESS        (0x3c<<1)                         // Only used for I2C
//#define DISPLAY_DEVICE         hi2c2                           // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is used
#define FILL_DMA            hdma_memtomem_dma1_channel2       // DMA mem2mem for filling
//#define USE_RST                                             // Reset pin is used
//#define USE_DC                                              // DC pin is used
//#define USE_CS                                              // CS pin is used
#define DISPLAY_OFFSET         2                                 // Display offset

If you enable i2c in CubeIDE, then you must specify the interface used. It will be hi2c1, hi2c2...
You'll find it at the beginning of Core/Src/main.c it after CubeMX generates the code.

So if your i2c interface was i2c2, the handler will be hi2c2. You only need to specify the handler, changing this line:
Code: [Select]
//#define DISPLAY_DEVICE         hi2c2                           // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is

To this:
Code: [Select]
#define DISPLAY_DEVICE         hi2c2                           // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is
« Last Edit: July 16, 2023, 02:44:58 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3562 on: July 16, 2023, 02:47:40 pm »
I guess CubeIDE 1.13.0 uses a newer GCC compiler. It'll be fine, I guess.

Use code tags for your logs!
Code: [Select]
[c0de]
Paste your code between these tags (write "code" instead "c0de")
[/c0de]

Code: [Select]
Paste your code between these tags (write "code" instead "c0de")

Better skip the i2c mod, it doesn't worth it, anyways if you insist, by default your Core/Inc/board.h will look like this:
Code: [Select]
#define HWSTRING "HW: KSGER v2.x"

/********************************
 *       Display Settings    *
 ********************************/
//#define DISPLAY_SPI                                            // SPI display
#define DISPLAY_I2C                                              // I2C display
//#define I2C_TRY_HW                                          // Try I2C HW first, use I2C SW if not detected
#define DISPLAY_ADDRESS        (0x3c<<1)                         // Only used for I2C
//#define DISPLAY_DEVICE         hi2c2                           // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is used
#define FILL_DMA            hdma_memtomem_dma1_channel2       // DMA mem2mem for filling
//#define USE_RST                                             // Reset pin is used
//#define USE_DC                                              // DC pin is used
//#define USE_CS                                              // CS pin is used
#define DISPLAY_OFFSET         2                                 // Display offset

If you enable i2c in CubeIDE, then you must specify the interface used. It will be hi2c1, hi2c2...
You'll find it at the beginning of Core/Src/main.c it after CubeMX generates the code.

So if your i2c interface was i2c2, the handler will be hi2c2. You only need to specify the handler, changing this line:
Code: [Select]
//#define DISPLAY_DEVICE         hi2c2                           // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is

To this:
Code: [Select]
#define DISPLAY_DEVICE         hi2c2                           // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is

yes, this is original code before i change #define I2C_TRY_HW without //
original configuration gets warning 1 during firmware build. but its not a problem, i have tested the bin file its working though getting the warning (1) the image i have added in post #3558

if you have detailed information step by step or video showing how to change i2c mod i will try, but if you think this is not useful i will ignore it, i have read i2c hardware mod.txt Software i2c makes a lot of hacks to squeeze the best performance, and it's about 50% faster. that's why i want to try

after change
Code: [Select]
#define HWSTRING "HW: KSGER v2.x"

/********************************
 *       Display Settings    *
 ********************************/
//#define DISPLAY_SPI // SPI display
#define DISPLAY_I2C                                             // I2C display
#define I2C_TRY_HW                                          // Try I2C HW first, use I2C SW if not detected
#define DISPLAY_ADDRESS        (0x3c<<1)                        // Only used for I2C
#define DISPLAY_DEVICE         hi2c2                          // SPI / I2C handler if used. Enables HW mode, otherwise SW mode is used
#define FILL_DMA            hdma_memtomem_dma1_channel2        // DMA mem2mem for filling
//#define USE_RST                                              // Reset pin is used
//#define USE_DC                                              // DC pin is used
//#define USE_CS                                              // CS pin is used
#define DISPLAY_OFFSET         0                                // Display offset

i have new log:
Code: [Select]
make -j4 all
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.d" -MT"Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.o"
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.d" -MT"Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.o"
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/addons_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/addons_screen.d" -MT"Drivers/graphics/gui/screens/addons_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/addons_screen.o"
arm-none-eabi-gcc "../Drivers/graphics/gui/screens/boot_screen.c" -mcpu=cortex-m3 -std=gnu11 -DUSE_HAL_DRIVER -DSTM32F101xB -DSSD1306 -c -I../Core/Inc -I../Drivers/addons -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/generalIO -I../Drivers/graphics -I../Drivers/graphics/gui -I../Drivers/graphics/gui/screens -I../Drivers/graphics/u8g2 -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -Os -ffunction-sections -fdata-sections -Wall -Wno-builtin-macro-redefined -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Drivers/graphics/gui/screens/boot_screen.d" -MT"Drivers/graphics/gui/screens/boot_screen.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/graphics/gui/screens/boot_screen.o"
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.c:8:
../Drivers/graphics/display.h:144:9: error: unknown type name 'I2C_HandleTypeDef'
  144 |         I2C_HandleTypeDef *device;
      |         ^~~~~~~~~~~~~~~~~
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addons_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addons_screen.c:8:
../Drivers/graphics/display.h:144:9: error: unknown type name 'I2C_HandleTypeDef'
  144 |         I2C_HandleTypeDef *device;
      |         ^~~~~~~~~~~~~~~~~
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.c:8:
../Drivers/graphics/display.h:207:15: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  207 | void lcd_init(I2C_HandleTypeDef *device,DMA_HandleTypeDef *dma);
      |               ^~~~~~~~~~~~~~~~~
      |               CRC_HandleTypeDef
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addons_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addons_screen.c:8:
../Drivers/graphics/display.h:207:15: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  207 | void lcd_init(I2C_HandleTypeDef *device,DMA_HandleTypeDef *dma);
      |               ^~~~~~~~~~~~~~~~~
      |               CRC_HandleTypeDef
../Drivers/graphics/display.h:209:32: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  209 | void HAL_I2C_MemTxCpltCallback(I2C_HandleTypeDef *device);
      |                                ^~~~~~~~~~~~~~~~~
      |                                CRC_HandleTypeDef
../Drivers/graphics/display.h:209:32: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  209 | void HAL_I2C_MemTxCpltCallback(I2C_HandleTypeDef *device);
      |                                ^~~~~~~~~~~~~~~~~
      |                                CRC_HandleTypeDef
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.c:7:
../Drivers/graphics/display.h:144:9: error: unknown type name 'I2C_HandleTypeDef'
  144 |         I2C_HandleTypeDef *device;
      |         ^~~~~~~~~~~~~~~~~
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.h:11,
                 from ../Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.c:7:
../Drivers/graphics/display.h:207:15: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  207 | void lcd_init(I2C_HandleTypeDef *device,DMA_HandleTypeDef *dma);
      |               ^~~~~~~~~~~~~~~~~
      |               CRC_HandleTypeDef
../Drivers/graphics/display.h:209:32: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  209 | void HAL_I2C_MemTxCpltCallback(I2C_HandleTypeDef *device);
      |                                ^~~~~~~~~~~~~~~~~
      |                                CRC_HandleTypeDef
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/addon_fume_extractor_settings_screen.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/addons_screen.o] Error 1
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/boot_screen.h:10,
                 from ../Drivers/graphics/gui/screens/boot_screen.c:8:
../Drivers/graphics/display.h:144:9: error: unknown type name 'I2C_HandleTypeDef'
  144 |         I2C_HandleTypeDef *device;
      |         ^~~~~~~~~~~~~~~~~
In file included from ../Drivers/graphics/gui/screen.h:15,
                 from ../Drivers/graphics/gui/screens/boot_screen.h:10,
                 from ../Drivers/graphics/gui/screens/boot_screen.c:8:
../Drivers/graphics/display.h:207:15: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  207 | void lcd_init(I2C_HandleTypeDef *device,DMA_HandleTypeDef *dma);
      |               ^~~~~~~~~~~~~~~~~
      |               CRC_HandleTypeDef
../Drivers/graphics/display.h:209:32: error: unknown type name 'I2C_HandleTypeDef'; did you mean 'CRC_HandleTypeDef'?
  209 | void HAL_I2C_MemTxCpltCallback(I2C_HandleTypeDef *device);
      |                                ^~~~~~~~~~~~~~~~~
      |                                CRC_HandleTypeDef
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/addon_switch_off_reminder_settings_screen.o] Error 1
make: *** [Drivers/graphics/gui/screens/subdir.mk:64: Drivers/graphics/gui/screens/boot_screen.o] Error 1
"make -j4 all" terminated with exit code 2. Build might be incomplete.

21:51:44 Build Failed. 17 errors, 0 warnings. (took 2s.251ms)
« Last Edit: July 16, 2023, 04:41:59 pm by anwfeb »
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3563 on: July 16, 2023, 02:57:00 pm »
i have read i2c hardware mod.txt Software i2c makes a lot of hacks to squeeze the best performance, and it's about 50% faster. that's why i want to try

Software i2c is what's currently being used. Going to HW i2c won't make any better, it's a slow inteface anyways.
Nah I won't spend my Sunday in this, sorry! Just use it as-is :-DD.

The station won't work faster or anything. It can actually get a lot faster, it's the PWM what limits how often the readings are made.
If you set SYSTEM->GUI time to minimum, then IRON->ADC Time to 50ms and Delay to 5ms, you'll get 20 readings per second instead 5.

Performance will vary, usually new tips go crazy, but after days of use they will behave much better.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3564 on: July 18, 2023, 03:38:41 pm »
i have installed the mcu to the board, i just realized my mcu chip is a clone, the problem is it shows NTC low/high and temperature keeps changing. i have read:
Code: [Select]
If you're getting "NTC high/low" error even when disabling the NTC in settings, then your STM32 is fake.
Check Clones in Compatibility section and Clone fix option in System menu.

after i Clone Fix (ON) the NTC problem no longer appears, and i don't see a change in temperature, but the problem is when i plug in the TIP, the iron TIP is smolder and very hot, on the top right OLED screen it shows the number -99.9C this appears when i installed or without TIP -99.9C always appear.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3565 on: July 18, 2023, 07:24:04 pm »
Can't really tell, the clone fix is experimental, just a "try your luck and win" thing :-).
I won't spend any more time trying to make clones work, I highly encourage to replace it with a genuine one.

You might have the NTC connection wrong, or did you even connected it?
If not having NTC, then go to IRON->NTC MENU->NTC enable = OFF, then it will use the STM32 internal sensor.
« Last Edit: July 23, 2023, 12:56:21 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3566 on: July 23, 2023, 12:29:27 pm »
Hi, I've replaced the chip STM32 with original, now problem temperature it's working fine, but I have something to ask, I'm Building the firmware without error and without warning i add new source (Fix for CubeIDE 1.13.0 warning) the problem is when I change menu SYSTEM->Boot->Change Sleep to Run, after I come back to main screen, I get error as shown pictures, and changing boot "sleep" to "run" doesn't work, it doesn't seem to saved to eeprom the changes.


edit:
maybe i make changes to the encoder too fast and returned to the main screen too soon, i tried to change by turning the encoder slow and pressing "Back" then after 2-3 seconds i select the encoder for click "EXIT" and i didn't find any HARD FAULT, i will continue to try this firmware and report if it encounters an error
« Last Edit: July 23, 2023, 01:01:32 pm by anwfeb »
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3567 on: July 23, 2023, 01:00:37 pm »
You can go as fast as you want, it should never do that.
What stm32 did you put in?
Try to replicate the issue, it's been ages since last hard fault.

There's no reason to build yourself, releases are always updated, so try them.
I wonder if it's caused when saving settings to the flash, which is done instantly when exiting IRON menu if anything was changed.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3568 on: July 23, 2023, 01:14:48 pm »
i am using STM32F103C8T6 i got original stock and i can Debug on Cube IDE without getting error ST-LINK: Could not verify ST device!

there is new information, I tried the firmware that you have compiled here, and it runs as fast as anything without error, I have not found what the problem is, there is a difference in the my build the firmware, I believe I did the steps correctly, and without changing any source code that is in your source code, if you have a lot of time maybe you can try to delete the old project in CUBE IDE and try new a import the source code, I have also added the paths [Properties] -> [C/C++ Build] -> [Settings] -> [Tool Settings] -> [MCU GCC Compiler] -> [Include paths] according to your instructions, but the problem is always there, and if I do a slow encoder change, I don't get a HARD FAULT error on the screen, it only appears if I do it fast.
« Last Edit: July 23, 2023, 01:22:56 pm by anwfeb »
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3569 on: July 23, 2023, 01:44:37 pm »
You don't have to do anything like that? Just use the build script!
Or run the script to set the correct files, then import the project into the IDE.
But nothing else is required, like creating a new project etc...
Where did you saw that? Read again the instructions...
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3570 on: July 23, 2023, 01:59:10 pm »
You don't have to do anything like that? Just use the build script!
Or run the script to set the correct files, then import the project into the IDE.
But nothing else is required, like creating a new project etc...
Where did you saw that? Read again the instructions...

Sorry I didn't say create a new project, but did a new import, sorry my English is bad to understand, it's true I imported according to what was information in Build.md
« Last Edit: July 23, 2023, 02:00:49 pm by anwfeb »
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3571 on: July 23, 2023, 02:16:17 pm »
Ok then! :D
It's hard to know, keep using it, changing settings etc, trying to trigger the issue.
You might try going into system-> reset menu-> reset all, perhabs it's only happening on first boot.
Of course, I always use the latest, this week I soldered a lot of things with no issue at all.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3572 on: July 24, 2023, 10:04:29 am »
Ok then! :D
It's hard to know, keep using it, changing settings etc, trying to trigger the issue.
You might try going into system-> reset menu-> reset all, perhabs it's only happening on first boot.
Of course, I always use the latest, this week I soldered a lot of things with no issue at all.

reset all doesn't fix the problem, not only menu Boot = RUN/STBY/SLP, also menu ADDONS/EXTRAS if I turn Reminder ON, Btn Wake also if change ALL to SLP, then I quickly go back to the main screen, then HARD FAULT appears.

But there is something unique on the Edit Tips menu, I change the name of the tip and then save, and exit quickly to the main screen, I do not see errors there, it seems that the behavior of errors if something has changed without selecting save, then out quickly to the main screen, this behavior cannot store changes quickly, it takes 2-3 seconds to change changes to back to the main appearance then all will be fine, I think this is the problem of storing changes that are made without selecting Save, maybe..
« Last Edit: July 24, 2023, 10:18:41 am by anwfeb »
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5956
  • Country: es
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3573 on: July 24, 2023, 02:37:01 pm »
Can you make a picture of it?
I can only think on a relabeled clone, or a bug related to CubeIDE 1.13.0.
The last release was compiled with 1.12.1, so if still crashing it wont be a IDE problem.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline anwfeb

  • Regular Contributor
  • *
  • Posts: 65
  • Country: id
Re: CFW for KSGER/Quicko STM32 Soldering Stations
« Reply #3574 on: July 25, 2023, 01:27:30 am »
Can you make a picture of it?
I can only think on a relabeled clone, or a bug related to CubeIDE 1.13.0.
The last release was compiled with 1.12.1, so if still crashing it wont be a IDE problem.

You can see the difference between the chips I use, I have 2 clones with the code 991KA 93 SYM and the original code GQ23F 1293 CHN.

and you can also try the bin file from BUILD FIRMWARE which I did, I didn't change any source code, so I make sure that the code is still original.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf