Source: https://mokxi.com/teachers/plans/desk-buddy
Updated: 2026-11-11

Lesson plan

# Build a desk buddy robot lesson plan

Animated eyes on a round display that blink, feel, react to touch, tilt and light, ending with a robot that misses you.

3 chapters, 6 lessons, about 4 hours, on the ESP32-C3-DevKitM-1. Every lesson runs in the browser, with nothing to install.

Start a class from this course

The unit

## Objectives and materials

### By the end, students can

- Two eyes on round glass, then blinks and glances that bring them to life.
- Moods as a table of numbers, and a touch pad that changes them.
- Tilt and light, then the whole robot together.

### Materials for the whole unit

- Accelerometer and gyroscope, MPU6050
- ESP32-C3-DevKitM-1
- Full-size breadboard
- Photoresistor sensor module
- Piezo speaker
- Round display, GC9A01
- Touch sensor, TTP223

Every part is already on the simulator’s bench, so there is nothing to buy or hand out. The counts are the most any one lesson uses, if you build it on real breadboards too.

Chapter 1. About 1 h 20 min

## A face

Two eyes on round glass, then blinks and glances that bring them to life.

Lesson | Time | What students do

Two eyes on a round screen Draw two rounded eyes on a GC9A01 and slide them across the glass by repainting only the edges that move. | 40 min

- A round window
- The glass lights up
- Two rounded rectangles
- Move only what changed

Blink and glance Blinks on an uneven beat and glances that ease into place, both on millis() timers so neither waits for the other. | 40 min

- Alive, not animated
- The first blink
- Easing
- Two timers, no waiting

### Materials

- Accelerometer and gyroscope, MPU6050
- ESP32-C3-DevKitM-1
- Full-size breadboard
- Photoresistor sensor module
- Piezo speaker
- Round display, GC9A01
- Touch sensor, TTP223

### Check for understanding

Each student finishes "Blink and glance" on their own, without opening the hints. The simulator checks 4 of its 4 steps as they go.

Then ask each one to explain, in a sentence or two, the last thing it asked of them: "Two timers, no waiting".

Chapter 2. About 1 h 20 min

## Feelings

Moods as a table of numbers, and a touch pad that changes them.

Lesson | Time | What students do

Moods are numbers Happy, sleepy, surprised, angry, lonely and dizzy as a handful of numbers each: lids, tilt, size and color, eased from one to the next. | 40 min

- A happy face
- Sleepy lids
- Cross
- Lonely

Touch and feelings A TTP223 pad makes the robot beam, too many pokes make it cross, and being ignored makes it lonely. | 40 min

- A pad that feels a finger
- A stroke makes it happy
- Not so fast
- Do not forget me

### Materials

- Accelerometer and gyroscope, MPU6050
- ESP32-C3-DevKitM-1
- Full-size breadboard
- Photoresistor sensor module
- Piezo speaker
- Round display, GC9A01
- Touch sensor, TTP223

### Check for understanding

Each student finishes "Touch and feelings" on their own, without opening the hints. The simulator checks 4 of its 4 steps as they go.

Then ask each one to explain, in a sentence or two, the last thing it asked of them: "Do not forget me".

Chapter 3. About 1 h 20 min

## Senses

Tilt and light, then the whole robot together.

Lesson | Time | What students do

Tilt and light An MPU6050 tips the gaze and makes the robot dizzy when rocked; an LDR module sends it to sleep in the dark. | 40 min

- A sense of balance
- Look down the slope
- Lights down
- Asleep

Meet your desk buddy Everything together: blinking, glancing, moods, touch, a temper, dizzy spells, bedtime in the dark and loneliness when ignored. | 40 min

- Hello
- Pet it
- Rock it
- Leave it be

### Materials

- Accelerometer and gyroscope, MPU6050
- ESP32-C3-DevKitM-1
- Full-size breadboard
- Photoresistor sensor module
- Piezo speaker
- Round display, GC9A01
- Touch sensor, TTP223

### Check for understanding

Each student finishes "Meet your desk buddy" on their own, without opening the hints. The simulator checks 4 of its 4 steps as they go.

Then ask each one to explain, in a sentence or two, the last thing it asked of them: "Leave it be".

Your class

## Teach this unit as a class

Start a class from this course and its 6 lessons are assigned in one go, in order. Students join with a six-character code or printed login cards, and each one’s work comes back to you.

The class tools are free for 30 days for one class of up to 20 students, with no card. The lessons themselves are free either way.

Start a class from this course See the demo class

More units

## Other lesson plans

Electronics basics 20 lessons, about 10 h. Embedded on the Arduino Uno 16 lessons, about 12 h. Embedded on the ESP32-C3 13 lessons, about 11 h. Embedded on the Raspberry Pi Pico 7 lessons, about 6 h. Build your own fight stick 5 lessons, about 4 h. Embedded on the STM32F411 6 lessons, about 6 h. C++ on a board 13 lessons, about 10 h. Digital logic and memory 4 lessons, about 4 h. Interactive devices on the Uno 9 lessons, about 8 h. From gates to a computer 23 lessons, about 16 h. Build a claw machine 8 lessons, about 6 h. Every unit All the courses as ready-made units, on the teachers page.
