<aside> ⚠️

For customers who have an unflashed Rugged SOM or want to reflash a Rugged SOM that has BloxOs installed. Newly purchased Rugged SOMs already have OpenWRT installed.

</aside>

Install using mfgtool on eMMC

Use this option if you have a Rugged SOM with eMMC.

  1. You must edit the boot configuration to not use internal boot.

For eMMC variant, toggle all switches to be OFF except

  1. Disconnect the SwitchBlox Rugged from J3 if connected.

  2. Connect your USB-OTG cable breakout board to the J6 connector. Because the USB ID pin is not exposed on our board, you will need to pull the ID pin high (3.3V) on your USB-OTG cable. An easy way to do this is to use the 3.3V pin on J2 UART interface.

    1. Please ensure that you match the pins on J6 to the correct pins on your USB breakout board, including 5V and GND. N → D- pin, P → D+ pin for data.

    2. Wiring diagram shown below

      USB-OTG represents the USB interface of the host machine used to program the board.

      USB-OTG represents the USB interface of the host machine used to program the board.

    3. Example wiring

    Shows how you can use 2x Rugged SOM 4 pin Picoblade cables with a micro USB breakout board to creating the cable you can use for flashing

    Shows how you can use 2x Rugged SOM 4 pin Picoblade cables with a micro USB breakout board to creating the cable you can use for flashing

    d. Usage on Rugged SOM

    4 pin picoblade connector for USB-OTG on  on Rugged SOM with USB ID pin pulled high by connecting to 3V3 on  UART interface. Power cable connected on  shown in top left.

    4 pin picoblade connector for USB-OTG on J6 on Rugged SOM with USB ID pin pulled high by connecting to 3V3 on J2 UART interface. Power cable connected on J1 shown in top left.

  3. To confirm your USB controller sees the CPU in recovery mode, enumerate your USB devices (on Linux run lsusb ) and check for this entry

    Bus 001 Device 024: ID 15a2:0080 Freescale Semiconductor, Inc. i.MX 6ULL SystemOnChip in RecoveryMode
    

    <aside> 💡 There are issues with some USB ports on some host machines. Try different cables and USB device hubs if initially you cannot see the device.

    </aside>

  4. Download the latest OpenWRT firmware and bootloader release page here. Please choose the most up-to-date release unless otherwise stated.

    1. Named openwrt-24.10-snapshot-r28578-fc1d7db6d61-imx-imx6ull-botblox_ruggedsom-ext4-emmc.img for MSDOS partitioned image including boot and root partitions to be flashed to eMMC.
    2. Named u-boot.imx for the bootloader binary.
  5. Clone the mfgtool repo locally and follow the instructions for compiling on your host machine’s OS.

    1. Repo link
    2. After compiling you’ll have an executable uuu in uuu directory.
    3. Please checks out this tag with commit hash 1afbe343d3599ad0e075055c5931876661af77e8
  6. Confirm that the Rugged SOM device comes up when enumerating USB devices

cd uuu/
./uuu -lsusb
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.179-12-g1afbe34

Connected Known USB Devices
        Path     Chip    Pro     Vid     Pid     BcdVersion      Serial_no
        ====================================================================
        1:1      MX6ULL  SDP:    0x15A2 0x0080   0x0001  
  1. Use the following to flash the bootloader, boot and root partitions.
./uuu -b emmc_all botblox_ruggedsom-emmc-bootloader.bin botblox_ruggedsom-emmc_kernel-rootfs.bin
  1. Complete. You can now use the board.