This guide shows you how to use HTTP commands to wirelessly control your robot driver board from a Linux or macOS computer.

The driver board includes a built-in lightweight HTTP server, allowing you to send JSON commands directly over Wi-Fi — no special drivers or tools required.


1. Download the Project

Clone the example project from GitHub:

git clone <https://github.com/EffectsMachine/robot_driver_with_esp32s3_lite.git>

cd robot_driver_with_esp32s3_lite

💡 Tip:

If Git is not installed, you can install it with:

sudo apt install git      # Ubuntu / Debian
brew install git          # macOS (Homebrew)

The repository includes several host-side control examples.

In this tutorial, we’ll focus on the HTTP example.


2. About HTTP Control

Your robot driver board runs a tiny built-in HTTP server (default port 80).

You can control it directly through your browser or by sending HTTP requests from a Python script.

Why HTTP?

Advantage Description
Cross-platform Works seamlessly on Linux, macOS, Windows, Android, and iOS.
Developer-friendly Every modern language (Python, C++, JavaScript, etc.) supports HTTP libraries.
Readable & structured Commands use standard JSON, making them easy to debug and expand.
Scalable Can evolve into HTTPS-secured or RESTful API systems for cloud or web control.

⚠️ Note:

HTTP is not designed for real-time control.

It’s ideal for ~40 commands/sec operation such as movement control, parameter updates, or data queries —

not for millisecond-level trajectory or servo synchronization.


3. How It Works

When powered on, the driver board launches an HTTP server on port 80 and connects to a Wi-Fi network in one of two modes:

1. Access Point (AP Mode)