Micro:bit Alternatives: Microcontroller-based Hardware for Learning Coding & STEM (2022)

<rawat.s>
5 min readJul 4, 2022

--

ในบทความนี้ ผู้เขียนได้สำรวจและรวบรวมตัวอย่างบอร์ดไมโครคอนโทรลเลอร์ที่ สามารถนำมาใช้ได้เช่นเดียวกับบอร์ด BBC Micro:bit เพื่อการเรียนรู้ด้านโค้ดดิ้ง หรือ สเต็มศึกษา (STEM)

  • Elecfreaks Pico:ed
  • Elecrow Mbits ESP32 Dev Board
  • Elecrow Crowbits Kits
  • TinkerGen GroveZero
  • Wappsto:bit GO
  • ElecFreaks Retro Makecode Arcade for Education

1) Elecfreaks Pico:ed

  • เป็นบอร์ดไมโครคอนโทรลเลอร์ของบริษัท Elecfreaks ประเทศจีน ที่ใช้ชิป Raspberry Pi RP2040 (Dual 32-bit Arm Cortex-M0+, 264KB SRAM, 2MB QSPI Flash) เป็นตัวประมวผลหลัก (บอร์ดนี้มีสองเวอร์ชันคือ v1 และ v2)
  • มีคอนเนกเตอร์ด้านข้างเหมือนบอร์ด BBC Micro:bit v2 (Microbit edge connector compatible)
  • มีวงจรสร้างเสียง (Piezo- Buzzer)
  • มี LED Matrix ใช้ LED ขนาดเล็ก (แบบ SMD) จัดเรียงเป็นเมทริกซ์ 7x17 พิกเซล
  • มี User LED
  • มีปุ่มกด User Buttons (A & B) จำนวน 2 ปุ่ม
  • ราคาบนหน้าเว็บไซต์ — Price: $12.90
    https://www.elecfreaks.com/elecfreaks-pico-ed-v2.html
  • เขียนโปรแกรมด้วย MicroPython และ CircuitPython (ใช้ร่วมกับ Thonny IDE) สำหรับผู้ที่ไม่ถนัด C/C++
  • แต่ไม่สามารถใช้กับ MakeCode Editor for Microbit ได้
  • Tutorial: https://www.elecfreaks.com/learn-en/pico-ed/index.html
Pico:ed V1
Pico:ed V2 Pinout

2) Elecrow Mbits ESP32 Dev Board v1.2 (Price: $22.90)

  • เป็นบอร์ดที่มีขนาด 52 x 52mm
  • ใช้โมดูล Espressif ESP32-WROVER-B เป็นตัวประมวลผลหลัก
  • รองรับการเชื่อมต่อ WiFi / BLE
  • มี 5x5 RGB LED matrix
  • มีไอซี Accelerometer: MPU6050 (I2C)
  • มีปุ่มกด 2 ปุ่ม
  • มีไอซี MEMS microphone สำหรับอินพุตเสียง
  • มีวงจร Piezo-Speaker สำหรับเอาต์พุตเสียง
  • มีเซนเซอร์วัดอุณหภูมิ (Temperature sensor): TMP75 (I2C)
  • Microbit Edge connector compatible
  • เขียนโปรแกรมโดยใช้ซอฟต์แวร์ Letscode (based on Scratch3.0) + Mbits Extension และ Arduino IDE
  • Wiki: https://www.elecrow.com/wiki/index.php?title=Mbits
Elecrow Mbits ESP32 Dev Board
Block-based Coding with Letscode + Mbit Extension

3) Elecrow Crowbits Kits

  • เป็นชุดอุปกรณ์ที่มีโมดูลหลักใช้ชิป Espressif ESP32 เป็นตัวประมวลผลหลัก และมีจอแสดงผลแบบ TFT (2-inch 320x240 pixel)
  • สามารถนำไปเชื่อมต่อกับ Crowbits Modules ของบริษัทได้จำนวนมาก ดังนั้นจึงมีการจำแนกชุดอุปกรณ์แบ่งเป็น Master Kit | Explorer Kit (Price: $135.99)| Creator Kit (Price: $165.98)| Inventor Kit (Price: $145.99)| Hello Kit (Price: $56.99) เป็นต้น
  • สามารถใช้ Letscode (based on Scratch3.0) สำหรับการเขียนโค้ดได้
  • Crowbits Master Kit — User Manual (PDF)
  • Crowbits Creator Kit — User Manual (PDF)
Elecrow Modules for Explorer Crowbits Kit
Elecrow Crowbits Master Kit

โมดูลของ Crowbits เชื่อมต่อกันด้วยคอนเนกเตอร์ (Connectors) ที่มีแม่เหล็กผังอยู่ (Magnetic Snap) และมีจุดสัมผัส 4 ตำแหน่ง เรียกว่า Pogo Pins จึงนำมาต่อเข้าด้วยกันหรือแยกออกจากกันได้ง่าย แต่ละโมดูลอาจมีจำนวนคอนเนกเตอร์ด้านข้างไม่เท่ากันก็ได้

Crowbits 4-Pin Connector
Crowbits Modules with Magnetic Snap Connectors
Crowbits Game Console

4) TinkerGen — GroveZero

อีกตัวอย่างหนึ่งที่น่าสนใจคือ โมดูล Grove Zero ของบริษัท TinkerGen Co., Ltd. ซึ่งได้มีการจำหน่ายมาตั้งแต่ปลายปีค.ศ. 2017 จุดเด่นก็คือ การเลือกใช้คอนเนกเตอร์ด้านข้าง (Edge Connector) และมีโมดูล Adapter เอาไว้สวมด้านข้าง เป็นแบบสัมผัสและมีแม่เหล็กดูดเข้าหากัน (Magnetic snap-connectors) ทำให้ง่ายต่อการเชื่อมต่อ ไม่เหมือนกับการใช้สาย Grove Cable แต่ก็ทำให้มีราคาของอุปกรณ์ที่สูงขึ้น แต่ละโมดูลจะต้องมีขาสัญญาณดังนี้ BOOT, RX, TX, VCC, SDA, SCL,GND, 3.3V เป็นแบบ Edge Connector อยู่ด้านข้าง

TinkerGen Grove Zero Systems
TinkerGen Grove Zero Systems

การเขียนโปรแกรม Grove Zero ในช่วงเริ่มต้นก็ใช้วิธีการต่อบล็อกได้ เช่น ใช้ MakeCode ของ Microsoft ในช่วงแรก ต่อมาก็มีซอฟต์แวร์ เช่น CodeCraft (มีพื้นฐานมาจาก Scratch 3.0) พัฒนาโดยบริษัท TinkerGen Co., Ltd. เนื่องจากเป็นโมดูลหรือชุดคิดสำหรับเด็ก การเขียนโค้ดด้วยการต่อบล็อก น่าจะทำได้ง่ายกว่า

TinkerGen — CodeCraft

5) Wappsto:bit GO (Price: $95 for pre-order)

  • ออกแบบและพัฒนาโดยบริษัท seluxit.com (ประเทศเดนมาร์ก)
  • ใช้โมดูล ESP32-WROOM-32E เป็นตัวประมวลผลหลัก
  • มีโมดูล Raytac (nRF52833-based) MDBT50Q-512K สำหรับสื่อสารด้วย Bluetooth 5.2
  • มีชิปไมโครคอนโทรลเลอร์ NXP Kinetis KL2 Arm Cortex-M0+ (MKL27Z256VFM4 ) สำหรับการเชื่อมต่อและอัปโหลดโค้ดผ่านพอร์ต USB ได้เหมือนบอร์ด Micro:bit
  • มี 5x5 LED matrix สำหรับแสดงผล
  • มีเซนเซอร์วัดอุณหภูมิและเซนเซอร์แสง Temperature sensor
    - Light sensor
  • มีเซนเซอร์เสียง: Knowles SPU0410LR5H-QB analog MEMS microphone
  • มีเซนเซอร์ Magnetometer / Accelerometer: ST LSM303AGRTR
  • Microbit Edge connector compatible
  • เขียนโค้ดได้โดยใช้ Microsoft MakeCode + Wappsto Extension
    https://github.com/Wappsto/pxt-wappsto

ก่อนรุ่นก่อนหน้าของบริษัทคือ Wappsto:bit (Basic | NB-IoT | NB-IoT+) แต่เป็นบอร์ดเสริมสำหรับใช้งานร่วมกับบอร์ด Micro:bit และเขียนโปรแกรมด้วย MakeCode ได้

Wappsto:bit GO (ESP32-based)
Wappsto:bit GO — Board Layout
Wappsto:bit (Microbit Extension board)

6) ElecFreaks Retro Makecode Arcade For Education
https://www.elecfreaks.com/retro-arcade-for-education.html

  • เป็นอุปกรณ์ประเภท Programmable Portable Gamepad
  • ใช้ไมโครคอนโทรลเลอร์ STM32F401CC (32-bit ARM Cortex-M4F)
  • มีจอแสดงผลแบบ TFT LCD ขนาด 2.4" (320 x 240 พิกเซล)
  • มีแบตเตอรีแบบชาร์จประจุได้ 3.7V / 560mAh ผ่านทาง USB Type-C
  • มีเซนเซอร์ Gyroscope
  • มีลำโพงเสียง Piezo-Buzzer
  • มีมอเตอร์ขนาดเล็กสำหรับการสั่นสะเทือน (Vibration motor)
  • มีปุ่มกดสำหรับเล่นเกมส์หรือเลือกเมนู
  • เขียนโปรแกรมบนหน้าเว็บเบราว์เซอร์ด้วย Microsoft MakeCode-Arcade (https://arcade.makecode.com/) ใช้วิธีการต่อบล็อกแบบกราฟิก (Block-based Coding) หรือเขียนโค้ด Static TypeScript (STS) หรือ Python
  • ราคาบนหน้าเว็บ — Price: $64.90
  • Tutorial: https://elecfreaks.com/learn-en/RetroArcadeforEducation/index.html
  • Demo Arcade game with code: https://arcade.makecode.com/93548-12318-05525-25704
ELECFREAKS Retro Makecode Arcade for Education (STM32F4-based)
การเขียนโปรแกรมด้วย Microsoft MakeCode Arcache

Microsoft MakeCode Arcade เป็นโปรเจกต์ซอฟต์แวร์ประเภท Open Source (https://github.com/microsoft/pxt-arcade) ที่ต้องการส่งเสริมเยาวชนเพื่อเรียนรู้ด้านโค้ดดิ้ง และใช้การพัฒนาเกมส์ มาเป็นแนวทางในการเรียนรู้

อุปกรณ์ฮาร์ดแวร์ที่สามารถนำมาใช้ได้กับ MakeCode-Arcade มักจะใช้ไมโครคอนโทรลเลอร์ (MCU) (32-bit Arm Cortex-M Series) เช่น

  • STM32F401 / STM32F411 MCU
  • ATSAMD51 MCU
  • Raspberry Pi Zero (เป็น Single-Board Computer)

จากไฟล์เอกสาร: https://github.com/microsoft/pxt-arcade/blob/master/docs/hardware.md จะเห็นได้ว่า บอร์ดไมโครคอนโทรลเลอร์หรืออุปกรณ์อีกที่รองรับการเขียนโค้ดด้วย MakeCode-Arcade เช่น บริษัท Kitronik (UK), Adafruit (USA), BrainPad (USA), Kittenbot (CN), Ovobot (CN), Tinkergen (CN)

STM32F401-based Hardware

Kittenbot Meowbit
BrainPad Arcade
TinkerGen GameGo
Kitronik ARCADE for MakeCode Arcade
Ovobot Xtron Pro

ATSAMD51-based Hardware

Adafruit PyBadge for MakeCode Arcade

RPi Zero based Hardware

RPi Zero + Adafruit Joy Bonnet Pack + HDMI Display

ข้อสังเกต

  • อุปกรณ์ที่ได้สำรวจมานำเสนอนั้นจากหลาย ๆ บริษัท หลายกรณีมีความเชื่อมโยงกับบอร์ด BBC Micro:bit และได้มีการเปิดตัวหรือเริ่มจำหน่ายในช่วงปีค.ศ. 2021–2022
  • อุปกรณ์สำหรับการเรียนรู้เกี่ยวกับโค้ดดิ้งสำหรับเยาวชน มักมีราคาค่อนข้างแพงและนิยมใช้ควบคู่กับการเขียนโค้ดแบบต่อบล็อกเชิงกราฟิก (Block-based Coding) เช่น ใช้ซอฟต์แวร์ Microsoft MakeCode Editor หรือ Letscode หรือ CodeCraft (Scratch 3.0)
  • อุปกรณ์ Crowbits Kits เป็นอีกหนึ่งตัวอย่างที่แสดงให้เห็นความหลากหลายของโมดูลอิเล็กทรอนิกส์ประเภทต่าง ๆ เช่น โมดูลเซนเซอร์ และผู้ใช้สามารถนำมาต่อกับโมดูลหลักที่มีไมโครคอนโทรลเลอร์ (คล้ายกับการต่อ LEGO Bricks)
  • MakeCode ของ Microsoft ได้มีการนำไปพัฒนาต่อ เพื่อใช้สำหรับการสอนการโค้ดดิ้งโดยอาศัย Arcade Game สื่อในการเรียนรู้ เช่น การสร้างเกมส์ และมีอุปกรณ์ฮาร์ดแวร์ที่มีลักษณะเป็น Gamepad เพื่อทดสอบการทำงานของเกมส์ นอกเหนือจากการจำลองการทำงานด้วย MakeCode Arcade Simulator

--

--

<rawat.s>
<rawat.s>

Written by <rawat.s>

I'm Thai and working in Bangkok/Thailand.

No responses yet