42 Wi WiFi

Element 42 of 86 — The Periodic Table of Robotics

WiFi

Signals & Comms

Put your robot on the network and you unlock remote control, live sensor data, OTA updates, and more — all over a connection you already own.

MicroPython for Pico W

Give your robot an IP address and a whole new world of possibilities opens up. WiFi turns a standalone machine into something you can poke from your phone, update without a USB cable, or have reporting data to a dashboard in real time.

What is WiFi?

WiFi is a wireless networking standard based on the IEEE 802.11 family of protocols. It lets devices join a local network (or the internet) over a radio link — typically at 2.4 GHz or 5 GHz.

For robots, the numbers that matter most are:

  • 2.4 GHz — longer range, better wall penetration, used by almost all microcontroller boards
  • Typical indoor range — 20–50 metres from a router
  • SSID / password — your network credentials (keep them in a config file, not hardcoded in public repos)

The boards you will most likely use are the Raspberry Pi Pico W, the ESP32, and the full Raspberry Pi — all well supported in MicroPython and Python.

On the network

Once your robot joins WiFi it gets an IP address, just like every other device on the network. Your phone or laptop reaches it through the router — no cable, and you can drive it from any browser on the same network:

flowchart LR
    PHONE["Phone /<br/>laptop browser"] -->|"WiFi"| ROUTER["Router<br/>(your network)"]
    ROUTER -->|"WiFi"| ROBOT["Robot Pico W<br/>192.168.x.x<br/>(web server)"]
    ROBOT -->|"live sensor data"| ROUTER
    ROUTER --> PHONE

The robot runs a tiny web server, so the “remote control” is just a web page it serves itself. Open its IP address in a browser and the buttons on the page send commands straight back to the robot.

Why robot builders care

WiFi removes the tether. Instead of crouching next to your robot with a USB cable to upload new code or read sensor values, you can:

  • Control it remotely — serve a tiny web page from the robot itself and use buttons in your browser to drive it
  • Stream sensor data — post temperature, distance, or IMU readings to a server every few seconds
  • Update code over the air (OTA) — push a new firmware file to the robot without touching it
  • Coordinate multiple robots — have them publish and subscribe to messages over MQTT so they share information

The trade-off is power: a WiFi radio draws 80–200 mA during active transmission, which matters a lot if your robot runs on a small battery. Connect, send a burst of data, then sleep the radio — a common pattern for battery-powered builds.

Get started

The quickest way in is the Raspberry Pi Pico W and MicroPython. The network and socket modules give you everything you need to connect to your router and open a basic HTTP server in about 20 lines of code.

A great early project is a WiFi-controlled robot arm. Kevin’s Simple Robot Arm post shows exactly this: a Pimoroni Inventor 2040 W serving a web interface that lets you drive servos from any browser on your network — no app install needed.

For a wheeled robot, BurgerBot is built around the Pico W and uses WiFi for remote control. It is one of the friendliest first WiFi robot builds on the site.

To understand the WiFi setup code itself, the How to setup a Phew! Access Point post walks through creating a captive portal with Phew! — a lightweight MicroPython web framework, ideal for hosting a robot control page without an internet connection.

Once you have basic connectivity working, the natural next step is MQTT — a lightweight messaging protocol that lets multiple robots and devices talk to each other with very little code.

Reacts well with

More Signals & Comms

Learn more on KevsRobots

Courses
Projects to build
Articles to read

Share this element

This page is awesome? Show some love!

Did you find this content useful?


If you found this high quality content useful please consider supporting my work, so I can continue to create more content for you.

I give away all my content for free: Weekly video content on YouTube, 3d Printable designs, Programs and Code, Reviews and Project write-ups, but 98% of visitors don't give back, they simply read/watch, download and go. If everyone who reads or watches my content, who likes it, helps fund it just a little, my future would be more secure for years to come. A price of a cup of coffee is all I ask.

There are a couple of ways you can support my work financially:


If you can't afford to provide any financial support, you can also help me grow my influence by doing the following:


Thank you again for your support and helping me grow my hobby into a business I can sustain.
- Kevin McAleer

What are you looking for?
Watch Videos Get Ideas Learn Something Read a Review Read the Blog Search
... Z Z z