Developer Hub
Everything you need to build on the Unforce Make platform.
MQTT · CLI
bash# Subscribe to every block announcement
mosquitto_sub -h host.local -t "blocks/+/announce"
# Control the LED light block
mosquitto_pub -h host.local \
-t "blocks/light-001/command" \
-m '{"action":"set_color","r":255,"g":94,"b":135}'Agent · Python
pythonimport asyncio, json
from paho.mqtt import client as mqtt
async def main():
c = mqtt.Client()
c.connect("host.local", 1883)
c.subscribe("blocks/+/data")
def on_msg(_, __, msg):
payload = json.loads(msg.payload)
print(msg.topic, payload)
c.on_message = on_msg
c.loop_forever()
asyncio.run(main())MQTT topic spec
blocks/+/announceReports id / type / capability on boot
blocks/+/statusonline · offline (auto LWT)
blocks/+/dataSensor telemetry (temp, IMU, HR…)
blocks/{id}/configHost → block work config
blocks/{id}/commandAgent/Host → actuator commands
Host services
MQTT Broker:1883
Mosquitto · QoS 1 · LWT
UDP Server:5600
Vision block JPEG frames
WebSocket:8765
Voice block duplex audio
Host API:3000
Agent & frontend gateway
Hardware resources
3D Models (.STEP)
Enclosure & dock CAD files
Firmware binaries
Pre-built ESP32-S3 / C3 images
Schematics
Circuit diagrams & BOM