Wiki Home » rex » production


Last modified by Administrator on 2018/03/11 14:54
Hint: This procedure is intended only for manufacturing only and should be never applied for shipped Rex boards.


This procedure will enforce loading firmware from SPI3 port and will set unique MAC address.


Production procedure consist from following steps:

  • Short BOOT_MODE (JP2) jumper on i.MX6 Rex board
  • Connect UART port to serial terminal (115200 8n1)
  • Connect USB_OTG port to host PC utilizing microUSB-USB cable
  • Power on i.MX6 Rex board
  • Execute Manufacturing toolkit at host PC
  • Press Start button (The  i.MX6 Rex board will boot firmware loaded over USB)
  • Wait until firmware (u-boot) is booted (serial terminal)
  • Burn efuses over serial terminal
  • Flash bootloader over TFTP
  • Remove BOOT_MODE jumper
  • Power off i.MX6 Rex board


  • microUSB-USB cable
  • UART cable
  • 12V Power supply
  • i.MX6 Rex board - Modified version (USB0 routed to USB micro connector R62, R65 assembled)
  • Windows PC (Mfg_tool, Serial terminal)


Production-Rex-basic.bat  # Production module i.mx6d  512MB
Production-Rex-pro.bat    # Production module i.mx6q  2GB
Production-Rex-ultra.bat  # Production module i.mx6qp 4GB




This operation is not reversible and should be executed carefully. The i.MX6 soc must be replaced in the case of error.

Boot From SPI3

fuse prog 0 5 0x2A000030
fuse prog 0 6 0x00000010

Boot From SATA

fuse prog 0 5 0x00001020
fuse prog 0 6 0x00000010

MAC Address

For example 00:0D:15:00:D1:75

fuse prog 4 3 0x000d
fuse prog 4 2 0x1500d175

U-boot over tftp

Rex U-Boot > setenv ethaddr 00:01:02:03:04:05
Rex U-Boot > setenv ipaddr
Rex U-Boot > setenv serverip
Rex U-Boot > mw.b 0x10800000 0xFF 0x80000
Rex U-Boot > tftp 0x10800000 imx6/u-boot-imx6-rexultra.imx
Using FEC device
TFTP from server; our IP address is
Filename 'imx6/u-boot-imx6-rexultra.imx'.
Load address: 0x10800000
Loading: #######################
        2.6 MiB/s
Bytes transferred = 334848 (51c00 hex)
Rex U-Boot > if sf probe 2:2; then sf erase 0x0 0x80000;sf write 0x10800000 0x400 0x7fc00; fi
SF: Detected SST25VF032B with page size 256 Bytes, erase size 4 KiB, total 4 MiB
SF: 524288 bytes @ 0x0 Erased: OK
SF: 523264 bytes @ 0x400 Written: OK


Test procedure consist from following steps:

  • Ensure that BOOT_MODE jumper is not present
  • Plug uSD card with valid testing firmware.
  • Power on i.MX6 Rex board
  • On-module red LED must start flashing automatically (bootloader was executed and kernel is loaded)
  • Power off i.MX6 Rex board
Created by Administrator on 2016/11/21 17:49

This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 6.1 - Documentation