Raspberry Pi Pico 2 W หรือเวอร์ชั่นไร้สายของ Raspberry Pi Pico 2 ได้เปิดตัวแล้ว มาพร้อมกับโมดูลไร้สาย WiFi 4 2.4GHz และ Bluetooth 5.2 ในราคาอย่างเป็นทางการ $7(~240฿) ซึ่งในบทความนี้เราจะมาดูสเปคและรีวิวสั้นๆ ที่ทดลองโค้ดตัวอย่าง WiFi และ Bluetooth
นี่ไม่ใช่ครั้งแรกที่เราได้เห็นบอร์ด Raspberry Pi RP2350 ที่มาพร้อมกับ WiFi และ Bluetooth เพราะก่อนหน้านี้ Pimoroni ได้เปิดตัวบอร์ด Pico Plus 2 W ที่ใช้ RP2350B MCU และ Raspberry Pi RM2 โมดูลไร้สาย Wi-Fi และ Bluetooth, และ iLabs ก็ได้เปิดตัวบอร์ด Challenger+ RP2350 WiFi6/BLE5 ที่ใช้โมดูลไร้สาย ESP32-C6 แต่ Raspberry Pi Pico 2 W เป็นบอร์ดอย่างเป็นทางการ มีราคาถูกกว่า และคาดว่าจะได้รับความนิยมและการใช้งานอย่างแพร่หลายมากที่สุด
สเปคของ Raspberry Pi Pico 2 W
- SoC – Raspberry Pi RP2350
- CPU
- Arm Cortex-M33 แบบ Dual-core @ 150 MHz พร้อม Arm Trustzone, Secure boot และ
- Hazard3 RISC-V 32 บิต แบบ Dual-core @ 150 MHz
- สามารถใช้งานพร้อมกันได้สูงสุดถึง 2 คอร์
- หน่วยความจำ – SRAM 520 KB บนชิป
- ความปลอดภัย
- หน่วยความจำแบบ OTP (anti-fuse) 8KB สำหรับการเก็บคีย์
- Secure boot (เฉพาะ Arm)
- SHA-256 acceleration
- เครื่องสร้างตัวเลขสุ่มแบบฮาร์ดแวร์ (Hardware TRNG)
- ตัวตรวจจับการทำให้เกิดข้อผิดพลาดอย่างรวดเร็ว (Fast glitch detectors)
- แพ็กเกจ: QFN-60
- CPU
- สตอเรจ – QSPI flash 4 MB บนบอร์ด
- Wireless – 2.4GHz 802.11n WiFi 4 และ Bluetooth 5.2
- USB – Micro USB 1.1 (Host/Device) สำหรับจ่ายไฟและโปรแกรม
- การขยาย – GPIO header 26-pin พร้อม
- 2x UART
- 2x SPI controllers
- 2x I2C controllers
- 24x ช่องสัญญาณ PWM
- 4x ADC
- 3x PIO blocks, 12x PIO (Programmable IO) state machines
- การดีบัก – SWD debug interface
- พาวเวอร์ซัพพลาย – 1.8 to 5.5V DC
- ขนาด – 51 x 21 มม
- ช่วงอุณหภูมิ – -20°C to +85°C
- MTBF Ground Benign – 182,000 ชั่วโมง
- MTBF Ground Mobile – 11,000 ชั่วโมง
- อายุการผลิต: ใช้งานได้จนถึงเดือนมกราคม 2040
Raspberry Pi Pico 2 W รองรับการโปรแกรมด้วย Pico C/C++ SDK และ MicroPython SDK แต่ในปัจจุบันต้องใช้ develop branch ของ Pico SDK และสามารถคอมไพล์ pico-examples ได้ด้วยการตั้งค่า PICO_BOARD=pico2_w, สำหรับ MicroPython พอร์ตยังอยู่ระหว่างการพัฒนา, แต่มีเวอร์ชันล่าสุดสำหรับ Pico 2 W ให้ดาวน์โหลดบน Google Drive
การเปรียบเทียบ Raspberry Pi Pico 2 กับ Pico 2 W
หลังจากที่เราได้รับตัวอย่างมาแล้วได้ทำการเปรียบเทียบบอร์ด Raspberry Pi Pico 2 กับ Raspberry Pi Pico 2 W
ความแตกต่างที่เด่นชัดที่สุดระหว่าง Raspberry Pi Pico 2 และ Pico 2 W คือการเพิ่มโมดูลไร้สายและสายอากาศ, แต่ header สำหรับ Debug แบบ 3 พิน ถูกย้ายไปยังตำแหน่งใหม่เพื่อให้มีพื้นที่สำหรับสายอากาศ, การจัดวางบนบอร์ดถูกปรับเปลี่ยนไป, ตำแหน่งของพอร์ต Micro USB, LED, และ ปุ่ม Reset ยังคงอยู่ในตำแหน่งเดิม และ GPIO headers ไม่ได้มีการเปลี่ยนแปลงใดๆ ซึ่งสามารถยืนยันได้จากภาพเปรียบเทียบด้านล่างของบอร์ด
ตำแหน่งของ Test Points TP1-TP3 (GND และ USB) ตำแหน่งเหมือนเดิมในทั้งสองรุ่น, TP4-TP6 ถูกเลื่อนลงเล็กน้อยใน Pico 2 W, TP7 ที่อยู่ตรงกลางบอร์ดใน Pico 2 ถูกตัดออกใน Pico 2 W ซึ่งปกติจะไม่ใช้งานยกเว้นสำหรับ BOOTSEL (TP6) :
- TP4 – GPIO23/SMPS PS pin (ห้ามใช้งาน)
- TP5 – GPIO25/LED (ไม่แนะนำให้ใช้งาน)
- TP6 – BOOTSEL
- TP7 – 1V1 (ห้ามใช้งาน)
การทดสอบ WiFi และ Bluetooth ด้วย Pico C/C++ SDK
ฉันคาดว่าคำแนะนำในการใช้งาน WiFi จะเหมือนกับ Raspberry Pi Pico W เราสามารถลองใช้งานบน Raspberry Pi Pico 2 W โดยใช้ Pico C/C++ SDK (develop branch) และตัวอย่างโค้ดบนแล็ปท็อปที่ใช้ Ubuntu 22.04
sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi build-essential git clone https://github.com/raspberrypi/pico-sdk cd pico-sdk/ git checkout develop git submodule update --init cd .. git clone -b develop https://github.com/raspberrypi/pico-examples.git
ตอนนี้มาทำทำขั้นตอนการ Build :
cd pico-examples/ mkdir build cd build export PICO_SDK_PATH=../../pico-sdk cmake -DPICO_BOARD=pico2_w -DWIFI_SSID="Your Network" -DWIFI_PASSWORD="Your Password" ..
เราได้ทำตามคำแนะนำแบบเดียวกับบอร์ดรุ่นก่อน ยกเว้นว่าฉันเลือก “develop” branch สำหรับ SDK และตัวอย่างโค้ด และตั้งค่า PICO_BOARD=pico2_w เพื่อคอมไพล์ตัวอย่างสำหรับ Raspberry Pi Pico 2 W จากนั้นเราลองสร้างตัวอย่าง WiFi :
cd pico_w/wifi/wifi_scan make -j8 cp picow_wifi_scan_background.uf2 /media/jaufranc/RP2350
โดยใช้ Bootterm utility เพื่อรอ serial console ปรากฏขึ้น:
jaufranc@CNX-LAPTOP-5:~/edev/Pico-2W/pico-examples/build/pico_w/wifi/wifi_scan$ bt -a Waiting for one port to appear...
แต่ไม่มีอะไรเกิดขึ้น โปรแกรมเหมือนจะไม่ทำงาน error และไม่มีอินเทอร์เฟส USB serial ใน kernel log:
[77666.086611] FAT-fs (sda1): unable to read boot sector to mark fs as dirty
เราจึงลองร้นใน FAT partition (RP2350), แต่ก็ไม่ช่วยอะไร จากนั้นฉันจึงคัดลอกไฟล์ flash_nuke.uf2 เพื่อ “clean”, ในจุดนี้ เราตัดสินใจกลับไปเริ่มต้นใหม่ด้วยการทดลองตัวอย่าง blink.uf2 sample, และมันทำงานได้สำเร็จ! ทำให้ฉันคิดว่า Raspberry Pi อาจตัดสินใจไม่ส่งข้อความ printf ไปยัง serial console anymore, อีกต่อไป และอาจเปลี่ยนไปใช้ Raspberry Pi Debug Probe แทน แต่เราจะยังไม่ทำ เพราะว่าบทความนี้ต้องการให้เป็นโพสต์แบบสั้น ฉันจึงเลือกไปสร้างตัวอย่าง access_point แทน โดยใช้ขั้นตอนเดียวกับ wifi_scan
ยังคงไม่มีผลลัพธ์ปรากฏใน serial console แต่ access point ชื่อ picow_test กลับปรากฏขึ้นแทน หลังจากที่เชื่อมต่อกับ access point นั้นโดยใช้รหัสผ่านเริ่มต้นในโค้ด (“password”) แล้วถูกนำไปยังเว็บอินเทอร์เฟซ (web interface) ที่แสดงอยู่ด้านบน ซึ่งสามารถใช้เปิดหรือปิด LED ที่ติดตั้งมาในตัวได้
ทั้งหมดนั้นถือว่ายอดเยี่ยมมาก ตอนนี้เรามาทำการทดสอบ Bluetooth เรื่องสุดท้ายกัน, ตอนที่ Raspberry Pi Pico W เปิดตัวครั้งแรกเมื่อเดือนมิถุนายน 2022 ยังไม่มีการรองรับ Bluetooth ต้องรอจนกว่า Pico SDK 1.5 พร้อมใช้งาน ตอนนี้เรามาลองใช้หนึ่งในตัวอย่างโค้ด Bluetooth บนบอร์ด Pico 2 W กัน
cd ../../bt/hid_keyboard_demo make -j8 cp picow_bt_example_hid_keyboard_demo_background.uf2 /media/jaufranc/RP2350/
พบว่าในรายการอุปกรณ์มีตัวอย่าง “HID Keyboard Demo…” และก็สามารถจับคู่ (pair) ได้โดยไม่มีปัญหาอะไร
นั่นหมายความว่าทั้ง WiFi และ Bluetooth จะทำงานได้ทันทีที่เปิดตัว แม้ว่าฉันจะต้องใช้ develop branch เมื่อทดสอบ แต่คำแนะนำต่างๆ ก็แทบจะเหมือนกับรุ่นก่อนหน้า เรามั่นใจว่า Raspberry Pi จะปล่อย Pico C/C++ SDK และ MicroPython firmware สำหรับบอร์ด Pico 2 W ใหม่เร็วๆ นี้ สามารถซื้อบอร์ดนี้ได้จากตัวแทนจำหน่ายที่คุณชื่นชอบในราคา $7(~240฿) บวกภาษี ค่าส่ง และค่าใช้จ่ายอื่นๆ
แปลจากบทความภาษาอังกฤษ : $7 Raspberry Pi Pico 2 W board launched with 2.4 GHz WiFi 4 and Bluetooth 5.2 wireless module
บรรณาธิการข่าวและบทความภาษาไทย CNX Software ได้มีความสนใจในด้านเทคโนโลยี โดยเฉพาะ Smart Home และ IoT