[Resolved] Stuck in U-Boot - ERROR: Bad Data CRC



  • My setup is an Omega2+ inserted on an Expansion Dock. Also on the Expansion Dock, the Ethernet Expansion (no cable inserted) and the Oled Expansion. Power to the Expansion Dock came from a 5Vdc, 1Amp adapter (a 120Vac Apple iPod charger) + mini-usb cable.

    1. The Omega2+ powered-up as expected, and the Access Point was launched.
    2. I can connect to the web Console and open a SSH session.
    3. I transferred the new firmware using scp, then ran sysupgrade omega2p-v0.1.8-b145.bin
    4. I waited, noticed the WiFi connection drop, and waited, and waited, ... than waited some more
    5. I powered-off, then powered-on, but the Access Point never came back.

    Note that I did the exact same procedure on another Omega2+ just before, and all went fine. At that point, I researched the Serial Terminal alternative to have more debug details, and came up with this post (shameless plug):
    https://community.onion.io/topic/1329/tip-switch-the-omega-to-verbose

    So, I had to switch the mini-usb cable from the 5V adapter to the desktop computer to get the serial communication going. I copied the firmware file onto the USB key (FAT32 format) under the name omega2.bin, and inserted it in the Expansion Dock. Here's the Serial Terminal output when doing the U-Boot firmware upgrade:

       ____       _             ____
      / __ \___  (_)__  ___    / __ \__ _  ___ ___ ____ _
     / /_/ / _ \/ / _ \/ _ \  / /_/ /  ' \/ -_) _ `/ _ `/
     \____/_//_/_/\___/_//_/  \____/_/_/_/\__/\_, /\_,_/
     W H A T  W I L L  Y O U  I N V E N T ? /___/"
    
    Board: Onion Omega2 APSoC DRAM:  128 MB
    relocate_code Pointer at: 87f60000
    flash manufacture id: c2, device id 20 19
    find flash: MX25L25635E
    *** Warning - bad CRC, using default environment
    
    ============================================ 
    Onion Omega2 UBoot Version: 4.3.0.3
    -------------------------------------------- 
    ASIC 7628_MP (Port5<->None)
    DRAM component: 1024 Mbits DDR, width 16
    DRAM bus: 16 bit
    Total memory: 128 MBytes
    Flash component: SPI Flash
    Date:Oct 18 2016  Time:17:29:05
    ============================================ 
    icache: sets:512, ways:4, linesz:32 ,total:65536
    dcache: sets:256, ways:4, linesz:32 ,total:32768 
    CPU freq = 575 MHZ
    Estimated memory size = 128 Mbytes
    Resetting MT7628 PHY.
    Initializing MT7688 GPIO system.
    
    
    **************************************
    * Hold Reset button for more options *
    **************************************
    
    
    You have 40 seconds left to select a menu option...
    
    
    Please select option: 
       [ Enter ]: Boot Omega2.
       [ 0 ]: Start Web recovery mode.
       [ 1 ]: Start command line mode.
       [ 2 ]: Flash firmware from USB storage. 
    
    Option [2] selected.
    System Load Linux then write to Flash via USB Storage. 
    Looking for a USB Storage. 
    If suitable image is found on USB Storage writing to Flash will be attempted. 
    U-Boot will look for a FAT file system. 
    (Re)start USB...
    LOW LEVEL INIT USB0:   
    Scanning bus 0 for devices... 
    New Device 0
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x100 index 0x0 length 0x8
    usb_control_msg: status = success?
    
     INSIDE USB INIT 
    
     INSIDE USB INIT: Device responded.
    set address 1
    usb_control_msg: request: 0x5, requesttype: 0x0
    value 0x1 index 0x0 length 0x0
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x100 index 0x0 length 0x12
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x200 index 0x0 length 0x9
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x200 index 0x0 length 0x19
    usb_control_msg: status = success?
    get_conf_no 0 Result 25, wLength 25
    if 0, ep 0
    ##EP epmaxpacketin[1] = 2
    set configuration 1
    usb_control_msg: request: 0x9, requesttype: 0x0
    value 0x1 index 0x0 length 0x0
    usb_control_msg: status = success?
    new device strings: Mfr=0, Product=1, SerialNumber=0
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x300 index 0x0 length 0xFF
    usb_control_msg: status = success?
    USB device number 1 default language ID 0x409
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x301 index 0x409 length 0xFF
    usb_control_msg: status = success?
    Manufacturer 
    Product      OHCI Root Hub
    SerialNumber 
    Device is a hub?
    usb_control_msg: request: 0x6, requesttype: 0xA0
    value 0x2900 index 0x0 length 0x4
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0xA0
    value 0x2900 index 0x0 length 0x9
    usb_control_msg: status = success?
    usb_control_msg: request: 0x0, requesttype: 0xA0
    value 0x0 index 0x0 length 0x4
    usb_control_msg: status = success?
    usb_control_msg: request: 0x1, requesttype: 0x23
    value 0x8 index 0x1 length 0x0
    usb_control_msg: status = success?
    usb_control_msg: request: 0x0, requesttype: 0xA3
    value 0x0 index 0x1 length 0x4
    usb_control_msg: status = success?
    usb_control_msg: request: 0x3, requesttype: 0x23
    value 0x8 index 0x1 length 0x0
    usb_control_msg: status = success?
    usb_control_msg: request: 0x0, requesttype: 0xA3
    value 0x0 index 0x1 length 0x4
    usb_control_msg: status = success?
    usb_control_msg: request: 0x0, requesttype: 0xA3
    value 0x0 index 0x1 length 0x4
    usb_control_msg: status = success?
    usb_control_msg: request: 0x1, requesttype: 0x23
    value 0x10 index 0x1 length 0x0
    usb_control_msg: status = success?
    usb_control_msg: request: 0x3, requesttype: 0x23
    value 0x4 index 0x1 length 0x0
    usb_control_msg: status = success?
    usb_control_msg: request: 0x0, requesttype: 0xA3
    value 0x0 index 0x1 length 0x4
    usb_control_msg: status = success?
    usb_control_msg: request: 0x1, requesttype: 0x23
    value 0x14 index 0x1 length 0x0
    usb_control_msg: status = success?
    New Device 1
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x100 index 0x0 length 0x8
    usb_control_msg: status = success?
    
     INSIDE USB INIT 
    
     INSIDE USB INIT: Device responded.
    set address 2
    usb_control_msg: request: 0x5, requesttype: 0x0
    value 0x2 index 0x0 length 0x0
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x100 index 0x0 length 0x12
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x200 index 0x0 length 0x9
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x200 index 0x0 length 0x20
    usb_control_msg: status = success?
    get_conf_no 0 Result 32, wLength 32
    if 0, ep 0
    if 0, ep 1
    ##EP epmaxpacketout[1] = 64
    ##EP epmaxpacketin[2] = 64
    set configuration 1
    usb_control_msg: request: 0x9, requesttype: 0x0
    value 0x1 index 0x0 length 0x0
    usb_control_msg: status = success?
    new device strings: Mfr=1, Product=2, SerialNumber=3
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x300 index 0x0 length 0xFF
    usb_control_msg: status = success?
    USB device number 2 default language ID 0x409
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x301 index 0x409 length 0xFF
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x302 index 0x409 length 0xFF
    usb_control_msg: status = success?
    usb_control_msg: request: 0x6, requesttype: 0x80
    value 0x303 index 0x409 length 0xFF
    usb_control_msg: status = success?
    Manufacturer Lexar
    Product      USB Flash Drive
    SerialNumber AA41ALE69HUTGYN22M
    Device is a hub?
    2 USB Device(s) found
    scan end
           Scanning bus for storage devices... 
    
    =================================================
    1: Hub,  USB Revision 1.10
     -  OHCI Root Hub 
     - Class: Hub
     - PacketSize: 8  Configurations: 1
     - Vendor: 0x0000  Product 0x0000 Version 0.0
    
    =================================================
    2: Mass Storage,  USB Revision 2.10
     - Lexar USB Flash Drive AA41ALE69HUTGYN22M
     - Class: (from Interface) Mass Storage
     - PacketSize: 64  Configurations: 1
     - Vendor: 0x05dc  Product 0xa83a Version 17.0
    Testing BULK mode...Identifying a storage device...*
    USB_STORAGE: 1 Storage Device(s) found
    
    
    ***************************************
    * [!] This will take several minutes  *
    * please do not power off your Omega2 *
    ***************************************
    
    
    *
    *
    Reading file "omega2.bin"
    *
    ****************************************************************
    ****************************************************************
    ******
    **********************************************************************************************************************************************************************************************************************************************
    *
    FAT: 7078055 Bytes read
    .................................................................................................
    ...........
    ............................................................................................................
    .
    .
    Done!
    

    And here's the Serial Terminal output when the Omega2+ reboots afterward:

       ____       _             ____
      / __ \___  (_)__  ___    / __ \__ _  ___ ___ ____ _
     / /_/ / _ \/ / _ \/ _ \  / /_/ /  ' \/ -_) _ `/ _ `/
     \____/_//_/_/\___/_//_/  \____/_/_/_/\__/\_, /\_,_/
     W H A T  W I L L  Y O U  I N V E N T ? /___/"
    
    Board: Onion Omega2 APSoC DRAM:  128 MB
    relocate_code Pointer at: 87f60000
    ******************************
    Software System Reset Occurred
    ******************************
    flash manufacture id: c2, device id 20 19
    find flash: MX25L25635E
    *** Warning - bad CRC, using default environment
    
    ============================================ 
    Onion Omega2 UBoot Version: 4.3.0.3
    -------------------------------------------- 
    ASIC 7628_MP (Port5<->None)
    DRAM component: 1024 Mbits DDR, width 16
    DRAM bus: 16 bit
    Total memory: 128 MBytes
    Flash component: SPI Flash
    Date:Oct 18 2016  Time:17:29:05
    ============================================ 
    icache: sets:512, ways:4, linesz:32 ,total:65536
    dcache: sets:256, ways:4, linesz:32 ,total:32768 
    CPU freq = 575 MHZ
    Estimated memory size = 128 Mbytes
    Resetting MT7628 PHY.
    Initializing MT7688 GPIO system.
    
    
    **************************************
    * Hold Reset button for more options *
    **************************************
    
    
    
    Boot Linux from Flash NO RESET PRESSED.
    ## Booting image at bc050000 ...
       Image Name:   MIPS LEDE Linux-4.4.40
       Image Type:   MIPS Linux Kernel Image (lzma compressed)
       Data Size:    1306508 Bytes =  1.2 MB
       Load Address: 80000000
       Entry Point:  80000000
       Verifying Checksum ... Bad Data CRC
    

    So the Omega2+ is stuck in U-Boot. I can upload the firmware again, and I did. I even downloaded the same firmware file again.

    PS: I'd be curious to look into the U-Boot source code to see what it's doing to reach to its BAD DATA CRC conclusion.


    EDIT 11h50: I originally mentioned omega2p-v0.1.5-b135.bin when I meant omega2p-v0.1.8-b145.bin. Thanks WereCatf!



  • @fossette What I am wondering is, why are you flashing such an old firmware? The bug more than likely emanates from there and it would behoove you to try a newer one.



  • @WereCatf OMG! Good catch! Sorry about that! This one is a copy/paste mistake. I'll edit my post. The firmware that I downloaded is indeed the latest made on Friday the 13th...
    omega2p-v0.1.8-b145.bin is the only file that I have.



  • :triumph:

    I was able to flash today's firmware, build 147, using U-Boot, and it worked. No Bad Data CRC error using omega2p-v0.1.8-b147.bin.
    Thanks Team Onion! :muscle:



Looks like your connection to Onion Community was lost, please wait while we try to reconnect.