Migration to new firmware - autumn 2018
Posted: Fri Sep 28, 2018 10:59 pm
Hi
Perhaps some of you are already looking forward to migrating to the new firmware version.
Once you have read this guide, it will be possible if you own a module with a serial number beginning with a smaller number: 180623.
As we already know, this is the date of production of the module.
What will be necessary
The manual will be "for advanced", so I will not go into unnecessary details.
The device is made up of two modules.
The first one is the main module with µC STM. The second module is the module responsible for WiFi communication with µC ESP.
The software in both modules needs to be updated.
Update process in a nutshell.:
IMPORTANT: We do not send information to the Geeetech team with requests for help or detailed information about migration and the like.
This will be ignored.
HIGHLY IMPORTANT: Do not erase the entire µC STM memory space. The memory contains some stored data, deleting them will immobilize the device.
As a consolation. This procedure is safe and tested by various people (including myself). By following the description you will achieve success.
Of course, you do everything at your own risk. If you spoil something you can only make claims to yourself.
One remark. If someone uses power from a USB <-> RS232 adapter, he must remember that the performance of this power source is relatively small - about 50mA. This is far too little to carry out tests of the device's functioning.
Minimum - recommended current efficiency of the PSU is 500mA.
The power supply from the adapter is sufficient for the programming. When the ESP module is set to firmware loading mode, it consumes about 40mA of current.
Firmware files for µC STM contain basic configuration and there is no need to configure memory addresses during the operation.
Firmware files for µC ESP require careful detailed configuration. It is also necessary to make a few additional settings in the loader.
INFORMATION PATTERN 1 for the Geeetech team:
The mail will be handled by the "automat", so any deviations will ignore the message.
Update process with a few hints:
Links to download the software:
feedback@geeetech.com
Helpful photos and screenshots:
circuit leads:
[/size] configuring the "ESP8266 DOWNLOAD TOOL" utility. a few additional photographs. a module perfectly prepared to start the migration.
A few words about the introduced functional changes.
Revision Description:
If you have successfully completed the migration, from now on you should use the application in the version marked with the number at least 2.0.
The installation version is located in the migration repository.
We have put a lot of effort and work to make this procedure as simple, as possible. Please appreciate it.
We wish you only successful migration.
usage: esptool [-h] [--chip {auto,esp8266,esp32}] [--port PORT] [--baud BAUD]
[--before {default_reset,no_reset,no_reset_no_sync}]
[--after {hard_reset,soft_reset,no_reset}] [--no-stub]
[--trace] [--override-vddsdio [{1.8V,1.9V,OFF}]]
{load_ram,dump_mem,read_mem,write_mem,write_flash,run,image_info,make_image,elf2image,read_mac,chip_id,flash_id,rea
d_flash_status,write_flash_status,read_flash,verify_flash,erase_flash,erase_region,version}
...
esptool.py v2.5.0 - ESP8266 ROM Bootloader Utility
positional arguments:
{load_ram,dump_mem,read_mem,write_mem,write_flash,run,image_info,make_image,elf2image,read_mac,chip_id,flash_id,read_flash_statu
s,write_flash_status,read_flash,verify_flash,erase_flash,erase_region,version}
Run esptool {command} -h for additional help
load_ram Download an image to RAM and execute
dump_mem Dump arbitrary memory to disk
read_mem Read arbitrary memory location
write_mem Read-modify-write to arbitrary memory location
write_flash Write a binary blob to flash
run Run application code in flash
image_info Dump headers from an application image
make_image Create an application image from binary files
elf2image Create an application image from ELF file
read_mac Read MAC address from OTP ROM
chip_id Read Chip ID from OTP ROM
flash_id Read SPI flash manufacturer and device ID
read_flash_status Read SPI flash status register
write_flash_status Write SPI flash status register
read_flash Read SPI flash content
verify_flash Verify a binary blob against flash
erase_flash Perform Chip Erase on SPI flash
erase_region Erase a region of the flash
version Print esptool version
optional arguments:
-h, --help show this help message and exit
--chip {auto,esp8266,esp32}, -c {auto,esp8266,esp32}
Target chip type
--port PORT, -p PORT Serial port device
--baud BAUD, -b BAUD Serial port baud rate used when flashing/reading
--before {default_reset,no_reset,no_reset_no_sync}
What to do before connecting to the chip
--after {hard_reset,soft_reset,no_reset}, -a {hard_reset,soft_reset,no_reset}
What to do after esptool.py is finished
--no-stub Disable launching the flasher stub, only talk to ROM
bootloader. Some features will not be available.
--trace, -t Enable trace-level output of esptool.py interactions.
--override-vddsdio [{1.8V,1.9V,OFF}]
Override ESP32 VDDSDIO internal voltage regulator (use
with care)
Examples of use
esptool write_flash --flash_mode dout --flash_size 1MB 0x0 boot_v1.2.bin 0x1000 user1.1.2.2.bin 0x81000 user2.1.2.22.bin 0xFB000 blank.bin 0xFC000 esp_init_data_default.bin 0xFE000 blank.bin
Perhaps some of you are already looking forward to migrating to the new firmware version.
Once you have read this guide, it will be possible if you own a module with a serial number beginning with a smaller number: 180623.
As we already know, this is the date of production of the module.
What will be necessary
- a lot of strong will, some manual skills,
- STM microcontroller programmer - STLINK-V2,
- any USB converter <-> RS232 TTL,
- software tools for loading firmware into the STM32F107RCT6 and ESP8266 microcontrollers,
- files with new firmware,
- a few details found in every electronics workshop,
- hint of madness.
The manual will be "for advanced", so I will not go into unnecessary details.
The device is made up of two modules.
The first one is the main module with µC STM. The second module is the module responsible for WiFi communication with µC ESP.
The software in both modules needs to be updated.
Update process in a nutshell.:
- Notify the Geeetech technical team about the willingness to join the "firmware migration autumn - 2018". and provide the serial number of your verification module.
- Solder the gold pin to the pads of the module.
- Upload transition firmware up to µC STM32F107RCT6, file: 3DWIFI_PIN_infloating.hex & Bootloader3DWifi_V1.0.hex, .
They will allow you to perform a trick and program the memory of the ESP module without disconnecting both modules.
After proper programming and starting the system (after about 5 seconds from the start) one of the LEDs will light up. For about 5 seconds. - Solder the necessary wires to the ESP module connector. RxD, TxD. GPIO0 pin should be connected to GND. It is also worth to prepare additional cable from one side soldered to GND. It may be necessary to restart the ESP module manually.
- Upload firmware for the ESP module. All software is divided into parts, files:
blank.bin, boot_v1.2.bin, esp_init_data_default.bin, user1.1.2.2.bin, user2.1.2.22.bin
If there are problems with synchronization after starting the programming process, the module can be restarted manually. We will do this by touching the end of the cable with GDN potential to the RESET lead of the ESP module. - Unsolder the added wires.
- Upload proper firmware to µC STM, file: 3DWIFI_V1.02.009.hex.
- Notified the Geeetech team about the lucky completion of the migration procedure to the new software. We must provide the serial number of our module.
- We look forward to hearing from the Geeetech team about the completion of technical operations.
- Configure the module according to the user manual. The configuration of the WiFi home network should be retained.
IMPORTANT: We do not send information to the Geeetech team with requests for help or detailed information about migration and the like.
This will be ignored.
HIGHLY IMPORTANT: Do not erase the entire µC STM memory space. The memory contains some stored data, deleting them will immobilize the device.
As a consolation. This procedure is safe and tested by various people (including myself). By following the description you will achieve success.
Of course, you do everything at your own risk. If you spoil something you can only make claims to yourself.
One remark. If someone uses power from a USB <-> RS232 adapter, he must remember that the performance of this power source is relatively small - about 50mA. This is far too little to carry out tests of the device's functioning.
Minimum - recommended current efficiency of the PSU is 500mA.
The power supply from the adapter is sufficient for the programming. When the ESP module is set to firmware loading mode, it consumes about 40mA of current.
Firmware files for µC STM contain basic configuration and there is no need to configure memory addresses during the operation.
Firmware files for µC ESP require careful detailed configuration. It is also necessary to make a few additional settings in the loader.
INFORMATION PATTERN 1 for the Geeetech team:
INFORMATION PATTERN 2 to the Geeetech team:subject of the message:
Migration to firmware autumn 2018 - Request for verification of serial number.
Content:
Good morning.
My name is: Albert Einstein.
Please verify the serial number of my 3DWiFi module: XXXXXX3DWFXXXXXXX.
Thank you.
In your messages, please enter the correct serial number of your module and your first and last name.subject of the message:
Migration to firmware autumn 2018 - Request for completion of technical activities.
Content:
Good morning.
My name is: Albert Einstein.
My module has successfully migrated. Please complete the technical steps. I give the serial number of my 3DWiFi module: XXXXXX3DWFXXXXXXX.
Thank you.
The mail will be handled by the "automat", so any deviations will ignore the message.
Update process with a few hints:
Links to download the software:
- ESP - ESP8266 DOWNLOAD TOOL utility
I can recommend a great tool to linux users – esptool.
- ARM - STM32 ST-LINK utility
- firmware package.
The location contains 4 folders:- ARM – firmware files for μC ARM32.
- ESP – firmware files for μC ESP.
- auto_upgrade-full – firmware files to perform an automatic update test after migration. The Geeetech team has prepared a separate manual with a detailed description of this procedure. In short: copy the contents of the directory to the memory card. After placing the memory card in the module slot and connecting the power supply, the process will start automatically. After the migration, any updates will run this way.
- Android – new application for the Android environment in version 2.1.
At the moment, the app is not yet available at GooglePlay Newsstand.
feedback@geeetech.com
Helpful photos and screenshots:
circuit leads:
[/size] configuring the "ESP8266 DOWNLOAD TOOL" utility. a few additional photographs. a module perfectly prepared to start the migration.
A few words about the introduced functional changes.
Revision Description:
- Repair the defects existing in the leveling.
- Optimize the process to improve the command response speed and file transfer response speed.
- Add WiFi module and motherboard auto-upgrade function.
- Fix the problem of printing pause and stop response too slow.
- Fix the stability problem of frequent dropped calls.
- Fix other bugs such as operations.
If you have successfully completed the migration, from now on you should use the application in the version marked with the number at least 2.0.
The installation version is located in the migration repository.
We have put a lot of effort and work to make this procedure as simple, as possible. Please appreciate it.
We wish you only successful migration.
usage: esptool [-h] [--chip {auto,esp8266,esp32}] [--port PORT] [--baud BAUD]
[--before {default_reset,no_reset,no_reset_no_sync}]
[--after {hard_reset,soft_reset,no_reset}] [--no-stub]
[--trace] [--override-vddsdio [{1.8V,1.9V,OFF}]]
{load_ram,dump_mem,read_mem,write_mem,write_flash,run,image_info,make_image,elf2image,read_mac,chip_id,flash_id,rea
d_flash_status,write_flash_status,read_flash,verify_flash,erase_flash,erase_region,version}
...
esptool.py v2.5.0 - ESP8266 ROM Bootloader Utility
positional arguments:
{load_ram,dump_mem,read_mem,write_mem,write_flash,run,image_info,make_image,elf2image,read_mac,chip_id,flash_id,read_flash_statu
s,write_flash_status,read_flash,verify_flash,erase_flash,erase_region,version}
Run esptool {command} -h for additional help
load_ram Download an image to RAM and execute
dump_mem Dump arbitrary memory to disk
read_mem Read arbitrary memory location
write_mem Read-modify-write to arbitrary memory location
write_flash Write a binary blob to flash
run Run application code in flash
image_info Dump headers from an application image
make_image Create an application image from binary files
elf2image Create an application image from ELF file
read_mac Read MAC address from OTP ROM
chip_id Read Chip ID from OTP ROM
flash_id Read SPI flash manufacturer and device ID
read_flash_status Read SPI flash status register
write_flash_status Write SPI flash status register
read_flash Read SPI flash content
verify_flash Verify a binary blob against flash
erase_flash Perform Chip Erase on SPI flash
erase_region Erase a region of the flash
version Print esptool version
optional arguments:
-h, --help show this help message and exit
--chip {auto,esp8266,esp32}, -c {auto,esp8266,esp32}
Target chip type
--port PORT, -p PORT Serial port device
--baud BAUD, -b BAUD Serial port baud rate used when flashing/reading
--before {default_reset,no_reset,no_reset_no_sync}
What to do before connecting to the chip
--after {hard_reset,soft_reset,no_reset}, -a {hard_reset,soft_reset,no_reset}
What to do after esptool.py is finished
--no-stub Disable launching the flasher stub, only talk to ROM
bootloader. Some features will not be available.
--trace, -t Enable trace-level output of esptool.py interactions.
--override-vddsdio [{1.8V,1.9V,OFF}]
Override ESP32 VDDSDIO internal voltage regulator (use
with care)
Examples of use
esptool write_flash --flash_mode dout --flash_size 1MB 0x0 boot_v1.2.bin 0x1000 user1.1.2.2.bin 0x81000 user2.1.2.22.bin 0xFB000 blank.bin 0xFC000 esp_init_data_default.bin 0xFE000 blank.bin