• sales

    +86-0755-88291180

Raspberry Pi Pico Pico-BLE User Guide

Note

The module can only be connected to the mobile phone currently.
V1.1 (purchased after 2022/02/20), supports connection with Raspberry PI.

Product introduction

The Pico-BLE is a dual-mode Bluetooth 5.1 expansion module designed for Raspberry Pi Pico, which is controlled via UART AT commands, with SPP and BLE support. Combined with the Raspberry Pi Pico, it can be used for Bluetooth wireless communication applications.

Product Features

  • Standard Raspberry Pi Pico header, supports Raspberry Pi Pico series.
  • Controlled via UART AT commands, get started quickly.
  • Comes with development resources and manual (Raspberry Pi Pico C/C++ and MicroPython examples).

Specifications

  • Input voltage: 3.3V/5V
  • Communication: UART
  • Communication rate: up to 1,000,000 bps
  • Dimensions: 56.5 × 21mm

Pinout


Product Size



Get Started with Pico

Firmware Download

MicroPython Firmware Download

C_Blink Download

Examples

For the Pico-BLE module, we provide an serial example. Hereby we take C codes to explain the function.

Hardware interface

BLE.c

The Bluetooth module initialization function mainly judges whether the Bluetooth module is successfully connected to the mobile phone, whether the notify function is enabled, querying the baud rate of the Bluetooth module, judges whether it is in low power mode, name, address, and modifying the name of the module.

void BLE_Init()

Execute and process BLE commands

uint8_t Cmd_Process(uint8_t *data)
    data: the address of the command pointer to send

Transparent transmission receiving function, what data the mobile phone sends to the module, the module receives and returns the same data through this function

void UART_RX()     Query receive
void UART_RX_IRQ() Interrupt receive

Parameter modification

BLE.h

#define UART_ID uart0       Pico serial port selection
#define BAUD_RATE 115200    Serial port baud rate selection
#define DATA_BITS 8         Serial port data bits
#define STOP_BITS 1         Serial port data stop bits
#define PARITY UART_PARITY_NONE  Whether the serial port performs parity check
#define UART_TX_PIN 0       Pico serial port TX pin selection
#define UART_RX_PIN 1       Pico serial port RX pin selection
#define BLE_MODE_PIN 15     Bluetooth module status detection pin

Module command

CMD.h

For specific use, please refer to the user manual.

Demonstration

Mobile Phone APP Demo

Connect the Pico/Pico2 and Pico-BLE:
Open the Python demo and run:


Open the software on the smartphone. (This is just a demo, you can download any Bluetooth APP from the app store.)


Click to pair:


Click on Pairing and the following will appear on the computer and the phone:



Enter the data on your cell phone and click send (your computer will show you the screen where you sent it):


PS: Apps using the BLE protocol on the mobile side need to open the notify interface.

Computer AT command demonstration

Use the USB to the serial port module to connect the computer and Pico-BLE, open the SSCOM software, select the corresponding baud rate (the default is 115200), enter the command, and enable "carriage return and line feed" (must be, otherwise the command will be invalid).

The above command is a reset command, please refer to the user manual for more commands.

TAG: CM4 OpenWrt Tutorial Raspberry Pi Pico 2 RP2350 2.8 inch LCD Capacitive TouchScreen Development Board 240x320 Display QMI8658 6-Axis /PCM5101 Audio /SD /RTC /Battery Port Allwinner Camera Raspberry Pi 5 inch DSI MIPI LCD TouchScreen Display 7inch 720x1280 For Luckfox Lyra RK3506/ESP32-P4/Luckfox Omni3576 DeepSeek AI Voice Chat ESP32-S3 Box N16R8 AUDIO Board Support External LCD/Camera AI deepseek ESP32 IR Thermal Imaging Camera Raspberry Pi 5 Raspberry Pi 21.5inch FHD LCD 1080x1920 Capacitive TouchScreen Display For Raspberry Pi/Jetson Nano/ VGA to RGB RV1103 Raspberry Pi5 SpotPear STM32 1.5inch LCD Jetson Nano Fan Spotpear Industrial Modbus POE ETH RJ45 To Relay 30CH RTU/Modbus TCP-Ethernet For IOT Horizontal Drag Instructions ESP32 S3 2.1 inch Round LCD Development Board 480x480 TouchScreen Display LVGL HMI With QMI8658C 6-Axis Sensor Jetson Orin Nano UGV Beast PT ROS2 AI OpenCV Robot Car MediaPipe