hillsoftware / sv06

Custom Sovol SV06 build with options for UBL, Bi-Linear, Manual Mesh, Input Shaping, and X-Twist
GNU General Public License v3.0
120 stars 21 forks source link

Bed Temperature Warning Start #18

Open bloodf opened 1 year ago

bloodf commented 1 year ago

When I flash the firmware with UBL, the printer starts beeping and shows an error about Bed Temperature.

How can I fix it? Using latest version from Releases Page with UBL

hillsoftware commented 1 year ago

Assuming you don't have any issues with the bed wiring (which you can verify by flashing back to the Sovol version and seeing if it works), I would say it is a bad flash.

j-lang commented 1 year ago

When I flash the firmware with UBL, the printer starts beeping and shows an error about Bed Temperature.

How can I fix it? Using latest version from Releases Page with UBL

Which version did you build? I can confirm the same behavior with V60b code/config compiled with PlatformIO. Switched back to V60 binary.

hillsoftware commented 1 year ago

If you are building your own binary and having this issue, check the bin file size. If it is over 228K than that is probably your issue. The GD processor Sovol uses on their board is a "clone" of the Arm processor and it has some issues.

The latter 256K of the flash space runs slower than the first half and any code in it causes unpredictable results. So you only have the first 256K and 28K of it is used by the bootloader.

So if you are having issues like described above, check your bin file size.

j-lang commented 1 year ago

The bin file has a size of 262.372 bytes. How can the bin file size reduced. Used the platformIO setting from this repo?

hillsoftware commented 1 year ago

I build on a Linux system. I don't know if that is why my binaries are smaller than others. I use PlatformIO and VS Code on Linux.

If you can't sort the compiler differences you could turn off any un-needed stuff to reduce size. Much easier to do on non UBL builds.

jenkinsmichpa commented 1 year ago

I built on Linux system with PlatformIO 6.1.6 in VSCode and had a similar binary size to j-lang/printer temp warnings. I installed it today so it might have pulled a newer library version than the original compilation or something similar.

kdobrev commented 1 year ago

Do you think if we comment all libraries for the different screens that get compiled we can save some space? For example idk which of these are really in use:


Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_arduino_st7920_custom.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_arduino_st7920_hw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_arduino_st7920_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_arduino_std_sw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_arduino_sw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_arduino_t6963.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_arduino_uc_i2c.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_atmega_hw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_atmega_parallel.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_atmega_st7920_hw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_atmega_st7920_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_atmega_sw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_atxmega_hw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_atxmega_st7920_hw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_esp32_ssd_i2c_fn.cpp.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_i2c.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_io.cpp.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_linux_ssd_i2c.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_msp430_hw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_null.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_psoc5_ssd_hw_parallel.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_raspberrypi_hw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_raspberrypi_ssd_i2c.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_samd51_hw_spi.cpp.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_samd51_st7920_hw_spi.cpp.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_std_sw_spi.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_stm32duino_hw_spi.cpp.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_com_stm32duino_ssd_i2c.cpp.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_cursor.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_delay.cpp.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_a2_micro_printer.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_flipdisc_2x7.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_gprof.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ht1632.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ili9325d_320x240.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ks0108_128x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_lc7981_160x80.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_lc7981_240x128.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_lc7981_240x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_lc7981_320x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ld7032_60x32.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_null.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_pcd8544_84x48.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_pcf8812_96x65.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_sbn1661_122x32.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1306_128x32.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1306_128x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1306_64x48.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1309_128x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1322_nhd31oled_bw.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1322_nhd31oled_gr.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1325_nhd27oled_bw.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1325_nhd27oled_bw_new.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1325_nhd27oled_gr.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1325_nhd27oled_gr_new.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1327_96x96_gr.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1351_128x128.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_ssd1353_160x128.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7565_64128n.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7565_dogm128.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7565_dogm132.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7565_lm6059.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7565_lm6063.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7565_nhd_c12832.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7565_nhd_c12864.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7687_c144mvgd.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7920_128x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7920_192x32.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_st7920_202x32.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_t6963_128x128.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_t6963_128x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_t6963_240x128.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_t6963_240x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_tls8204_84x48.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1601_c128032.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1608_240x128.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1608_240x64.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1610_dogxl160.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1611_dogm240.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1611_dogxl240.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1701_dogs102.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_dev_uc1701_mini12864.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_ellipse.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_04b.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_courier.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_fu.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_gd.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_helvetica.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_ncen.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_os.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_profont.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_symb.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_times.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_font_data_unifont.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_line.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_ll_api.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_page.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb14v1.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb16h1.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb16h2.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb16v1.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb16v2.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb32h1.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb8h1.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb8h1f.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb8h2.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb8h8.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb8v1.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pb8v2.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pbxh16.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_pbxh24.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_polygon.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_rect.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_rot.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_scale.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_state.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_u16toa.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_u8toa.c.o
Compiling .pio\build\GD32F103RET6_sovol_maple\libf30\U8glib-HAL\clib\u8g_virtual_screen.c.o```

Or the lines for this folder Compiling .pio\build\GD32F103RET6_sovol_maple\lib35e\USBComposite

And by the way on Windows mine got 245 KB (251 740 bytes)
kdobrev commented 1 year ago

I installed Fedora and copiled it there - the image is 251.4 kB (251,372 bytes) now.

So it is not the OS that makes it bigger.

Devirex commented 10 months ago

Hi, i have just build the V57 source code, and i run into the same issue. After building on Windows and Linux, filesize with UBL is 272 KB.

Advanced Memory Usage is available via "PlatformIO Home > Project Inspect" RAM: [=== ] 32.0% (used 20960 bytes from 65536 bytes) Flash: [===== ] 53.1% (used 278236 bytes from 524288 bytes) Building .pio/build/GD32F103RET6_sovol_maple/firmware-20240103-000629.bin

Are there any optimizations that can be done to reduce the filesize?

PassiveLemon commented 9 months ago

I Initially had this problem too. I eventually got the file size down to around 226 KB but it would still produce the error. If you've already tried to flash firmware multiple times, flash official firmware first and then your custom one after. I found that doing this actually solved my problem.

There's a neat guide here on reducing firmware size: https://www.crosslink.io/2020/08/14/shrinking-marlin-2-0-how-to-reduce-firmware-size-for-8-bit-boards-and-still-use-a-bltouch-and-the-filament-sensor/

slablaadje commented 8 months ago

@PassiveLemon

I'm also running into the same issues but can't seem to fix it. Even installing the official firmware first and then my file, but then again it is bigger than 228kB so maybe it needs to be AND <228kB AND installed right after the official firmware was put on it.

Can you tell me how you achieved 226kB? I'm stuck on 246kB even after disabling a whole bunch of that link.

PassiveLemon commented 8 months ago

All my current changes are here. Some people seem to get better results than others and I'm not sure why. In summary: Disabled the boot screen and status screen Disabled EEPROM_CHITCHAT Disabled PLR Enabled SD_CARD_READONLY Disabled the beeper

slablaadje commented 8 months ago

All my current changes are here. Some people seem to get better results than others and I'm not sure why. In summary: Disabled the boot screen and status screen Disabled EEPROM_CHITCHAT Disabled PLR Enabled SD_CARD_READONLY Disabled the beeper

Am I correct in understanding you are not on hillsoftware's version but on sovol3d's fork and also experienced the issue? I disabled even more than you did but still am on 248kB.

PassiveLemon commented 8 months ago

Yep, I am forked directly off the official repo

slablaadje commented 8 months ago

Right that is to no avail for me then, as I really want the 2.1.x / hillsoftware. Then it's a dead end for me to compile it myself, I tried all day to flash it, get it smaller. Unless anyone is willing to compile the UBL v57 with one change in the config: #define HOLD_MULTIPLIER 0.5 into #define HOLD_MULTIPLIER 1 As I have some steppers that don't like the low currents.

slablaadje commented 8 months ago

To stay under 228kB, I decided to take the latest marlin bugfix-2.1.x branch, and merge the settings from the sv06 repo here into it, and applied my personal changes. And I had to disable a whole lot, but I was able to keep all the (for me) necessary and useful features luckily!

I am not going to make a new repo as it is very custom for me, and I even disabled the bootscreen.

If you too want to go this route, I'd say come to the unofficial sovol discord and we can help you out there.

@hillsoftware any thoughts on this or the future of your repository?

gittyeric commented 7 months ago

+1 same error after flashing, and my compiled size on an Ubuntu machine is 263Kb. Curious 228K limit is a hard one or just unstable for some?

slablaadje commented 7 months ago

I have done some more digging, in chronological order

mattordev commented 7 months ago

Hey all, just ran into this issue myself. Going to try and flash default Sovol firmware and then my compiled attempt and see how that goes! Instead posting multiple comments, I'll just keep it in one comment :)

What I have observed though, for me, its E1, not my bed that's throwing the thermal runaway. Not sure if it's due to it just getting to that sensor first but odd none the less. I even tried unplugging the entire extruder (so, in theory E1 can't thermally runaway) and it still throws the error.

To chip in to the space saving thing, surely we shouldn't have to disable anything if things were working correctly, no? I'm not sure if @hillsoftware had to do any space saving but from what I can tell the precompiled releases (v57, ..., ...) are all full of features so we're missing something here.

@hillsoftware, can you try and intentionally bloat one of your binaries and flash it and see if you get the same error? Hell I'll even flash it for you if you'd like.

Well, this has beaten me for now! So off to bed I go.