New Waveshare IoT board uses Raspberry Pi Zero form factor, brings cellular connectivity and a custom version of MicroPython

Waveshare BG95-M3 Zero
(Image credit: Shutterstock)

Waveshare has announced its BG95-M3 Zero, a single-board computer (SBC) that offers cellular connectivity as well as compatibility with Raspberry Pi HAT add-ons. It features its own processor and ships with Quectel’s QuecPython MicroPython firmware for easy programming.

The BG95-M3 Zero is in a Raspberry Pi Zero form factor (65 x 30 mm) and integrates an Arm Cortex-A7 processor running ThreadX RTOS. Most Quectel modules for cellular Internet of Things (IoT) usage depend on another board for a host processor. This allows hobbyists and IoT manufacturers to develop smaller smart products with cellular capabilities since there’s no need for an additional SBC to run the show.

This development board is equipped with a BG95-M3 module, which supports LTE Cat M1, LTE Cat NB2, and EGPRS cellular networking worldwide. It also supports GNSS positioning using GPS, GLONASS, BDS,  Galileo, and QZSS. The SBC includes an onboard nano SIM card slot positioned near the edge of the board for easy insertion and removal.

Swipe to scroll horizontally
Cellular Frequency Bands for Waveshare Boards
Header Cell - Column 0 BG95-M3 ZeroEC200U-EUEC200U-AU
LTE-FDDCat M1: B1, B2, B3, B4, B5, B8, B12, B13, B18, B19, B20, B25, B26, B27, B28, B66, B85B1, B3, B5, B7, B8, B20, B28B1, B2, B3, B4, B5, B7, B8, B28, B66
Row 1 - Cell 0 Cat NB2: B1, B2, B3, B4, B5, B8, B12, B13, B18, B19, B20, B25, B28, B66, B71, B85Row 1 - Cell 2 Row 1 - Cell 3
LTE-TDDN/AB38, B40, B41B38, B40, B41
GSM/GPRS/EDGE850, 900, 1800, 1900 MHzGSM: B2, B3, B5, B8GSM: B2, B3, B5, B8
Maximum Downlink/Uplink Speeds (LTE)Cat M1: DL: 588Kbps; UL: 1119KbpsLTE-FDD: DL 10 Mbps; UL 5 MbpsLTE-FDD: DL 10 Mbps; UL 5 Mbps
Row 5 - Cell 0 Cat NB1: DL 32 Kbps; UL 70 KbpsLTE-TDD: DL 8.96 Mbps; UL 3.1 MbpsLTE-TDD: DL 8.96 Mbps; UL 3.1 Mbps
Row 6 - Cell 0 Cat NB2 – DL: 127 Kbps; UL: 158.5 KbpsRow 6 - Cell 2 Row 6 - Cell 3
Maximum Downlink/Uplink Speeds (GSM/GPRS/EDGE)EDGE: DL 296 Kbps; UL 236.8 KbpsGSM: DL 85.6 Kbps; UL 85.6 KbpsGSM: DL 85.6 Kbps; UL 85.6 Kbps
Row 8 - Cell 0 GPRS: DL 107 Kbps; UL 85.6 KbpsRow 8 - Cell 2 Row 8 - Cell 3
GNSSGPS, GLONASS, BDS, Galileo, QZSSGPS, GLONASS, BDS, Galileo, QZSSGPS, GLONASS, BDS, Galileo, QZSS
BluetoothN/ABluetooth 4.2 (BR/EDR)Bluetooth 4.2 (BR/EDR)
Wi-Fi ScanN/A2.4 GHz 11b (Rx)2.4 GHz 11b (Rx)

A group of five LEDs on the board indicate operating status. These include power, sleep, and network indicators. There’s also an LED that illuminates when a SIM card is inserted as well as a PWM function indicator.

Waveshare BG95-M3 Zero SBC

The Waveshare BG95-M3 Zero SBC (Image credit: Waveshare)

The Waveshare BG95-M3 Zero has a 40-pin GPIO header and a USB Type-C port for flashing the firmware. The BG95-M3 Zero integrates an onboard MIPI interface for connecting to MIPI displays and Raspberry Pi peripheral devices. The board also has an onboard camera interface to support customized SPI cameras up to 30MP.

Pinout definition for Waveshare BG95-M3 Zero board

Pinout definition for Waveshare BG95-M3 Zero board (Image credit: Waveshare)

While the BG95-M3 Zero doesn’t offer Bluetooth or Wi-Fi support, Waveshare does produce larger boards with expanded networking capabilities. The EC200U-EU is available in Europe, the Middle East, Africa, Australia, New Zealand, and Brazil. There’s also the EC200U-AU available in Australia and Latin America.

Swipe to scroll horizontally
Additional specifications for Waveshare BG95-M3 development boards
Header Cell - Column 0 BG95-M3 ZeroEC200U-EU, EC200U-AU
Type-C USB PortSupports AT commands testing, GNSS positioning, firmware upgrading, etc.Supports AT commands testing, GNSS positioning, firmware upgrading, etc.
Communication protocolPPP, TCP, UDP, SSL, TLS, FTP(S), HTTP(S), NITZ, PING, MQTT, LwM2M, CoAP, IPv6 TCP, UDP, PPP, NITZ, PING, FILE, MQTT, NTP, HTTP, HTTPS, SSL, FTP, FTPS, CMUX, MMS
SIM cardNano SIM card (supports 1.8V only)Nano SIM and eSIM, dual card single standby
IndicatorSIM_CHK: lights up when a SIM card is inserted into the card slotP01: Module Pin 1, default as EC200A-XX PWM0
Row 4 - Cell 0 NET: Network indicatorP05: Module Pin 5, NET_MODE indicator
Row 5 - Cell 0 PSM: Sleep indicatorSCK1: SIM1 detection indicator, lights up when SIM1 card is inserted
Row 6 - Cell 0 PWM: PWM function indicatorSCK2: SIM2 detection indicator, lights up when SIM2 card is inserted
Row 7 - Cell 0 PWR: Power indicatorPWR: Power indicator
ButtonsPWK: Power ON/OFFPWK: Power ON/OFF
Row 9 - Cell 0 PON: PSM wake-upRST: Reset
Row 10 - Cell 0 BOOT: Forcing into firmware burning modeBOOT: Forcing into firmware burning mode
Row 11 - Cell 0 USB ON/OFF: USB power consumption detection switchUSB ON/OFF: USB power consumption detection switch
Antenna ConnectorsLTE main antenna + DIV antenna + GNSS antennaLTE main antenna + DIV / WIFI (scanning only) / Bluetooth antenna + GNSS antenna
Operating Temperature-30 ~ 75°CRow 13 - Cell 2
Storage Temperature-45 ~ 90°CRow 14 - Cell 2

Programming the SBC is done through QPYcom, a specialized development and debugging tool for QuecPython. QPYcom is Windows-only, but Waveshare notes that you can use plugins for Thonny IDE. VSCode, and other IDEs to program the board.

Jeff Butts
Contributing Writer

Jeff Butts has been covering tech news for more than a decade, and his IT experience predates the internet. Yes, he remembers when 9600 baud was “fast.” He especially enjoys covering DIY and Maker topics, along with anything on the bleeding edge of technology.