Skip to content

Info dump... #3

@nubecoder

Description

@nubecoder

Hi, thanks for all of the effort put into this.
Your site and this repo helped to free my KLIPAD50s from outdated software.

1st, some of the 'unknown' binaries.

hid-flash:
The hid-flash binary found in the /root/ folder is indeed the STM32 HID Bootloader Flash Tool.
(Which is also the source of Klipper's lib/hidflash).
Using strings will output:

+-----------------------------------------------------------------------+
|         HID-Flash v2.2.1 - STM32 HID Bootloader Flash Tool            |
|     (c)      2018 - Bruno Freitas       http://www.brunofreitas.com   |
|     (c) 2018-2019 - Vassilis Serasidis  https://www.serasidis.gr      |
|   Customized for STM32duino ecosystem   https://www.stm32duino.com    |
+-----------------------------------------------------------------------+

Which aligns with:
https://github.com/Serasidis/STM32_HID_Bootloader/blob/master/cli/main.c#L77-L82
But it has been customized, the usage message was the giveaway:

Usage: hid-flash <bin_firmware_file> <comport> <delay (optional)>
For example:
./hid-flash /home/mks/klipper/out/klipper.bin ttyS0

And that aligns with MS1987's repo here:
https://github.com/MS1987/STM32_HID_Bootloader/blob/master/cli/main.c#L87
So, I believe this repo is the source: https://github.com/MS1987/STM32_HID_Bootloader/
(It also has the most changes of any public fork.)

I have not yet gotten around to testing hid-flash to see, but I'm hoping it can provide a means to updating the mcu without the need to use the SD card slot. 🤞

uart:
The uart binary found in the /root/ folder is a TFT screen firmware updater (used for QIDI 3d printers).

# strings uart | grep root
    /root/800_480.tft

Ref:
https://github.com/QIDITECH/QIDI_PLUS3/blob/main/main.cpp#L95

udp_server:
The udp_server binary found in the /root/ folder is a web server for managing the /root/www/dev_info.txt file.
It listens on port 8990 (port 8989 is also opened but doesn't seem to be used) and supports the following routes:
GET /printer/dev_name
This returns a json blob like:

{
    "result": {"dev_name": <NAME>}
}
`GET /printer/dev_name?name=<NAME>`
    This writes the provided name to the `/root/www/dev_info.txt` file.
    The `/root/www/dev_info.txt` file's original content is 'QIDI'.

I have no clue why this exists. I suspect it's Makerbase reusing OS images / builds and leaving leftovers behind.

Other Sovol / Makerbase modifications:
Sovol's power loss recover is more based on YUMI_PLR than it is klipper-plr. Although the former looks to be derived from the latter anyways.
But the PLR also includes modifications to KlipperScreen. I'm planning on compiling the necessary changes into patch files so they can be reapplied to KlipperScreen mainline.

Other:
And lastly, SOVOL_MKDEB...
Based on the hid-flash connection mentioned above as well as the default KLIPAD50 image Sovol provides' bash history showing:

# cat home/mks/.bash_history | grep MS1987
git config --global user.name "MS1987"
git remote add origin https://github.com/MS1987/KlipperScreen.git
git clone https://github.com/MS1987/KlipperScreen.git
git clone https://github.com/MS1987/KlipperScreen.git

This seems like as close to an official repo as we have for Sovol's Debian package based updates.

Images:
And now some images from this forum thread:
https://forum.sovol3d.com/t/mks-board-inside/3384

V1.0:

V1.1:



V1.0 & V1.2:

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions