• Enter email to sit in the first row

Welcome to BBMagic METEO

BBMagic METEO is ultra low power module with Bluetooth Low Energy communication. It can work many months with little coin CR2032 battery. BBMagic METEO


BBMagic METEO Pinout

Pin number Description
1,8,20,22,23,24 GND – power and signal ground
2 Connect to GND to turn on Bluetooth transmission LED indication
3-6 Four GND active digital inputs sampling every time Bluetooth transmission starts
7,21 Supply voltage 2,1V – 3,6V
21,22 Pads for CR2032 battery holder: 21 (+) i 22 (-)
7,8,9 Pads for voltage regulator if you decide to power BBMagic METEO this way. Learn more here: Power it easy: BBMagic METEO Bluetooth Low Energy module
10 Supply voltage input for voltage regulator. More described here: Power it easy: BBMagic METEO Bluetooth Low Energy module
11,12 10k photoresistor pads
13,14 Inputs of analog to digital converter ADC_1 and ADC_2. Available voltage range: 0V-1,8V ; Resolution 1mV
18,19 Tx and Rx UART lines. Available voltage range: 0V-5V

BBMagic METEO – how does it work?

BBMagic METEO cycly measures and sends data through Bluetooth radio link every defined period of time.


  • Measurement accuracy +/-0,3 Celsius
  • Measurement resolution 0,04 Celsius
  • Operating range is from -40 Celsius to +125 Celsius
  • Typical response time is 15 seconds
  • Long term drift is less than 0,02 Celsius per year

Relative humidity

  • Measurement resolution 1% RH
  • Operating range is from 0 %RH to 100 %RH
  • Typical response time is 8 seconds
  • Long term drift is less than 0,25 %RH per year

Light level

  • measured with 10k photoresistor
  • Values from 0 to 255

Two ADC channels with 1mV resolution

  • ADC_1: from 0 to 1,8V
  • ADC_2: from 0 to 1,8V

Four digital inputs state

  • Low state active
  • Vcc pullup 25ms before sampling

How to receive data from BBMagic METEO?

Raspberry Pi zero W and Raspberry Pi 3 can receive data from BBMagic modules using bbmagic_lib library. You can get it from Download section.
Its very easy:

Make some helpful variables and buffer for data
unsigned char bbm_buf[100] ;
int len, ret ;

Open communication
ret = bbm_bt_open(0) ;
if(ret) exit(1) ;

Check if data has been received
len = bbm_bt_read(bbm_buf) ;
If so start processing
if(len > 0)
process_meteo_data(bbm_buf) ;

Library header file (bbmagic_lib.h) defines types of data sending by BBMagic METEO

bbm_buf[BBMAGIC_DEVICE_TYPE] module type ; BBMAGIC_M_METEO in this particular case
bbm_buf[BBM_METEO_TEMPER_LSB] bbm_buf[BBM_METEO_TEMPER_MSB] temperature, LSB and MSB. Divide by 100 to get temperature in Celsius
bbm_buf[BBM_METEO_HUM] relative humidity in range 0-100 RH
bbm_buf[BBM_METEO_LIGHT] light level in range 0-255
bbm_buf[BBM_METEO_V_SUP] supply voltage ; divide this value by 71 (BBMAGIC_VCC_DIVIDER) to have power supply voltage in volts
bbm_buf[BBM_METEO_ADV_TIME] next message from BBMagic METEO will arrive after this period of time ; multiply it by two to get time in seconds
bbm_buf[BBM_METEO_DIN_STATE] State of digital inputs DIN_0-DIN_3: four least significant bits ; 1 means low level
bbm_buf[BBM_METEO_ADC_1_MSB] bbm_buf[BBM_METEO_ADC_1_LSB] ADC_1 input voltage in mV
bbm_buf[BBM_METEO_ADC_2_MSB] bbm_buf[BBM_METEO_ADC_2_LSB] ADC_2 input voltage in mV
bbm_buf[BBM_METEO_WORKTIME_0] amount of time from module power up – in seconds ; byte 0 – LSB
bbm_buf[BBM_METEO_WORKTIME_1] amount of time from module power up – in seconds ; byte 1
bbm_buf[BBM_METEO_WORKTIME_2] amount of time from module power up – in seconds ; byte 2
bbm_buf[BBM_METEO_WORKTIME_3] amount of time from module power up – in seconds ; byte 3 – MSB
bbm_buf[BBMAGIC_DEVICE_ADDR_0] module address byte 0 – LSB
bbm_buf[BBMAGIC_DEVICE_ADDR_1] module address byte 1
bbm_buf[BBMAGIC_DEVICE_ADDR_2] module address byte 2
bbm_buf[BBMAGIC_DEVICE_ADDR_3] module address byte 3
bbm_buf[BBMAGIC_DEVICE_ADDR_4] module address byte 4
bbm_buf[BBMAGIC_DEVICE_ADDR_5] module address byte 5 – MSB
bbm_buf[BBMAGIC_DEVICE_RSSI] radio signal strength indicator in dBm ; U2 coded
Get source code of bbm_scanner application from Download section and learn how to receive and process data from all BBMagic modules !!

bbm_scanner app

BBMagic METEO modes of operation

Mode Measurement period
1 2 seconds
2 10 seconds
3 1 minute
4 5 minutes
Remember: The shorter the period the more energy is needed.

How to set/change working mode

  • turn off the power of the module
  • push configuration button
  • turn on BBMagic power holding the button pressed
  • hold the button pressed while LED flashing: 1 flash – work mode = 1, 2 flashes – work mode = 2, etc.
  • release the button
  • LED turns off for about 2 seconds and then flashes few times, depending on configured work mode: 1 flash – configured mode = 1, 2 flashes – configured mode = 2, etc.

Every time you turn BBMagic METEO power on onboard LED flashes:

  • 1 time – the module work mode is 1 – measurement period is 2 seconds
  • 2 times – the module work mode is 2 – measurement period period is 10 seconds
  • 3 times – the module work mode is 3 – measurement period period is 1 minute
  • 4 times – the module work mode is 4 – measurement period period is 5 minutes


  • Bluetooth Smart also called as Bluetooth Low Energy
  • Transferong data is encrypted and signed with AES-128
  • Configurable sampling and sending time period: 2 seconds, 10 seconds, 1 minute or 5 minutes
  • You can collect and process data with Raspberry Pi, Arduino, etc.
  • Library for easy programming


  • 3V CR2032 battery – onboard pads for battery holder: 21 (+) and 22 (-)
  • 2 x 1,5V AA or AAA batteries – onboard pins for wires soldering: 7 (+) and 8 (-)
  • 2 x 1,2V NiCd or NiMH rechargeables – onboard pins for wires soldering: 7 (+) and 8 (-)
  • any source you want within 2,1V to 3,6V – connect to pins 7 (+) and 8 (-)
  • with voltage regulator – connect ‘+’ to 10, and ‘-‘ to 22, 23 or 24. Onboard pads 7,8,9 for TO-92 voltage regulator (ex. L78L33, TS2950CT-3.3, LP2950CZ-3.3RAG, MCP1702-3302E, LM2936Z-3.3, LT1121CZ-3.3). Learn more about voltage reg here: Power it easy: BBMagic METEO Bluetooth Low Energy module
Are you interested in
DHT11 vs DHT22 vs BBMagic METEO sensors parameters comparison
Raspberry Pi SSH
Data transferring period configuration
Read more
BBMagic METEO chart 3d
Measurements without miles of wires?
Read more
Tagged , . Bookmark the permalink.

Comments are closed.