A technology stack is a layered model of the hardware and software components that together provide a robot's functionality. Linux, Python, and reusable software libraries combine with physical components to turn user requests into movement, sensing, or interaction. section 1.3.1
A robot project can cross several stack layers:
- User interaction: a shell, web interface, keyboard, or joystick supplies movement or control requests. section 4.3 section 6.1
- Software and network layer: Linux, Python, libraries, Wi-Fi, and Ethernet carry commands between users and the robot. section 1.3.1 section 5.1
- Control layer: a Raspberry Pi communicates with a CRICKIT board, which sends signals to DC motors or other devices. section 4.3 section 3.2
- Sensing and physical layer: cameras, servo motors, wheels, and controllers provide movement, positioning, and visual input. section 8.1 section 10.1
From request to robot movement
A shell command runs on the Raspberry Pi, communicates with the CRICKIT board, and causes the DC motors to move. The same layered path can begin with a web button, keyboard input, or joystick request transmitted over Wi-Fi or Ethernet. section 4.3 section 6.1 section 7.1
Perception-driven behavior
A camera captures a live video feed while the robot travels along a controlled track. When matching QR code imagery is detected, the system stops the DC motors. section 10.1
Use the hardware-stack diagram to trace commands from the robot shell through the Raspberry Pi and CRICKIT board to the DC motor. section 4.3





