ROBOT TEMPLATES

ดาวน์โหลด Template แล้ว Flash ได้เลย

เลือก template สำหรับหุ่นยนต์ของคุณ copy โค้ดไปวางใน MakeCode แล้ว flash ลง micro:bit ได้เลย ไม่ต้องเขียนโค้ด BLE เอง

Protocol: Bluetooth UART · "UP\n" "DOWN\n" "LEFT\n" "RIGHT\n" "STOP\n" "A\n"…
🤖

micro:Maqueen Lite

หุ่นยนต์ยอดนิยมในโรงเรียนไทย — DFRobot

DC MOTOR BLE UART
มอเตอร์
DC (I2C)
ความเร็ว
0–255 (ใช้ 150)
micro:bit
v1 / v2
หมายเหตุ: ปุ่ม A = เปิดไฟหน้า, ปุ่ม B = ปิดไฟหน้า ปรับความเร็วได้ที่ตัวแปร speed ค่า 0–255
TypeScript — MakeCode
// ═══════════════════════════════════════════════════
//  Gamepad for micro:bit — micro:Maqueen Lite
//  Extension: https://github.com/DFRobot/pxt-maqueen
// ═══════════════════════════════════════════════════

const SPEED = 150

bluetooth.onUartDataReceived("\n", function () {
    let cmd = bluetooth.uartReadUntil("\n").trim()
    if (cmd == lastCommand) return
    lastCommand = cmd

    if (cmd == "UP") {
        maqueen.motorRun(maqueen.Motors.All, maqueen.Dir.CW, SPEED)
        basic.showArrow(ArrowNames.North)
    } else if (cmd == "DOWN") {
        maqueen.motorRun(maqueen.Motors.All, maqueen.Dir.CCW, SPEED)
        basic.showArrow(ArrowNames.South)
    } else if (cmd == "LEFT") {
        maqueen.motorRun(maqueen.Motors.M1, maqueen.Dir.CW, SPEED)
        maqueen.motorRun(maqueen.Motors.M2, maqueen.Dir.CCW, SPEED)
        basic.showArrow(ArrowNames.West)
    } else if (cmd == "RIGHT") {
        maqueen.motorRun(maqueen.Motors.M1, maqueen.Dir.CCW, SPEED)
        maqueen.motorRun(maqueen.Motors.M2, maqueen.Dir.CW, SPEED)
        basic.showArrow(ArrowNames.East)
    } else if (cmd == "STOP") {
        maqueen.motorStop(maqueen.Motors.All)
        basic.clearScreen()
    } else if (cmd == "A") {
        maqueen.writeLED(maqueen.LED.LEDLeft, maqueen.LEDswitch.turnOn)
        maqueen.writeLED(maqueen.LED.LEDRight, maqueen.LEDswitch.turnOn)
        basic.showIcon(IconNames.Heart)
    } else if (cmd == "B") {
        maqueen.writeLED(maqueen.LED.LEDLeft, maqueen.LEDswitch.turnOff)
        maqueen.writeLED(maqueen.LED.LEDRight, maqueen.LEDswitch.turnOff)
        basic.showIcon(IconNames.Happy)
    } else if (cmd == "C") {
        basic.showString("C")
    } else if (cmd == "D") {
        basic.showString("D")
    } else {
        maqueen.motorStop(maqueen.Motors.All)
        basic.clearScreen()
    }
})

let lastCommand = ""
bluetooth.startUartService()
basic.showIcon(IconNames.Ghost)
basic.pause(500)
basic.clearScreen()
วิธีใช้งาน
1

เพิ่ม Extension ใน MakeCode ค้นหา dfrobot แล้วเลือก maqueen

2

วาง Code สลับไปโหมด JavaScript แล้ว copy โค้ดด้านบนวางลงไป

3

Flash กด Download แล้ว drag .hex ลง micro:bit

4

จับคู่ เปิด app กด Connect แล้วเลือก BBC micro:bit

เปิด MakeCode →
Command ที่รองรับ
UPเดินหน้า
DOWNถอยหลัง
LEFTเลี้ยวซ้าย
RIGHTเลี้ยวขวา
STOPหยุด
Aไฟหน้าเปิด
Bไฟหน้าปิด
C/DCustom
🚗

Tiny:Bit

Yahboom · หุ่นยนต์เพื่อการศึกษาระดับประถม

DC MOTOR BLE UART
มอเตอร์
DC (PWM)
ความเร็ว
0–100 (ใช้ 80)
micro:bit
v2 (มี speaker)
หมายเหตุ: ปุ่ม A/B เล่นเสียง — ต้องใช้ micro:bit v2 ที่มี speaker ในตัว
TypeScript — MakeCode
// ═══════════════════════════════════════════════════
//  Gamepad for micro:bit — Tiny:Bit
//  Extension: YahboomTechnology/Tiny-bitLib
// ═══════════════════════════════════════════════════

bluetooth.onUartDataReceived("\n", function () {
    let cmd = bluetooth.uartReadUntil("\n").trim()
    if (cmd == lastCommand) return
    lastCommand = cmd

    if (cmd == "UP") {
        Tinybit.CarCtrlSpeed(Tinybit.CarState.Car_Run, 80)
        basic.showArrow(ArrowNames.North)
    } else if (cmd == "DOWN") {
        Tinybit.CarCtrlSpeed(Tinybit.CarState.Car_Back, 80)
        basic.showArrow(ArrowNames.South)
    } else if (cmd == "LEFT") {
        Tinybit.CarCtrlSpeed(Tinybit.CarState.Car_SpinLeft, 80)
        basic.showArrow(ArrowNames.West)
    } else if (cmd == "RIGHT") {
        Tinybit.CarCtrlSpeed(Tinybit.CarState.Car_SpinRight, 80)
        basic.showArrow(ArrowNames.East)
    } else if (cmd == "STOP") {
        Tinybit.CarCtrl(Tinybit.CarState.Car_Stop)
        basic.clearScreen()
    } else if (cmd == "A") {
        basic.showIcon(IconNames.Heart)
        music.playTone(Note.C5, 200)
    } else if (cmd == "B") {
        basic.showIcon(IconNames.Happy)
        music.playTone(Note.G5, 300)
    } else if (cmd == "C") {
        basic.showString("C")
    } else if (cmd == "D") {
        basic.showString("D")
    } else {
        basic.clearScreen()
    }
})

let lastCommand = ""
bluetooth.startUartService()
basic.showIcon(IconNames.Ghost)
basic.pause(500)
basic.clearScreen()
วิธีใช้งาน
1

เพิ่ม Extension ค้นหา Tiny-bitLib ใน MakeCode Extensions หรือ paste URL จาก Yahboom

2

วาง Code สลับโหมด JavaScript แล้ว paste

3

Flash กด Download แล้ว drag .hex ลง micro:bit

4

จับคู่ เปิด app กด Connect เลือก BBC micro:bit

เปิด MakeCode →
Command ที่รองรับ
UPเดินหน้า
DOWNถอยหลัง
LEFTหมุนซ้าย
RIGHTหมุนขวา
STOPหยุด
Aเสียง ♪
Bเสียง ♫
C/DCustom

Ringbit Car V2

Servo-based car — ELECFREAKS

SERVO BLE UART
มอเตอร์
Continuous Servo
Default Pins
P1 (Left) · P2 (Right)
micro:bit
v1 / v2
⚠️ Servo ต่างจาก DC motor: freestyle(left, right) ค่า 90 = หยุด, >90 = หมุนทางหนึ่ง, <90 = กลับทาง ถ้ารถวิ่งผิดทิศ ให้ swap ค่า SPEED_HIGH กับ SPEED_LOW
TypeScript — MakeCode
// ═══════════════════════════════════════════════════
//  Gamepad for micro:bit — Ringbit Car V2
//  Extension: tinkertanker/pxt-ringbitcar
//  Servo Left = P1, Servo Right = P2
// ═══════════════════════════════════════════════════

const SPEED_HIGH = 160  // full forward
const SPEED_LOW  = 20   // full backward
const STOP       = 90   // servo stop

bluetooth.onUartDataReceived("\n", function () {
    let cmd = bluetooth.uartReadUntil("\n").trim()
    if (cmd == lastCommand) return
    lastCommand = cmd

    if (cmd == "UP") {
        RingbitCar.freestyle(SPEED_HIGH, SPEED_LOW)
        basic.showArrow(ArrowNames.North)
    } else if (cmd == "DOWN") {
        RingbitCar.freestyle(SPEED_LOW, SPEED_HIGH)
        basic.showArrow(ArrowNames.South)
    } else if (cmd == "LEFT") {
        RingbitCar.freestyle(STOP, SPEED_LOW)
        basic.showArrow(ArrowNames.West)
    } else if (cmd == "RIGHT") {
        RingbitCar.freestyle(SPEED_HIGH, STOP)
        basic.showArrow(ArrowNames.East)
    } else if (cmd == "STOP") {
        RingbitCar.freestyle(STOP, STOP)
        basic.clearScreen()
    } else if (cmd == "A") {
        basic.showIcon(IconNames.Heart)
    } else if (cmd == "B") {
        basic.showIcon(IconNames.Happy)
    } else if (cmd == "C") {
        basic.showString("C")
    } else if (cmd == "D") {
        basic.showString("D")
    } else {
        RingbitCar.freestyle(STOP, STOP)
        basic.clearScreen()
    }
})

let lastCommand = ""
RingbitCar.init_wheel(AnalogPin.P1, AnalogPin.P2)
bluetooth.startUartService()
basic.showIcon(IconNames.Ghost)
basic.pause(500)
basic.clearScreen()
วิธีใช้งาน
1

เพิ่ม Extension ค้นหา ringbit ใน MakeCode Extensions

2

ตรวจ Pins ต่อ servo ซ้ายที่ P1 และขวาที่ P2

3

Flash กด Download แล้ว drag .hex ลง micro:bit

4

ทดสอบทิศทาง ถ้าวิ่งผิดทิศ swap SPEED_HIGH↔SPEED_LOW

เปิด MakeCode →
Command ที่รองรับ
UPเดินหน้า
DOWNถอยหลัง
LEFTเลี้ยวซ้าย
RIGHTเลี้ยวขวา
STOPหยุด
A/BIcon
C/DCustom