# Gateway Modules

Acrome's **Gateway Modules** are communication bridges designed to enable seamless interaction between user devices (such as PCs or microcontrollers) and Acrome’s **Smart Motion Devices (SMDs)**. These modules act as **protocol translators**, converting signals from USB or UART interfaces into **RS-485**, the robust and noise-resistant protocol used by all SMDs.

Thanks to these gateways, users can develop and control motion systems using a variety of platforms—from full-featured PCs to simple Arduino boards—without dealing with complex wiring or low-level communication handling.

Acrome provides multiple gateway solutions, each tailored to different user needs and hardware environments.

## [USB Gateway Module](https://docs.acrome.net/electronics/gateway-modules/usb-gateway-module)

The USB Gateway Module allows **computers (Windows/macOS/Linux)** to connect directly to SMDs via a **USB-to-RS-485** interface. It is the most commonly used gateway for programming and debugging motion applications using platforms like **Python** or **SMD Blockly**.

## [Arduino Gateway Module](#arduino-gateway-module)

The Arduino Gateway Module is designed to enable **Arduino-compatible microcontrollers** to interface with SMDs using **UART (TX/RX) communication**. It converts UART signals to RS-485, allowing open-source Arduino platforms to control Acrome motion modules in real time.

## Why Use Gateway Modules?

* **Protocol Conversion**: Automatically convert USB or UART to RS-485.
* **Modular Integration**: Easily connect and control multiple SMDs through a single gateway.
* **Cross-Platform**: Compatible with PCs, embedded systems, and microcontrollers.
* **Plug & Play**: RJ-11 connectors for quick and error-free hardware setup.
* **Reliable Communication**: RS-485 ensures stable data transfer even in noisy environments.

## Use Cases

| Platform            | Gateway Module         | Application Example                                                      |
| ------------------- | ---------------------- | ------------------------------------------------------------------------ |
| Windows/macOS/Linux | USB Gateway Module     | Programming DC motors and reading distance sensors via Python or Blockly |
| Raspberry Pi        | USB Gateway Module     | Controlling RGB LED modules or reacting to button/joystick inputs        |
| Arduino             | Arduino Gateway Module | Creating interactive robot demos using ultrasonic sensors and LEDs       |
