Install the DragonBoard Update Tool and allow to install the contain USB driver
Set Forced_USB_Boot (SW201) to “on”. (marked with 6)
Connect a USB cable to the i-PAN M7 micro USB-Slave port and connect the other end to an USB-port on the host PC. (marked with 4)
Connect a power-supply to the i-PAN M7 board (marked with 1)
Start the DragonBoard Update Tool.
The Update Tool should detect the i-PAN M7 and the Connection Status should turn green.
Select the “Browse” button and select the rawprogram0.xml. When this file does not exist you can create it when you select the Flash.ffu and click on „Program“.
Press the “Program” button and wait for the image to be stored onto the eMMC of the Myon.
Once download is complete, disconnect the power supply and micro-USB cable from the board and switch Forced_USB_Boot (SW201) back to “off”. Set Boot_Config_1 (SW200) to “off” to ensure boot from eMMC. If no card is inserted to the µSD-card socket, it would make no difference if Boot_Config_1 is set or not.
Please use this method only to test single components. You need the follwing tools:
emmcdl.exe (part of the DragonBoardUpdateTool)
prog_emmc_firehose_8916_ddr.mbn (Part of the DragonBoardUpdateTool)
cpfatfs.exe (part of the KuKMyonBuildEnvironment [KUK_SRC\acpi\bin])
To update a partition you need to start the Myon to USBDownloadMode. With „emmcdl -list“ you get the Right com port.
emmcdl -p COMxx -f prog_emmc_firehose_8916_ddr.mbn -b SBL sblfile.mbn
emmcdl -p COMxx -f prog_emmc_firehose_8916_ddr.mbn -b UEFI uefifile.mbn
Add need files to the fat16.bin file from ACPI build folder:
cpfatfs.exe fat16.bin panelcfg.xml
cpfatfs.exe fat16.bin boot1.bmp
cpfatfs.exe fat16.bin boot2.bmp
cpfatfs.exe fat16.bin SMBIOS SMBIOS.CFG
emmcdl -p COMxx -f prog_emmc_firehose_8916_ddr.mbn -b PLAT fat16.bin
insert SDCard and get the physical disk number:
powershell Get-WmiObject Win32_DiskDrive |
install image in SDCard:
dism.exe /Apply-Image /ImageFile:"*.ffu" /ApplyDrive:\\.\PhysicalDrive{disk_number} /SkipPlatformCheck or: flashSD.cmd eval_image test {disk_number} |
the first boot is very slow and take much time
you can easily insert your sd card into you host pc
insert SDCard and get the physical disk number:
powershell Get-WmiObject Win32_DiskDrive |
update the sdcard with dd for windows
dd if=firmware.tr8m.bin of=\\.\PhysicalDrive{disk_number} bs=512 seek=66 |
Boot the device an press ESC to stop the boot process in uboot
start the Massstorage Mode
ums 0 mmc 0 |
connect the USB Slave with your Host PC
get the Physical Device number of the emmc
powershell Get-WmiObject Win32_DiskDrive |
flash the emmc
dism.exe /Apply-Image /ImageFile:"*.ffu" /ApplyDrive:\\.\PhysicalDrive{disk_number} /SkipPlatformCheck or: flashSD.cmd eval_image test {disk_number} |
reset the device to boot into Windows IoT Core
Sometime the flash will crash, please close VirtualBox and all Explorer Windows.
boot the device an press ESC to stop the boot process in uboot
update the firmware with fastboot
fastboot on host pc with linux: sudo fastboot flash bootloader firmware.tr8m.bin |
copy firmware from emmc user partition to boot partition (the ffu contains the firmware even on emmc images)
read mmc 0:0 0x40800000 0x42 0x3FBD mmc dev 0 1 or (for boot1 or boot2) mmc dev 0 2 mmc write 0x40800000 0x42 0x3FBD |
copy firmware from external SDCard (FAT32 partitioned with firmware.im8m.bin) calulate the firmware size after read file (e.g. 3601897 bytes –> #blocks=ceil(3601897/512)=0x1B7B)
fatls mmc 1 fatload mmc 1 0x40800000 firmware.tr8m.bin mmc dev 0 1 or (for boot1 or boot2) mmc dev 0 2 mmc write 0x40800000 0x42 0x1B7B |
if the emmc/sd card has an saved environment, sometime the system will not boot (mostly after an update from linux/android)
you can erase the save environment with
mmc env_erase reset |
if the deployment breaks, sometime the emmc has no valid gpt table
ums 0 0 ** Invalid partition 1 ** |
you can write an dummy gpt before calling mounting in massstorage mode
gpt write mmc 0 name=emmc,size=-,type=system ums 0 0 |
on emmc you can choose the boot partion
//display configuration mmc partconf 0 //boot0 mmc partconf 0 1 1 0 //boot1 mmc partconf 0 1 2 0 //no boot partition, the the emmc will be used like an sd card mmc partconf 0 0 0 0 |