rt-thread/bsp/nuvoton/numaker-hmi-ma35d1/nuwriter_scripts
Wayne 0d1c709fa5
Sync upstream (#6793)
Co-authored-by: Wayne Lin <wclin@nuvoton.com>
2022-12-29 15:15:13 +08:00
..
ddrimg Update NuWriter material. 2022-10-11 08:59:42 +08:00
README.md Sync upstream (#6793) 2022-12-29 15:15:13 +08:00
UnpackImage.py Update NuWriter material. 2022-10-11 08:59:42 +08:00
header-nand.json
header-sd.json
install_linux.sh Sync upstream (#6793) 2022-12-29 15:15:13 +08:00
nuwriter.py Update NuWriter material. 2022-10-11 08:59:42 +08:00
nuwriter_ddr_download_and_run.bat
nuwriter_ddr_download_and_run.sh Sync upstream (#6793) 2022-12-29 15:15:13 +08:00
nuwriter_nand_programming.bat
nuwriter_nand_programming.sh Sync upstream (#6793) 2022-12-29 15:15:13 +08:00
nuwriter_sd_programming.bat
nuwriter_sd_programming.sh Sync upstream (#6793) 2022-12-29 15:15:13 +08:00
nuwriter_spinand_programming.bat
nuwriter_spinand_programming.sh Sync upstream (#6793) 2022-12-29 15:15:13 +08:00
otp_writer.bin Update NuWriter material. 2022-10-11 08:59:42 +08:00
pack-nand.json
pack-sd.json
xusb.bin Update NuWriter material. 2022-10-11 08:59:42 +08:00
xusbcom.py

README.md

nuwriter_scripts

Some scripts can help you program firmware into storages in this folder.

Requirement

Python3 for Window

After installing Python3, some plug-in as below must be installed.

pip3 install pyusb usb crypto ecdsa crcmod tqdm pycryptodome

Notice:

  • Tested python3 version is 3.10.1.
  • Please remember to add Python to PATH environment variable.

Libusb for Window

On Windows platform, it is required to install libusb manually.

Step 1: Download the library extract the download file.
Step 2: Copy MS64\dll\libusb-1.0.dll to C:\Windows\System32.
Step 3: Copy MS64\dll\libusb-1.0.lib to C:\Users\<user name>\AppData\Local\Programs\Python\<python ver>\Lib.

USB Driver for Window

NuWriter must install WinUSB4NuVCOM.exe on the computer.

Double-click Scripts for Windows

If your NuWriter_MA35 python running is ready, you can do following batch script files for Window directly.

nuwriter_ddr_download_and_run.bat

Download rtthread.bin binary file into DDR. The address is 0x80400000.

nuwriter_sd_programming.bat

Program header, DDR timing setting and rtthread.bin binary file into SD card or EMMC.

nuwriter_spinand_programming.bat

Program header, DDR timing setting and rtthread.bin binary file into SPI NAND flash.

nuwriter_nand_programming.bat

Program header, DDR timing setting and rtthread.bin binary file into NAND flash.

Bash Scripts for Linux

If your NuWriter_MA35 python running is ready, you can do following bash script files for Linux directly. If not, the install_linux.sh will help user to install related python module installation.

# ./install_linux.sh

nuwriter_ddr_download_and_run.sh

Download rtthread.bin binary file into DDR. The address is 0x80400000.

nuwriter_sd_programming.sh

Program header, DDR timing setting and rtthread.bin binary file into SD card or EMMC.

nuwriter_spinand_programming.sh

Program header, DDR timing setting and rtthread.bin binary file into SPI NAND flash.

nuwriter_nand_programming.sh

Program header, DDR timing setting and rtthread.bin binary file into NAND flash.

Troubleshoot

Fail to create symbolic folder

Create symbolic folder conv failed
  • To switch Developer Mode in Window. To enter [Settings], [Update & Security], [For developers], [Developer Mode] page, then set it On
  • Use Administrator permission to install python3, libusb and utilities.

Use NuWriter_MA35.exe

Due to the python execution file size and saving network bandwidth, we just only release the python code in this repository. We also provide NuWriter_MA35.exe python execution. You can run the packaged app without installing a Python interpreter or any modules. You can use NuWriter_MA35.exe and do some modification.

To modify "py -3 nuwriter.py" to "NuWriter_MA35.exe"

For example, the nuwriter_ddr_download_and_run.bat modification is as following:

:forever_develop
NuWriter_MA35.exe -a ddrimg\enc_ddr3_winbond_256mb.bin
IF %ERRORLEVEL% EQU 0 (
   NuWriter_MA35.exe -o execute -w ddr 0x80400000 ..\rtthread.bin
)
pause
goto :forever_develop

See also

NuWriter Repository