Lab: Lid Animation and Short Sequences
Course 3 · Module 3 Type: Hands-on (pivot · keyframes · named clips · collision check) Suggested time: ~2.5–3 hours
Read first: Lesson · Clip list · ← TOC · ← M02 · M04 →
Keep these tabs open
Section titled “Keep these tabs open”| Document | Why |
|---|---|
| Editing Keyframes | I to insert keys |
| Timeline | playhead / Auto Key |
| Actions | name clips |
| Set Origin | hinge pivot |
| glTF Animations | naming for M04 |
Lab Goals
Section titled “Lab Goals”- Set the lid’s Origin at the hinge
- Build at least 1 open/close animation set
- Check that parts do not severely intersect during playback
- Name the Action/clip with a short English name, such as
lid_open - Fill in animation-clip-list.md
Prerequisites
Section titled “Prerequisites”- Have the M02 file with
Enclosure_lid/Enclosure_basealready split - Copy it to
m03_enclosure_motion.blendbefore editing
If the lid–base is not split yet, go back and do Lab C in the M02 lab first.
Lab A — Hinge origin (required)
Section titled “Lab A — Hinge origin (required)”- Select
Enclosure_lid - Place the 3D Cursor at the hinge edge (Edit Mode →
Shift+S→ Cursor to Selected) - Object Mode → Origin to 3D Cursor
Ctrl+A→ Rotation & Scale- Test-rotate with
Ron the correct axis — it must open like a hinge
Pass when: a teammate rotates the lid and understands where the hinge is without a long explanation
Lab B — Keyframe lid_open (required)
Section titled “Lab B — Keyframe lid_open (required)”- Set the team’s fps (24 recommended) and a frame range of about 1–3 seconds
- Start frame: lid closed →
I→ Rotation - End frame: rotated open →
I→ Rotation - Play in the Timeline and check the motion
- Name the Action
lid_open(or an equivalent meaningful name)
Pass when: pressing Play clearly shows the lid opening from closed to open
Lab C — Close clip or return motion (required)
Section titled “Lab C — Close clip or return motion (required)”Choose one:
- C1: A separately named Action,
lid_close - C2: A frame range continuing from open, returning to the closed pose, in the same clip (note this clearly in the clip list)
Pass when: both an open and a closed state exist and can be played back repeatedly
Lab D — Interference check (required)
Section titled “Lab D — Interference check (required)”- Play the animation slowly (scrub the playhead, or slow down playback)
- Switch to Wireframe and check the hinge point and the tall components
- Note in the clip list: pass / minor collision / shape needs fixing
- If there is a severe collision: fix the Origin, the opening angle, or go back to M02
Pass when: there is no severe intersection, or the issue is recorded with a plan to fix it
Lab E — Evidence + clip list (required)
Section titled “Lab E — Evidence + clip list (required)”- Fill in animation-clip-list.md for every clip
- Record evidence: screenshots of the closed+open frames, or a short viewport playblast
- Save the
.blend
Lab F — Optional extras
Section titled “Lab F — Optional extras”- A
battery_revealclip (moving the object standing in for the battery) - Use the Graph Editor to smooth the easing
- Parent a small part to the lid (Parenting)
Deliverables checklist
Section titled “Deliverables checklist”-
m03_enclosure_motion.blend - Named open/close motion
- Interference check recorded
- animation-clip-list.md filled in completely
- Image or short clip evidence
Troubleshooting
Section titled “Troubleshooting”| Symptom | What to try |
|---|---|
| The lid rotates and floats as a whole block | The Origin is not yet at the hinge — redo Lab A |
| It rotates on the wrong axis | Use R then X / Y / Z · or rotate one axis at a time in the Transform panel |
Pressing I shows no key |
Check the Timeline · turn off Only Show Selected if needed · confirm the right object is selected |
| Auto Key creates messy keys | Turn off the record button in the Timeline, then delete extra keys in the Dope Sheet |
| The Action’s name disappears after saving | Check the Action panel · don’t delete the Action by accident |
| Collision at the hinge | Nudge the Origin slightly · or add spacing between lid and base in the model |
Lesson · Clip list · TOC · M04 →
Cite this lesson
If you teach from this lesson or reuse it in slides or documents, credit it with the text below. If you changed it, add (adapted) after the title.
"Lab: Lid Animation and Short Sequences" from TESA Open Knowledge by the Thai Embedded Systems Association (TESA), https://github.com/tesaiot/tesa-qualification-program, licensed under CC BY-NC 4.0
Thai attribution: "แล็บ: แอนิเมชันฝาและลำดับการเคลื่อนไหวสั้น" จาก TESA Open Knowledge โดยสมาคมสมองกลฝังตัวไทย (Thai Embedded Systems Association: TESA) https://github.com/tesaiot/tesa-qualification-program สัญญาอนุญาต CC BY-NC 4.0
Lesson link: https://tesaiot.github.io/tesa-qualification-program/en/courses/product-design/m03-motion/l02-lab/
This lesson adapts the source below; keep its credit too.
https://github.com/drsanti/TESAIoT-Courses/blob/287c21814ba8c75f693136616dcd270349a15966/C3/M03/lab.md · Original content by Asst. Prof. Dr. Santi Nuratch (ผศ.ดร.สันติ นุราช), KMUTT. Course 3 (C3/) of drsanti/TESAIoT-Courses. TESA funded the work and holds the rights; published here under CC BY-NC 4.0. The upstream repository carries no licence file. Text kept faithful; structure, front matter, quizzes and notes added by TESA Open Knowledge.
TESA Open Knowledge · © 2026 สมาคมสมองกลฝังตัวไทย (TESA) · CC BY-NC 4.0
Content is licensed CC BY-NC 4.0. Reuse it non-commercially and credit the Thai Embedded Systems Association (TESA) every time. · How to cite TESA