EM-X270: WinCE: Installation Troubleshooting
Contents
Prepare for Troubleshooting
- Ensure that the entire LiveDisk directory contents is copied to USB flash drive. Mixing the contents of different LiveDisk releases can lead to unexpected Updater failures.
- If you experience any problems during the installation, connect the serial console as described in EM-X270 Serial Console Setup.
- Use successful installation serial log as reference during the troubleshooting.
USB Failure in U-boot
Example of USB failure in U-boot
U-Boot 1.2.0-em-x270 (Nov 18 2008 - 14:20:46) Zeroing memory... DRAM: 128 MB Flash: 1 MB NAND: mtd driver deactivated - 0 MiB Hit any key to stop autoboot: 0 ## Executing script at 00070000 ============ External Boot Script =============== No MMC card found (Re)start USB... USB: scanning bus for devices... ERROR: submit_control_message: pipesize for p ipe 80000000 is zero USB device not accepting new address (error=80000000) 2 USB Device(s) found scanning bus for storage devices... 0 Storage Device(s) found ** Can't read from device 0 ** ** Unable to use usb 0:1 for fatload ** stopping USB..
USB Troubleshooting
- Try to use different USB flash drive, i.e. different manufacturer or smaller size.
- Ensure that USB flash drive is formatted with FAT32
- Try different USB-A receptacle to mini-USB A male adapter
TFTP Alternative
If you experience any USB boot problem in U-boot you can boot the Updater OS via TFTP. The EB-X270 extender board is required for this procedure.
- Install TFTP service (or server) on the host PC. The TFTP server tested by CompuLab is TFTPD32, it is also included in the Linux and WinCE distribution packages.
- Copy nk_uppdater.nb0 file from LiveDisk directory to the TFTP directory.
- Turn on the EM-X270. U-Boot will start and you will get a command prompt.
- Type printenv in order to inspect current network settings.
- In order to modify the network settings use U-boot dhcp command to obtain IP address or manually set ipaddr environment variable:
> setenv ipaddr <CM-T3530 ip address>
- Set serverip environment variable:
> setenv serverip <host ip address>
- Type the following command to launch the updater:
> tftp a0001000 nk_updater.nb0; go a0001000
Usb Failure in Updater OS
Sometimes the USB flash drive is not properly detected in Updater OS. In such case the Updater application pops up "Can't find script file" message dialog.
For each Updater error more detailed information can be found in serial console log. |
SD Card Alternative
Due to U-boot limitations the USB flash drive is required for the Updater OS boot. An SD card can be used as alternative source for the files required by the Updater application. Usage of SD card requires a slight modification in the LiveDisk\script.xml file. The source storage <access_information> tag should use SD as <device_type> and \Storage Card as <mount_path>.
The <source_storage> definition for the SD card usage would be:
<updater version="1.0"> <source_storage> <access_information> <device_type>SD</device_type> <mount_path>\Storage Card</mount_path> </access_information> </source_storage> </updater>
Successful Installation Log
Below presented the successful installation serial console log. You can use this log as a reference during the installation troubleshooting.
U-Boot 1.2.0-em-x270 (Nov 18 2008 - 14:20:46) Zeroing memory... DRAM: 128 MB Flash: 1 MB NAND: mtd driver deactivated - 0 MiB Hit any key to stop autoboot: 0 ## Executing script at 00070000 ============ External Boot Script =============== No MMC card found (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found reading update.img ... 880 bytes read ## Executing script at a0020000 (Re)start USB... USB: scanning bus for devices... 2 USB Device(s) found scanning bus for storage devices... 1 Storage Device(s) found reading eboot.nb0 ... ... ... ... ................... .. 217088 bytes read ===== Update eboot.nb0 ===== Un-Protected 4 sectors .............................................................................................................................................................. done Erased 4 sectors Copy to Flash... done Copy to Flash... done reading splashscreen.bmp ... ... ... ... ............................ . 308278 bytes read ===== Update splashscreen ===== Un-Protected 8 sectors ................................................................................................................................................................................................................ .......................................................................... done Erased 8 sectors Copy to Flash... done ===== Update Enviroment Variables ===== Saving Environment to Flash... Un-Protected 1 sectors Erasing Flash... .......................................... done Erased 1 sectors Writing to Flash... done Protected 1 sectors reading nk_updater.nb0 ... ... ... ... ................................................................................................................................................................................................................ ................................................................................................................................................................................................................ ................................................................................................................................................................................................................ ................................................................................................................................................................................................................ ................................................................................................................................................................................................................ ................................................................................................................................................................................................................ ................................................................................................................................................................................................................ ..................... ... 16384000 bytes read ===== Launch WincCE Updater ===== ## Starting application at 0xA0002000 ... OAL: Debug Init Success !!! Windows CE Kernel for ARM (Thumb Enabled) Built on Sep 25 2009 at 11:04:23 INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xb OAL: Booting with CPU frequency 520 Mhz. OAL: PXA USB port3 configured as slave. MEMINIT: Memory size is 128MB. 1MB is allocated for splash-screen MEMINIT: Splash-screen virtual-address = 0x87879000 RTC: EMSetAlarmTime provided by Kernel(2006/1/1 12:0:0.000) RTC: OEMGetRTCTime(2010/3/9 11:44:0.000) +OEMSetCPURealTime(2010/3/9 11:44:0.000) +AdjustSyncTime: Set sync time in 3600 seconds OEM: Not cleaning system hive REGMOD: Starting REGMOD Scheduler. REGMOD: Running on EM-X27047637 with 128MB of RAM (boot parameters: "debug"). REGMOD: Device production string is: "EM-X270-D128-C520-N512-AT-J-W-H-K-Y-V140-26-Jan-2010-00:01:". SPI: PowerUp: DA9030: PWC_Init(xd02aecf0,x00000000): DA9030: Registry paramers are: Irq = 0x8, 7-bit i2cAddress = 0x49, IST Prority256 = 0xfb. I2C: Open Power I2C Bus(I2C1:) DA9030: Prepare to set initial LDO voltage configuration... DA9030: Prepare to set initial LDO state... DA9030: Init Success. BATTERY: Battery is not detected (working with extender). FMD: Detected PCB Revision is 140 (using hardware NAND CLE/ALE protection). FMD: Starting low-level NAND initialization. FMD: Detected nMaker code = EC, device code = DC, ID_data = 95 FMD: NAND flash detected: size in blocks = 4096, block size = 131072, page size = 2048. AUDIO: +HardwareContext::Init. AUDIO: Wolfson WM9715L codec is detected. AUDIO: -HardwareContext::Init. USBHOST: Init done. USBHOST: No OverCurrent detect pin available. USBHOST: Reseting USB hub ... USBHOST: Reseting USB hub -> done. SDH: +SDH_Init SDH: -SDH_Init SD: Processing card insertion. DM9000: +EDeviceInitialize. DM9000: Interrupts are succesfully registered. DM9000: +DeviceStart. OTG: USB host inserted. DA9030: Setting USB host charge pump on. OTG: USB Host detection SysIntr allocated(m_dwOTGSysIntr = 32). TD035STEE1: The LCD display is detected. BKL: Init Successfull(BacklightLevel 5). BKL: Enabling backlight. LCD: Done getting Registry values: Bpp: 0x10 CxScreen: 0x1e0 CyScreen: 0x280 LCD: Framebuffer size = 614400, pallete size = 0 (bpp = 16). Display Driver Initialization Complete LCD: m_nScreenWidth = 480, m_nScreenHeight = 640. TD035STEE1: The LCD display is detected. TOUCH: Touch sensitivity: 8 TOUCH: Pressure filter: 0 TOUCH: Pressure treshold: 200 TOUCH: Spike filter: 1 TOUCH: Pen movement filter: 1 TOUCH: Pen movement sensitivity: 50 TOUCH: Pen up polling interval: 40 (ms) TOUCH: Setting pen detect pull-up to 8000 Ohms TOUCH: Setting pressure measurement current to 200uA. TOUCH: Setting adc sample delay to 167 usecs. BSPIntrEnableIrq: IRQ_GPIOXX_TOUCH. BKL: +BacklightPwrSrcChanged fOnAC = 1 BCCMD_SetBDAddress: Perform Warm Reset HCI_OpenConnection: Setup BT MAC address ---> Success. SD:No Write Protection detected. AUTOLAUNCH: Checking HKEY_LOCAL_MACHINE\Startup key for programs to run. AutoLaunch: Creating Process "Updater.exe" UpdaterBackend.UpdaterBackendProcessing: Start Updater Process EMX270Platform: Creating platform instance --> success UpdaterBackend.UpdaterBackendProcessing: Create Platform --> success UpdaterBackend.UpdaterBackendProcessing: Create Loader Policy --> success UpdaterBackend.UpdaterBackendProcessing: Create Script Parser --> success XMLScriptParser.loadScript --> success UpdaterBackend.UpdaterBackendProcessing: Load Script --> success XMLScriptParser.parseScriptPartial of Remote Storage Access info --> success XMLScriptParser.parseScriptPartial of Loger info --> success Platform: Init Raw device driver --> success Platform: Init Raw device access --> success Platform: Init Block device access --> success Platform: Init Block device driver --> success LocalStorageInfo.ResolvePlatformDependencies: Requested device size differs from supported LocalStorageInfo.ResolvePlatformDependencies: Setting the device size to be 536870912 XMLScriptParser.parseScriptPartial of Local Storage info --> success XMLScriptParser.parseScriptPartial of Command info --> success XMLScriptParser.parseScript --> success UpdaterBackend.UpdaterBackendProcessing: Parse Script --> success LocalStorageInfo.DumpLocalStorageInfo: Device Info: Id = 0x389B2A75 Length = 0x20000000 BlockSize = 0x20000 SectorSize = 0x800 Region Info: Id = 0xFF88D69 Start = 0x0 Length = 0x20000 Alignment = 0x20000 Source FileName = \Hard Disk\boot_region.nb0 Entity Info: ---------------------------- Id = 0x7CCD8C9C Region Offset = 0x0 Absolute Start = 0x0 Length = 0x20000 Alignment = 0x20000 Source FileName = \Hard Disk\eboot_config.nb0 ---------------------------- Region Info: Id = 0xCA285533 Start = 0xFFFFFFFFFFFFFFFF Length = 0xFFFFFFFFFFFFFFFF Alignment = 0x20000 Source FileName = \Hard Disk\os_region.nb0 Entity Info: ---------------------------- Id = 0x4A043816 Region Offset = 0xFFFFFFFFFFFFFFFF Length = 0xFFFFFFFFFFFFFFFF Alignment = 0xFFFFFFFFFFFFFFFF Source FileName = \Hard Disk\os_partition_table.nb0 ---------------------------- Entity Info: ---------------------------- Id = 0x58073AFD Region Offset = 0xFFFFFFFFFFFFFFFF Length = 0x2A010CC Alignment = 0x800 Source FileName = \Hard Disk\nk.bin ---------------------------- Entity Info: ---------------------------- Id = 0xAA6BEA90 Region Offset = 0xFFFFFFFFFFFFFFFF Length = 0xFFFFFFFFFFFFFFFF Alignment = 0x800 Source FileName = \Hard Disk\partition_system.nb0 ---------------------------- Region Info: Id = 0x7538FAAF Start = 0xFFFFFFFFFFFFFFFF Length = 0x140000 Alignment = 0x20000 Source FileName = \Hard Disk\reserve_region.nb0 UpdaterBackend.UpdaterBackendProcessing: Prepare for command execution --> success UpdaterBackend.UpdaterBackendProcessing: Instantiate CommandCreator --> success UpdaterBackend.UpdaterBackendProcessing: Instantiate CommandInvoker --> success UpdaterBackend.UpdaterBackendProcessing: Start time 3/9/2010 11:44:36 AM Executing RESERVE command for targetId =0x7538FAAF Executing RESERVE command for targetId =0x7CCD8C9C Executing ERASE command for targetId =0xCA285533 Region Info: Id = 0xCA285533 Start = 0xFFFFFFFFFFFFFFFF Length = 0xFFFFFFFFFFFFFFFF Alignment = 0x20000 Source FileName = \Hard Disk\os_region.nb0 Executing CreatePartition command for targetId =0x58073AFD PWM: PBT_TRANSITION to system power state [Flags: 0x10010000]: 'backlightoff' Executing CreatePartition command for targetId =0xAA6BEA90 FMD: Detected PCB Revision is 140 (using hardware NAND CLE/ALE protection). FMD: Starting low-level NAND initialization. FMD: Detected nMaker code = EC, device code = DC, ID_data = 95 FMD: NAND flash detected: size in blocks = 4096, block size = 131072, page size = 2048. FMD: Detected PCB Revision is 140 (using hardware NAND CLE/ALE protection). FMD: Starting low-level NAND initialization. FMD: Detected nMaker code = EC, device code = DC, ID_data = 95 FMD: NAND flash detected: size in blocks = 4096, block size = 131072, page size = 2048. Executing STORE command for targetId =0x58073AFD Entity Info: ---------------------------- Id = 0x58073AFD Region Offset = 0x800 Absolute Start = 0x20800 Length = 0x2E344CC Alignment = 0x800 Source FileName = \Hard Disk\nk.bin ---------------------------- Executing UPDATE_PARAMETER command for targetId =0x7CCD8C9C Executing RESET command for targetId =0x0 Invoking external application [SetSystemPowerState.exe reboot] Flushing Registry before power state change. BKL: +BackLightSetState - OFF DA9030: Entering SetPowerState from D0. DA9030: Setting GPRS power off. DA9030: Setting Power State to be D4. PWM: PBT_TRANSITION to system power state [Flags: 0x800000]: 'reboot' UpdaterBackend.UpdaterBackendProcessing: End time 3/9/2010 11:47:02 AM SPI: Power managing ->Moving to D4 SA2Video::SetPmPowerState: (D4) SA2Video::SetPmPowerState: TurnOff Display 4 OAL: U-Boot 1.2.0-em-x270 (Nov 18 2008 - 14:20:46) Zeroing memory... DRAM: 128 MB Flash: 1 MB NAND: mtd driver deactivated - 0 MiB Hit any key to stop autoboot: 0 ## Starting application at 0xA7E00000 ... Microsoft Windows CE Ethernet Bootloader 1.8 for the Compulab EM-X270 Development Platform Built Feb 2 2010 FMD: Detected PCB Revision is 140 (using hardware NAND CLE/ALE protection). FMD: Starting low-level NAND initialization. FmdUtilMalloc: Request to alloc 76 bytes (current mem pointer is: 0x87D80000 , lastChange = 0) FmdUtilMalloc: Allocated 76 bytes (from 0x87D80000) FMD: Detected nMaker code = EC, device code = DC, ID_data = 95 FMD: NAND flash detected: size in blocks = 4096, block size = 131072, page size = 2048. Loading EBOOT configuration... It is a Virgin boot LoadEBSPCFG: Magic Number: 1020305 Reserver spare area because of virgin boot KITL(Image Download) Transport (Davicom DM9000) Enable KITL (Disabled) Enable VBridge (Disabled) Press [ENTER] to launch image stored in flash or [SPACE] to cancel. Initiating image launch in 0 seconds. FlashWrite: start writing at block 0 FlashWrite: numBlocksProgram: 1 . FlashWrite: Image written System ready! Preparing for download... +OEMLaunch: Start 0x0, Length 0x0, LaunchAddr 0x0, RomHdr 0x0 INFO: Using dwLaunchAddr =0x80001000 INFO: Using dwPhysStart =0x80001000 INFO: Using dwPhysLen =0x262F444 IsValidMBR: MBR sector = 0x40 (valid MBR) OpenPartition: Partition Exists=0x1 for part 0x21. BP_SetDataPointer at 0x0 ReadData: Start = 0x0, Length = 0x262f444. Log2Phys: Logical 0x1 -> Physical 0x41 Directly jumping to from LoadImageDDR to image at physical 0xA0001000... OAL: Debug Init Success !!! Windows CE Kernel for ARM (Thumb Enabled) Built on Sep 25 2009 at 11:04:23 INFO:OALLogSetZones: dpCurSettings.ulZoneMask: 0xb OAL: Booting with CPU frequency 520 Mhz. OAL: PXA USB port3 configured as slave. MEMINIT: Memory size is 128MB. 1MB is allocated for splash-screen MEMINIT: Splash-screen virtual-address = 0x87879000 RTC: EMSetAlarmTime provided by Kernel(2006/1/1 12:0:0.000) RTC: OEMGetRTCTime(2010/3/9 11:47:33.000) +OEMSetCPURealTime(2010/3/9 11:47:33.000) +AdjustSyncTime: Set sync time in 3600 seconds FMD: Detected PCB Revision is 140 (using hardware NAND CLE/ALE protection). FMD: Starting low-level NAND initialization. FMD: Detected nMaker code = EC, device code = DC, ID_data = 95 FMD: NAND flash detected: size in blocks = 4096, block size = 131072, page size = 2048. OEM: Set format request to partion "Part01" (partType =0xb) OEM: Not cleaning system hive OEM: Not cleaning user profiles OEM: Not cleaning system hive REGMOD: Starting REGMOD Scheduler. REGMOD: Running on EM-X27047637 with 128MB of RAM (boot parameters: "debug"). REGMOD: Device production string is: "EM-X270-D128-C520-N512-AT-J-W-H-K-Y-V140-26-Jan-2010-00:01:". SPI: PowerUp: DA9030: PWC_Init(xd029ecf4,x00000000): DA9030: Registry paramers are: Irq = 0x8, 7-bit i2cAddress = 0x49, IST Prority256 = 0xfb. I2C: Open Power I2C Bus(I2C1:) DA9030: Prepare to set initial LDO voltage configuration... DA9030: Prepare to set initial LDO state... DA9030: Init Success. BATTERY: Battery is not detected (working with extender). AUDIO: +HardwareContext::Init. AUDIO: Wolfson WM9715L codec is detected. AUDIO: -HardwareContext::Init. USBHOST: Init done. USBHOST: No OverCurrent detect pin available. USBHOST: Reseting USB hub ... USBHOST: Reseting USB hub -> done. SDH: +SDH_Init SDH: -SDH_Init SD: Processing card insertion. DM9000: +EDeviceInitialize. DM9000: Interrupts are succesfully registered. DM9000: +DeviceStart. SERIAL: COM3 (FFUART) init successfull. !!!Kernel mode PSL 'PRdr' de-registered!!! !!!Kernel mode PSL 'HRdr' de-registered!!! !!!Kernel mode PSL 'FRdr' de-registered!!! SERIAL:Disabling COMA Serial Driver - the port is dedicated for debugging. OTG: USB host inserted. DA9030: Setting USB host charge pump on. OTG: USB Host detection SysIntr allocated(m_dwOTGSysIntr = 32). TD035STEE1: The LCD display is detected. BKL: Init Successfull(BacklightLevel 5). BKL: Enabling backlight. KEYPAD: AutoRepeatThread started (dwSleepDuration=200). KEYPAD: IST Thread started. LCD: Done getting Registry values: Bpp: 0x10 CxScreen: 0x1e0 CyScreen: 0x280 LCD: Framebuffer size = 614400, pallete size = 0 (bpp = 16). Display Driver Initialization Complete LCD: m_nScreenWidth = 480, m_nScreenHeight = 640. TD035STEE1: The LCD display is detected. TOUCH: Touch sensitivity: 8 TOUCH: Pressure filter: 0 TOUCH: Pressure treshold: 200 TOUCH: Spike filter: 1 TOUCH: Pen movement filter: 1 TOUCH: Pen movement sensitivity: 50 TOUCH: Pen up polling interval: 40 (ms) TOUCH: Setting pen detect pull-up to 8000 Ohms TOUCH: Setting pressure measurement current to 200uA. TOUCH: Setting adc sample delay to 167 usecs. BSPIntrEnableIrq: IRQ_GPIOXX_TOUCH. BKL: +BacklightPwrSrcChanged fOnAC = 1 BCCMD_SetBDAddress: Perform Warm Reset HCI_OpenConnection: Setup BT MAC address ---> Success. SD:No Write Protection detected. AUTOLAUNCH: Checking HKEY_LOCAL_MACHINE\Startup key for programs to run. AutoLaunch: Creating Process "wpower.exe auto" AutoLaunch: Creating Process "ConmanClient2.exe"