# UPAN Gen 4 > Two-axis stepper motion controller (ESP32-S3, DIN rail) with a local REST/WebSocket API and an MCP adapter (upan-mcp). The device checks every move against limits stored in its motion core. Board UPAN Core v2, firmware in development. ## Docs - [Documentation](https://upan.tools/docs/index.md): Documentation for UPAN Gen 4 — hardware, configuration, motion programs, the USB and network interfaces, and AI agent integration. - [Quick start](https://upan.tools/docs/quickstart.md): Unbox UPAN Core, wire the e-stop, motors and power, connect it to Wi-Fi, install a package from upan.tools and make the first move — or drive it from a PC with upan-cli. - [Wiring](https://upan.tools/docs/wiring.md): Every terminal of UPAN Core v2 with pin order, signal levels and wiring examples — motors, drivers in the sockets, external drivers, inputs, outputs, e-stop, RS485, Qwiic and the UPAN Axis module. - [Power](https://upan.tools/docs/power.md): Supply range of UPAN Core, why 48 V is not supported, recommended Mean Well power supplies and sizing per axis, power from USB, and mains wiring and grounding. - [Safety](https://upan.tools/docs/safety.md): What the e-stop input of UPAN Core does and does not do, the limits the motion core enforces, homing rules, what a package can and cannot change, and what to check before the first power-on. - [Drawings and STEP](https://upan.tools/docs/drawings.md): Status of the dimensional drawings, the enclosure STEP model and the board outline for UPAN Core. - [Configuration and limits](https://upan.tools/docs/configuration.md): Machine limits (HardConfig) and working limits (SoftConfig), base units, homing, limit switches and how the configuration is stored. - [Programs](https://upan.tools/docs/programs.md): Write motion programs in JSON, load them with upan-cli, and understand how the device checks them before the first step. - [upan-mcp](https://upan.tools/docs/upan-mcp.md): The open-source MCP server that lets an AI agent on your PC read and control UPAN locally — status, planned install command and what an agent can and cannot do. - [upan.js](https://upan.tools/docs/upan-js.md): The planned browser library served by the device at /lib/upan.js for apps on the device — connection, login, units and an API sketch. - [Network API](https://upan.tools/docs/network-api.md): Draft of the device's local REST and WebSocket API — discovery, login, control ownership, JSON messages and units. - [Web apps on the device](https://upan.tools/docs/web-apps.md): Single-file web apps stored on UPAN and served from the device itself — layout, manifest, security rules and how to install them. - [USB protocol](https://upan.tools/docs/usb-protocol.md): Binary protocol of the motion MCU over USB-C and UART — framing, CRC, request and response, events, telemetry and the simulator. - [Troubleshooting](https://upan.tools/docs/troubleshooting.md): Known symptoms on UPAN Core with their likely cause and what to do, including the error codes the device returns. - [API reference](https://upan.tools/docs/api.md): every message, field and error code, generated from upan.proto ## Optional - [All docs in one file](https://upan.tools/llms-full.txt)