Raspverry Pi Pico W의 무선 기능은 Infineon CYW43439를 사용한다. 이 장치에는 802.11n Wi-Fi와 Bluetooth 5.2를 모두 제공하는 2.4GHz 무선 장치가 포함되어 있으며 Bluetooth Classic 및 BLE(Bluetooth Low Energy) 기능을 지원한다. 기존에는 Bluetooth가 아닌 Wi-Fi만 지원했는데 이제 BLE를 지원 한다고 한다.
C SDK 버전 1.5.1 과 최신 MicroPython 에서 Pico W가 Bluetooth 및 Bluetooth LE 장치를 사용할수 있다. 특히 ACL/SCO를 일시적으로 제외하고 BLE Central 및 Peripheral 역할과 함께 Bluetooth Classic을 지원한다고 한다.
우선 Pi Pico의 최신 보드파일로 업데이트 한다.
그리고 Blutooth를 사용하기 위해 Stack를 설정한다.
가장 쉽게 테스트 해 볼 수 있는 Bluetooth Keyboard 예제를 테스트 해 보자.
확장 테스트 보드의 스위치는 GP9~11에 연결되어 있다.
#include <KeyboardBT.h>
#define SW1_PIN 11
#define SW2_PIN 10
void setup() {
pinMode(SW1_PIN, INPUT_PULLUP);
pinMode(SW2_PIN, INPUT_PULLUP);
// open the serial port:
Serial.begin(115200);
Serial.println("BT KeyBoard Start!");
// initialize control over the keyboard:
KeyboardBT.begin();
}
void loop() {
if(!digitalRead(SW1_PIN))
{
Serial.println("Key1 Send");
KeyboardBT.write('A');
delay(300);
}
if(!digitalRead(SW2_PIN))
{
Serial.println("Key2 Send");
KeyboardBT.write('B');
delay(300);
}
}
펌웨를 구동하면 PicoW BT Keyboard를 인식할 수 있다.
확장 테스트 보드의 스위치를 누르면 Blutooth Key 값이 전송되는 것을 확인 할 수 있다.
반응형