Lab: Twin Architecture Map
Course 2 · Module 1 Type: Conceptual + diagram (+ optional host peek) Suggested time: 30–45 minutes
Read first: Lesson · Cheatsheet · ← Table of Contents · M02 →
Useful references during the lab
Section titled “Useful references during the lab”| Document | Use when |
|---|---|
| Bitstream Studio | Pointing out Visualization / Communication on the real host |
| TESAIoT_Hackathon | web-app/ = a dashboard outside the Studio screen |
| Course 1 M06 | Reviewing MQTT in the pipeline |
Lab Goals
Section titled “Lab Goals”- Distinguish Virtual Device / Twin Platform / Firmware Logic / Host in your own words
- Draw the data flow of one example system
- Fill in a decision table: is the Twin enough / does it need a real board?
- (Recommended) briefly open a host or dashboard to connect the concept with the real thing
Part A — Definitions (your words)
Section titled “Part A — Definitions (your words)”Write 2–3 sentences for each:
- What is a Virtual Device?
- What does Digital Twin in this course cover, besides the device itself?
- Why must Firmware Logic be separated from hardware detail?
Pass when: someone else on the team reads it and understands, without opening the lesson
Part B — Architecture diagram
Section titled “Part B — Architecture diagram”Draw (on paper / in Mermaid / as text boxes) showing at least:
- VS Code / Bitstream Studio
- Firmware Logic
- The communication path (UART and/or MQTT)
- The Twin Engine / Virtual Device (or Simulator)
- Visualization or a Dashboard
- (If any) Cloud / a broker
An example blank skeleton:
[VS Code + Bitstream Studio] │[Firmware Logic] ──comm──► [Twin / Simulator state] │ ┌───────────┴───────────┐ ▼ ▼ [Telemetry UI] [web-app / MQTT]Pass when: the data-direction arrows are clear, and you can point out which box the Virtual Device is in
Part C — Test decision table
Section titled “Part C — Test decision table”Fill in at least 4 rows (all rows recommended):
| Test scenario | Is the Twin / Sim enough? | Does it need a real board? | Short reason |
|---|---|---|---|
| Mode-switching logic from a button | |||
| Reading the IMU and computing in code | |||
| Checking the MQTT JSON format / topic | |||
| Wi‑Fi or BLE range in a real room | |||
| Checking a pin map / a wrong pin | |||
| Measuring power / battery life |
Pass when: at least one row answers “the Twin is enough” and one row answers “needs a board”
Part D — Optional host peek (recommended)
Section titled “Part D — Optional host peek (recommended)”Choose at least one:
- Open Bitstream Studio and point out to a friend which panel is Visualization / where you switch Bitstream vs Simulator
- Open a dashboard page in the Hackathon
web-app/(per your kit’s guide) and explain which layer of the Part B diagram it belongs to
Pass when (optional): you have a 3–5 line note on “what I see on screen = which layer of the architecture”
Deliverables checklist
Section titled “Deliverables checklist”- Part A’s all 3 items complete
- Part B’s diagram
- Part C’s table, ≥ 4 rows
- (Recommended) Part D’s note
Troubleshooting
Section titled “Troubleshooting”| Symptom | Approach |
|---|---|
| Confusing the Virtual Device with the Twin | The Device = a model of one machine; the Twin = the whole surrounding system |
| Not sure where to draw the Simulator | Put it alongside the Twin Engine / Virtual Device as a simulated data source |
| Thinking the Twin can replace the board for everything | Look at the RF / pin / power rows in table C |
Lesson · Cheatsheet · Table of Contents · M02 →
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: Twin Architecture Map" 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: "แล็บ: แผนที่สถาปัตยกรรม Twin" จาก 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/digital-twin/m01-twin-architecture/l02-lab/
This lesson adapts the source below; keep its credit too.
https://github.com/drsanti/TESAIoT-Courses/blob/287c21814ba8c75f693136616dcd270349a15966/C2/M01/lab.md · Original content by Asst. Prof. Dr. Santi Nuratch (ผศ.ดร.สันติ นุราช), KMUTT. Course 2 (C2/) 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