T&C Technology +91 98373 30108
Industrial IoT

Distributed GPIO Network

Up to 2046 Pico 2W Nodes · WiFi UDP/TCP · Centralised Python GUI · DHCP Server · GPIO / ADC / PWM / I2C / SPI

Overview

The Distributed GPIO Network is a scalable industrial IoT system comprising a central control PC running a Python Control Centre application, and up to 2046 Wi-Fi-enabled Raspberry Pi Pico 2W microcontroller nodes. Each node exposes its GPIO, ADC, PWM, I2C, and SPI peripherals to the Control Centre over UDP/TCP on a local IP network.

The Control Centre acts as a DHCP server, assigning persistent IP addresses to each node based on MAC address — so nodes reconnect to the same IP after power cycling. The network uses a /21 CIDR block (e.g., 10.10.0.0/21) to support the full 2046-node count. The touch-screen-friendly Python GUI monitors all nodes, displays real-time I/O states, and allows remote control from a single screen.

The dual-core RP2350 firmware dedicates Core 0 to WiFi communication, command parsing, and TCP/UDP server operations; Core 1 handles real-time GPIO sampling, ADC acquisition, and PWM generation. Inter-core communication uses spin-lock protected volatile flags, preventing network latency from affecting peripheral timing.

Key Features

  • Up to 2046 Pico 2W nodes in a single /21 subnet
  • Persistent DHCP — nodes always get the same IP (MAC-based assignment)
  • Centralised Python GUI — touch-screen friendly, all nodes in one view
  • Digital GPIO — input (with interrupt) or output, configurable pull-up/down
  • ADC inputs — temperature, light, pressure, any 0–3.3V analog sensor
  • PWM outputs — motor speed, LED dimming, valve control
  • I2C and SPI buses — connect sensors, displays, DACs per node
  • Dual-core firmware — network latency never affects I/O timing
  • Python automation engine — script complex multi-node behaviours
🌐

Specifications

Node HardwareRaspberry Pi Pico 2W (RP2350 + CYW43439)
Max Nodes2046 per network (/21 CIDR block)
Network ProtocolUDP + TCP over 802.11b/g/n WiFi
IP AssignmentPersistent DHCP (MAC → IP mapping, infinite lease)
Control CentrePython 3.9+ application, Windows/Linux/macOS
GUI FrameworkTkinter or Kivy — touch-screen compatible
Digital GPIOInput (with interrupt) or Output, pull-up/down configurable
ADC Inputs3 channels (GPIO26, 27, 28), 12-bit, configurable sample rate
PWM OutputsConfigurable frequency and duty cycle
I2CConfigurable SDA/SCL pins, multiple devices per bus
SPIConfigurable MOSI/MISO/SCK/CS pins
Dual-CoreCore 0: WiFi/network; Core 1: real-time I/O
Auto-ReconnectYes — nodes reconnect automatically on WiFi loss
ScriptingPython automation engine on Control Centre

Scale from 1 Node to 2046

Start with a single Pico 2W, grow to a plant-wide IoT network without changing software. Contact us for system design and integration.