EEPROM Initialization

The Mango 802.11 design requires an EEPROM on each node which is initialized with unique data per node. The ADRV9361 FMC carrier provides an IIC EEPROM which is blank by default. This EEPROM must be initialized before the 802.11 design can be used on the node.

The EEPROM is non-volatile; this initialization process is only required once per node. You can re-run the initialization to change a node’s EEPROM contents if needed.

Requirements

You must provide valid MAC addresses and serial number before running the EEPROM initialization.

MAC Addresses

The 802.11 code requires two MAC addresses:

  • MAC Addr A: wireless address, used in all wireless Tx/Rx
  • MAC Addr B: management interface address, associated with wlan_exp IP address

You must select two MAC addresses per node. Any valid MAC addresses can be used. For example if your company has an IEEE address allocation you can use two of these.

Address requirements:

  • MAC Addr A and B must be different
  • Both addresses must be unicast and universally administered (bits [1:0] of the first byte must be 0)
  • Addresses must not be duplicated anywhere in the wired or wireless networks

The ADRV9361 module includes one MAC address assigned by the manufacturer. This address is printed on a sticker on the RF cage. We recommend using this as MAC Addr A.

You must select a valid MAC Addr B. If you have no other source of valid addresses, you can select MAC Addr B from the range 40-D8-55-04-2F-xx. This is the upper block of 256 MAC addresses assigned to Mango Communications. Mango will never assign these addresses to hardware.

Serial Number

The 802.11 code requires each node be assigned a 5-digit numerical serial number. The serial number is used for enumeration by the wlan_exp framework and is reported in all node logs.

The ADRV9361 module has a serial number printed on the bottom. Alternatively you can select serial numbers sequentially for your nodes.

Serial numbers must not be duplicated in a network.

EEPROM Init Application

We provide an EEPROM Init application as part of the MAC Software archive for the ADRV9361 hardware. Running the EEPROM Init application requires the Vivado SDK and JTAG cable.

Before running the EEPROM Init application:

  • Determine your node’s serial number, MAC Address A and MAC Address B (see above)
  • Install drivers for the ADRV9361 USB-UART transceiver (see ADRV9361 UART usage)
  • Connect the ADRV9361 USB-UART interface to your PC, open a terminal configured for 115200bps
  • Connect the JTAG cable to the ADRV9361 FMC carrier JTAG header (see ADRV9361 Hardware Setup)
  • Download and configure the latest MAC Software archive for the ADRV9361 platform from the Mango Support site (see SDK Workspace)

To run the EEPROM Init application:

  1. Power on the ADRV9361 hardware

  2. Open the SDK Workspace from the MAC Software archive

  3. Select Run ‣ Config and Run EEPROM Init

  4. Watch the UART output on the terminal:

    Mango 802.11 Reference Design - ADRV9361 EEPROM Init
    
  5. If the EEPROM is empty the UART will prompt for the serial number and MAC addresses. If the EEPROM has already been initialized its contents will be printed, then offer the option to overwrite the EEPROM data. Use the UART terminal to enter the desired EEPROM data.