# Hardware description

This page describes the hardware specifications and functionality of the expansion ports and how to use them.

## Performance specification

|                        |                                                                                                                    |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------ |
| CPU                    | <p>NXP Layerscape LS1046A<br>4 cores<br>1.6 GHz</p>                                                                |
| RAM                    | <p>8 GB<br>2100 MT/s<br>ECC support</p>                                                                            |
| Networking             | <p>2x SFP+ 10 Gb<br>3x RJ-45 1 Gb</p>                                                                              |
| Wifi                   | <p>1x M.2 Key-E port for Wifi 6.0 2x2 MU-MIMO<br>1x M.2 Key-E port for tri-radio (Wifi 5.0, Bluetooth, Thread)</p> |
| Storage                | <p>32 GB eMMC for Operating System<br>64 MB NOR flash for Bootloader</p>                                           |
| Debugging              | <p>JTAG connector<br>100+ test points throughout the PCB<br>UART USB-C port<br>Status RGB LED</p>                  |
| Required Power supply  | <p>USB-C PD 3.0<br>15V 3A (45W) or<br>20V 2A (40W)</p>                                                             |
| Connectivity           | <p>1x USB-C 3.1 port<br>5Gbps data speed<br>5V 3A output power</p>                                                 |
| Active cooling support | <p>Yes<br>2x 4-pin PWM 5V fan headers</p>                                                                          |

## Port description

![Development Kit PCB port description - TOP side](/files/jP1tzcBQkkMDIALWQb5J)

![Development Kit PCB port description - BOTTOM side](/files/aX4OqcyDSveMUbu5SXVj)

### USB PD Type-C (Power)

Use the included 65W GaN power supply. Alternatively, any USB PD 3.0 compliant PSU rated for 15V 3A (45W) or 20V 2A (40W) or more will work. If the board doesn't power up with a third-party adapter, it likely failed to negotiate sufficient power - this is indicated by the Power Fail LED diode.

### Power Fail LED

Turned ON: Insufficient external USB power supply\
Turned OFF: External power supply meets the required power needs. It is normal for the Power Fail LED to momentarily turn ON during the power up process.

### USB 3.1 Type-C (Data)

A standard USB 3.1 host port. Use it to connect a thumb drive for backups, transfer files to/from the device, or attach external storage. Data speed 5Gbps. This port is designed to power an external device with 5V, up to 3A (15W).

### UART/Console Type-C (Serial)

Your primary interface for communicating with the device, especially during initial setup. Connect this to your computer's USB 2.0 port and use a serial terminal at 115200 baud. We recommend [tio](https://github.com/tio/tio) on macOS/Linux or PuTTY on Windows.

### Reset Button

Resets the device by pulling the reset pin to ground on most chips. Note that this performs a reset, not a full power cycle. There are two reset buttons on the PCB, one located near the USB and network ports and the second one is located on the bottom side of the board near the RTC coin backup battery.

### 1 Gb RJ-45

Standard gigabit Ethernet ports, compatible with typical home networking equipment.

### 10 Gb SFP+

High-speed 10 gigabit ports for fiber or DAC connections. These should be compatible with a wide array of modules. If a particular module doesn't work, it's usually not a hardware limitation—the retimer chip is fully configurable via I2C, and our [kernel configuration is open source](https://github.com/we-are-mono/meta-mono/blob/master/meta-mono-bsp/recipes-kernel/linux/files/defconfig).

### Status LED

An onboard RGBW LED located on the top side of the board is directly controlled by the main processor. It is intended for system status indication and user defined signaling. More information about its behavior and control is provided in [Getting started](/gateway-development-kit/getting-started.md)

### Cooling Fan ports \[F\_1] & \[F\_2]

![Cooling fans block diagram](/files/uVociVEuFWBRQThvSBum)

The cooling fan driver provides two fully independent channels designed to support 4-wire, 5 V cooling fans. These channels are labeled \[F\_1] and \[F\_2]. Channel 1 (CH1) has two physical connectors, one on the top side and one on the bottom side of the PCB, both labeled \[F\_1].

{% hint style="danger" %}
**WARNING** Only one cooling fan may be connected to CH1 at a time. Connecting more than one fan to this channel may result in malfunction or permanent damage to the cooling fan driver.
{% endhint %}

![Cooling Fan CH1 \[F\_1\] & CH2 \[F\_2\] pinout - PCB top side](/files/ZXAvZRS3WFGpG97OqCoj)

![Cooling Fan CH1 \[F\_1\] pinout - PCB bottom side](/files/RftEZgYJABVZi05Vzgxi)

![Cooling Fan pinout - Wire side](/files/EvpL8Pj61Mj5pQbscAlN)

#### Connector type

| Connector type                  | Description                                  | Link                                                                                                         |
| ------------------------------- | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| PCB connector \[F\_1]           | Wurth Elektronik 653104131822, 4-pin, 1.25mm | [Datasheet](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/653104131822.pdf) |
| PCB connector \[F\_1] & \[F\_2] | Wurth Elektronik 653104124022, 4-pin, 1.25mm | [Datasheet](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/653104124022.pdf) |
| Wire connector                  | Wurth Elektronik 620004113322, 4-pin, 1.25mm | [Datasheet](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/620004113322.pdf) |

#### Pinout

*From the Gateway port's perspective*

| Pin # | Name    | Specification                                         |
| ----- | ------- | ----------------------------------------------------- |
| 1     | GND     | Power ground                                          |
| 2     | +5V VCC | Power output, 5V, 250mA max per port.                 |
| 3     | TACH    | <p>RPM feedback input<br>Sometimes marked as "FG"</p> |
| 4     | PWM     | PWM output signal                                     |

### GPIO Expansion port \[GPIO\_1]

The GPIO header can be found on the top side of the board and has 1.27mm pin pitch.

![GPIO port pinout - PCB side](/files/PNsBYZuAtjyzUmSEirx3)

#### Connector type

| Connector type  | Description                                  | Link                                                                                                        |
| --------------- | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| PCB connector   | Wurth Elektronik 62701420621, 14-pin, 1.27mm | [Datasheet](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/62701420621.pdf) |
| Cable connector | Wurth Elektronik 62701423121, 14-pin, 1.27mm | [Datasheet](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/62701423121.pdf) |

#### Pinout

A GPIO pin configured as an output pin can be set to high (1.8V) or low (0V).\
A GPIO pin configured as an input pin can be read as high (1.8V) or low (0V). This is made easier with the use of internal pull-up or pull-down resistors. This can be configured in software.

{% hint style="danger" %}
**WARNING** GPIO data pins are not protected. Do not overstress them. Doing so will damage the CPU.
{% endhint %}

*From the Gateway port's perspective*

| Pin #      | Name         | Specification                                   |
| ---------- | ------------ | ----------------------------------------------- |
| 1          | PWR OUT 1.8V | Power output, 1.8V, 100mA max. Resettable fuse. |
| 2          | PWR OUT 3.3V | Power output, 3.3V, 100mA max. Resettable fuse. |
| 3          | I2C SDA      | I2C BUS DATA. 1.8V logic level.                 |
| 5          | I2C SCL      | I2C BUS CLOCK. 1.8V logic level.                |
| 4          | GPIO\_D1     | GPIO pin #1                                     |
| 6          | GPIO\_D2     | GPIO pin #2                                     |
| 9          | GPIO\_D3     | GPIO pin #3                                     |
| 10         | GPIO\_D4     | GPIO pin #4                                     |
| 11         | GPIO\_D5     | GPIO pin #5                                     |
| 12         | GPIO\_D6     | GPIO pin #6                                     |
| 7-8, 13-14 | GND          | Ground                                          |

#### Voltage specifications

| INPUT                   |         |
| ----------------------- | ------- |
| Absolute maximum rating | 1.98 V  |
| Input high voltage      | >1.26 V |
| Input low voltage       | <0.36 V |
| Input current           | +-50 uA |

| OUTPUT              |                  |
| ------------------- | ---------------- |
| Output high voltage | 1.35 V @ -0.5 mA |
| Output low voltage  | 0.4 V @ 0.5 mA   |
| Maximum current     | +-0.5 mA         |

### M2 wireless card ports \[M2\_1] & \[M2\_2]

The Gateway includes two M.2 Key-E expansion ports that support two different categories of wireless cards:

{% hint style="danger" %}
**WARNING** The wireless expansion cards are partially tested and have not yet completed full validation. While core functionality has been verified, the design is still experimental.
{% endhint %}

| Card type  | Features                                              | Key type | Purpose                      | Port designation |
| ---------- | ----------------------------------------------------- | -------- | ---------------------------- | ---------------- |
| Tri-radio  | <p>Wireless<br>Bluetooth<br>Threads IEEE 802.15.4</p> | Key-E    | Home automation & smarthome  | \[M2\_1]         |
| Dual-radio | <p>Wireless<br>Bluetooth</p>                          | Key-E    | Main radio card for wireless | \[M2\_2]         |

#### Supported cards

{% hint style="danger" %}
**WARNING** Use of these cards is at your own risk. Performance, reliability, and long-term stability are not guaranteed, and changes may be made in future revisions.
{% endhint %}

{% hint style="danger" %}
**WARNING** It is strictly important to follow the M.2 pinout listed below when selecting and installing wireless cards. Not all M.2 Key-E cards are compatible with the Gateway, and using an unsupported card or incorrect pinout may result in malfunction or hardware damage.
{% endhint %}

| Card name                                                                                                                        | Type       | PCB port | Test status                                                                         | Recommended to use |
| -------------------------------------------------------------------------------------------------------------------------------- | ---------- | -------- | ----------------------------------------------------------------------------------- | ------------------ |
| [uBlox M2-MAYA-W271-00B](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/M2_M2-MAYA-W2.pdf)       | Tri-radio  | \[M2\_1] | <p>Basic HW & Firmware tests done.<br>Performance validation not yet performed.</p> | YES                |
| [H\&D Wireless SPB438-NTD](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/M2_SPB438-NTD.pdf)     | Tri-radio  | \[M2\_1] | No tests performed yet                                                              | ON YOUR OWN RISK   |
| [uBlox M2-JODY-W377-00B](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/M2_M2-JODY-W3.pdf)       | Dual-radio | \[M2\_2] | <p>Basic HW & Firmware tests done.<br>Performance validation not yet performed.</p> | YES                |
| [AzureWave AW-XM458MA-PUR](https://github.com/we-are-mono/docs/blob/master/gateway-development-kit/assets/M2_AW-XM458MA-PUR.pdf) | Dual-radio | \[M2\_2] | No tests performed yet                                                              | ON YOUR OWN RISK   |

#### Pinout Tri-radio card \[M2\_1]

*From the Gateway port's perspective*

| Pin #                                | Signal name                  | Description                                               |
| ------------------------------------ | ---------------------------- | --------------------------------------------------------- |
| 1, 7, 33, 39, 45, 51, 57, 63, 69, 75 | GND                          | Ground                                                    |
| 2, 4, 72, 74                         | +3V3 VCC                     | Power output, 3.3V                                        |
| 18                                   | VIO\_CFG                     | Pulled to ground via 0R resistor                          |
| 9                                    | SDIO\_CLK O (1V8L)           | SDIO bus used for Wifi. Wifi card CLK input signal        |
| 11                                   | SDIO\_CMD I/O (1V8L)         | SDIO bus used for Wifi. Wifi card CMD input/output signal |
| 13                                   | SDIO\_D0 I/O (1V8L)          | SDIO bus used for Wifi. Wifi card D0 input/output signal  |
| 15                                   | SDIO\_D1 I/O (1V8L)          | SDIO bus used for Wifi. Wifi card D1 input/output signal  |
| 17                                   | SDIO\_D2 I/O (1V8L)          | SDIO bus used for Wifi. Wifi card D2 input/output signal  |
| 19                                   | SDIO\_D3 I/O (1V8L)          | SDIO bus used for Wifi. Wifi card D3 input/output signal  |
| 22                                   | UART\_RXD I (1V8L)           | UART bus used for BT. Wifi card TXD output signal         |
| 32                                   | UART\_TXD O (1V8L)           | UART bus used for BT. Wifi card RXD output signal         |
| 38                                   | SPI MOSI O (1V8L)            | SPI bus used for 802.15.4. Wifi card MOSI input signal    |
| 40                                   | SPI MISO I (1V8L)            | SPI bus used for 802.15.4. Wifi card MISO output signal   |
| 42                                   | SPI CLK O (1V8L)             | SPI bus used for 802.15.4. Wifi card CLK input signal     |
| 62                                   | SPI\_INT I (1V8L)            | SPI bus used for 802.15.4. Wifi card INT output signal    |
| 64                                   | SPI\_FRM O (1V8L)            | SPI bus used for 802.15.4. Wifi card FMR input signal     |
| 58                                   | I2C\_DATA I/O (1V8L)         | I2C bus. Wifi card DATA input/output signal               |
| 60                                   | I2C\_CLK O (1V8L)            | I2C bus. Wifi card CLK input signal                       |
| 23                                   | M2\_3R\_RESET O (1V8L)       | Wifi card reset signal                                    |
| 54                                   | M2\_3R\_RESET O (Open Drain) | Wifi card reset signal                                    |
| 56                                   | M2\_3R\_nENABLE O (3V3L)     | Wifi card power-down signal                               |
| 24-31                                | M.2 Key E connector notch    | Mechanical cutout in the M.2 card                         |
| Other pins                           | N.C.                         | Not connected                                             |

#### Pinout Dual-radio card \[M2\_2]

*From the Gateway port's perspective*

| Pin #                                | Signal name               | Description                                            |
| ------------------------------------ | ------------------------- | ------------------------------------------------------ |
| 1, 7, 33, 39, 45, 51, 57, 63, 69, 75 | GND                       | Ground                                                 |
| 2, 4, 72, 74                         | +3V3 VCC                  | Power output, 3.3V                                     |
| 18                                   | VIO\_CFG                  | Pulled to ground via 0R resistor                       |
| 22                                   | UART\_RXD I (1V8L)        | UART bus used for BT. Wifi card TXD output signal      |
| 32                                   | UART\_TXD O (1V8L)        | UART bus used for BT. Wifi card RXD input signal       |
| 34                                   | UART\_CTS I (1V8L)        | UART bus used for BT. Wifi card RTS output signal      |
| 36                                   | UART\_RTS O (1V8L)        | UART bus used for BT. Wifi card CTS input signal       |
| 35                                   | PCIe TX0+ O (1V8L)        | PCIe bus usef for Wifi. Wifi card RX0+ input signal    |
| 37                                   | PCIe TX0- O (1V8L)        | PCIe bus usef for Wifi. Wifi card RX0- input signal    |
| 41                                   | PCIe RX0+ I (1V8L)        | PCIe bus usef for Wifi. Wifi card TX0+ output signal   |
| 43                                   | PCIe RX0- I (1V8L)        | PCIe bus usef for Wifi. Wifi card TX0- output signal   |
| 47                                   | PCIe REFCLK+ O (1V8L)     | PCIe bus usef for Wifi. Wifi card REFCLK+ input signal |
| 49                                   | PCIe REFCLK- O (1V8L)     | PCIe bus usef for Wifi. Wifi card REFCLK- input signal |
| 52                                   | M2\_2R\_RESET O (3V3L)    | Wifi card reset signal                                 |
| 54                                   | M2\_2R\_RESET O (3V3L)    | Wifi card reset signal                                 |
| 56                                   | M2\_2R\_ENABLE O (3V3L)   | Wifi card power-down signal                            |
| 24-31                                | M.2 Key E connector notch | Mechanical cutout in the M.2 card                      |
| Other pins                           | N.C.                      | Not connected                                          |

#### Wireless card installation

TBD

### RTC backup battery

The Real-Time Clock (RTC) circuit uses a coin cell battery to maintain time and date information when the device is powered off or disconnected from the main power source.

If the battery is removed or fully discharged, the RTC will lose its stored time and date, and the clock will need to be reset after the next power-up.

| Battery spec               |                                         |
| -------------------------- | --------------------------------------- |
| Model                      | CR2032                                  |
| Size                       | <p>20mm diameter<br>3.2mm thickness</p> |
| Nominal voltage / capacity | 3V / >150mAh                            |
| Rechargable                | No                                      |

#### Replacing the battery

{% hint style="danger" %}
**WARNING** Do not use force to remove the battery from its holder.
{% endhint %}

![RTC battery remove procedure](/files/pVIqPm2AEaWqhvKw4uGe)

To replace the battery, the PCB must first be removed from the enclosure. Follow the disassembly instructions provided below.

Once the PCB is accessible, use a flathead screwdriver to carefully lever the battery out of the holder, as shown in the image.

## Disassembly instructions

Since the expansion features are not accessible with the enclosure installed, it is mandatory to remove the printed circuit board (PCB) from the enclosure.

Before disassembling the device, ensure that proper ESD safety precautions are followed to prevent damage to the electronics.

### PCB removal guide

#### Required tools

Torx T10 screwdriver

![Development Kit disassembly instructions - cover](/files/6xeu0KIMXky1iuUGFpPC)

![Development Kit disassembly instructions - PCB](/files/Umlkcl5dJfkn9fH0gxQo)

#### Steps

* Power off the device and disconnect all cables.
* Place the device on a clean, flat, and ESD-safe surface.
* Using a Torx T10 screwdriver, remove the four screws securing the top cover of the enclosure.
* Carefully lift and remove the top cover.
* Using the same Torx T10 screwdriver, remove the five screws that secure the PCB to the enclosure.
* Gently lift the PCB out of the enclosure, holding it by the edges only.

#### ESD safety notes

* Work on an ESD-safe surface whenever possible.
* Wear a grounded ESD wrist strap, or regularly touch a grounded metal object to discharge static electricity.
* Avoid touching components, connectors, or exposed contacts on the PCB.
* Store the PCB in an ESD-safe bag when it is not installed in the enclosure.

## PCB mechanical properties

![Development Kit PCB dimensions - mm \[in\]](/files/44BcVnd5FWgIC6OZgIzC)

PCB thickness is 1.6mm \[63 mil]

## Development Kit enclosure

Here you can download the 3D step models of the Development Kit enclosure (top and bottom part).

{% file src="/files/2iM3HftFUkcEEavRYGzg" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mono.si/gateway-development-kit/hardware-description.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
