An educational robot and a learning platform built as one system, so children can meet robotics, AI, and programming through something that looks back at them.
AICOS pairs an embedded robot — Raspberry Pi and Arduino, camera, microphone, speakers, LED face, and a touchscreen — with a distributed, event-driven platform running a conversational assistant, a recommendation engine, and real-time services. A no-code block editor sits between the two, so a child can program movement, expression, and dialogue without writing a line of code.
3rdTSYP 11 · PES ChallengeIEEE Tunisia Section Congress · 2023
2023 — 2024Build period
2 boardsPi + Arduino
8 servicesEvent-driven platform
Raspberry PiArduinoOpenCVKafka / MQTTEdge AIHRI
ROBOT_01 · PROTOTYPEAICOS
Laser-cut frame, pixel face, servo neck — every part meant to be opened, understood, and changed.
Robot architecture
How the robot is built
HEAD / CHEST / TORSO / BASE
DECK 01
Head — perception & expression
A pixel face carries every emotion the robot needs: eyes and mouth are drawn on an LED matrix behind a smoked diffuser, so expressions stay readable across a noisy classroom. Camera apertures sit above and below the panel, and the whole head turns on a servo neck, so attention is something a child can actually see.
LED matrix face
Camera module
Microphone
Speakers
Servo pan neck
DECK 02
Chest — presence & touch
An 8×8 RGB matrix beats on the chest as a heartbeat — idle, listening, thinking, and speaking each get their own pattern, so the robot never looks frozen while it works. The touchscreen beside it carries the block editor and anything easier tapped than spoken.
8×8 RGB matrix
Touchscreen
Status animations
DECK 03
Torso — the split brain
Two processors divide the work by what each is good at. A Raspberry Pi runs Linux and everything that thinks: speech, vision, behavior scripts, and the link to the platform. An Arduino owns everything that must never stutter — motor timing, LED refresh, sensor polling — and the two talk over a serial link.
Raspberry Pi · Linux
Arduino · real-time MCU
UART link
I²C bus
GPIO
DECK 04
Base — motion & power
A laser-cut MDF chassis, slot-and-tab assembled, keeps the robot repairable by the people who built it: every panel comes off with a screwdriver. Motor drivers sit under the deck with the battery pack, whose voltage is polled continuously so a low charge dims the face instead of cutting a session mid-sentence.
ArduinoMotor timing · LED matrices · servo neck · battery sense
MQTT · REST
03 · Platform
API GatewayKafka event busAssistantRecommenderTracker
Speak
Microphone
Speech-to-Text
Assistant
Text-to-Speech
Speakers
A child talks; the robot answers out loud. Transcription and synthesis run on the robot wherever they can, so an ordinary question never has to leave the room.
See
Camera
OpenCV
Perception
Face panel
Vision drives attention rather than surveillance: the robot notices someone is there, turns toward them, and reacts on the LED face. Frames are processed locally and not stored.
Program
Block editor
Behavior script
MQTT
Arduino
Motors & LEDs
Blocks snapped together in the editor compile into a behavior script, published over MQTT, and executed by the microcontroller — a child sees their program move the robot within seconds.
The platform is where the robot stops being a toy and becomes a curriculum. Services are split by responsibility and speak whichever protocol fits the job — gRPC where latency matters, GraphQL where the client shapes the query, REST at the edges, and Kafka whenever one service’s result is another service’s trigger.
ServiceRoleProtocolPort
API GatewayNode.js · ApolloGraphQL / REST4000
AuthJWT sessionsgRPC50051
ChatbotConversational assistantREST4001
CourseLearning contentGraphQL4002
QuizAssessment + eventsgRPC / Kafka50052
RecommenderTensorFlow.jsKafka consumer4003
NotificationPush / in-appKafka consumer4004
TrackerEngagement metricsREST4005
The public repository covers the platform side only — the robot firmware and the embedded stack are not part of it.
/01
Learn by making
No-code programming
A Scratch-inspired block editor turns movement, animation, expression, and dialogue into pieces children can snap together. Robotics becomes something they author, not something they watch.
/02
Privacy by design
Local-first processing
Speech and vision run on the robot itself. Keeping perception at the edge means a classroom can use the robot without a child’s voice or face becoming someone else’s dataset.
/03
Interaction that reads
Human–Robot Interaction
Face, heartbeat, head turn, and voice are designed as one signal set, so the robot’s state is legible at a glance — attention, thinking, and answering never have to be explained.
Recognition
On stage at TSYP 11
IEEE TUNISIA SECTION · 2023
3rd place · PES ChallengeAICOS was presented at the 11th IEEE Tunisian Students and Young Professionals Congress, where the project took third place in the Power & Energy Society challenge.
Embedded
PythonC / C++Raspberry PiArduinoGPIOI²CUART
Intelligence
OpenCVComputer VisionSpeech-to-TextText-to-SpeechEdge AI