Skip to the content
2 layers38.6 × 72.1 mmBwlr1b, the printed circuit board in 3D

Teapot BWLR1B: Wireless Environmental Sensor over LoRa

Size
38.6 × 72.1 mm
Copper layers
2
Thickness
1.6 mm
Parts
42
Nets
31
Pads
116
Tracks, vias
280, 30
Pours
2
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
29 Jul 2022
Updated
27 Nov 2024

Overview

Bwlr1b is an open-source printed circuit board by teapotlaboratories, from the teapotlaboratories/bwlr1b repository on GitHub, published under the MIT licence. It is a 2-layer board of 38.6 × 72.1 mm with 42 parts on 31 nets, routed with 280 tracks and 30 vias.

It is built around the BME680, RAK3172-SIP and CR2450, with the AO3407 among its other parts. Its parts include 14 capacitors, 5 resistors, 2 ICs, 2 switches and 1 transistor. It belongs with the radio and wireless and sensors and measurement boards and the STM32 boards of this library.

Main components

4

README

readme.md

Teapot BWLR1B

drawing

Teapot BWLR1B is a wireless LoRa environmental sensor capable of sensing temperature, humidity, air pressure and air quality using the on-board BME680. By using an STM32WLE MCU, the device is capable of multi-year operation before changing the batteries

Teapot BWLR1B is part of Teapot open-hardware project.

Sponsorship

We sincerely thank PCBWay for their sponsorship and support. Their high-quality rapid-prototyping services, including PCB Board manufacturing, PCB Assembly, and 3D Printing, have been a great asset to our work. We truly appreciate their attention to detail in helping us:

  • Identify design issues
  • Verify our BOM (Bill of Materials)
  • Verify the final product after assembly

On top of their technical expertise, their customer support has been responsive, and easy to work with.

Disclaimer

  • The 1KM+ range have not been verified yet
  • The position of the BME680 sensor on the board might not be the most efficient

Future Works

  • Change SW4 wiring from GND to 3V3, to allow booting to STM32WLE USART Bootloader. This enable the user to flash the RAK3172 module using STM32CubeProgrammer without ST-Link.

Specification

  • RAK3172: An STM32WLE5CC module
  • 3.3V only power/pin.
  • 2uA Deep-Sleep
  • BME680 for Environmental Sensing
  • Switchable TX Power. 14 dBm(50mA) or 22 dBm(140mA) ( on 915MHz frequency )
  • Supports LoRaWAN 1.0.3
  • 1KM+ Range
  • UART2 breakout for Arduino progamming
  • SWD breakout for Mbed OS/STM32Cube programming
  • SMA antenna connector
  • CR2450 battery holder xor AA battery holder
  • Capacitor ( optional to prolong CR2450 usage )

Based-on TI's White Paper, using coin-cell to draw short high-power pulses (~40mA) is possible, but will reduce the effective capacity of the battery. The White Paper proposed a solution to increase the effective capacity

Schematics

schematic

Boards

drawing

Built using KiCAD v6, the board is design to be as small as possible when operated using CR2450 coin-cell batteries

Design

The device designed to be operable using 2x CR2450 coin cell batteries xor the standard 2x AA batteries. By using the RAK3172 module, it is possible to use the IPEX variant of the module and use a PCB antenna connected to the IPEX port on the RAK3172 module.

Top BoardBottom Board with AA or CR2450 Battery

drawing

drawing

drawing

Case

The cases are available for the CR2450 variant and the AA variant, 3D printable with any generic 3D printer with/without suppport (depends on the orientation). The STL files are available here

drawing

Measurement

Power consumption and solar charging current are measured using Nordic PPK2. The following are the summary of the measurement:

  • Transmit 14dBm: 446ms @ 43mA
  • Deep-Sleep : 2 uA

deep_sleep
Deep-Sleep

bme688_measure_and_lora_transmit
BME688 Measure and LoRa Transmit

More measurement can be found here

Bill Of Materials

Most of the components are generic and can be bought from any electornics/semi-conductor distributor. RAK3172 is the only component available in RAKwireless store.. The bill of materials can be downloaded here

:warning: Be sure to buy the RAK3172 variant without IPEX to use the SMA connector

IdDesignatorPackageQuantityDesignationSupplier and refNotes
1BT2BatteryHolder_Keystone_2462_2xAA12x AAMutual Exclusive with BT3 and BT1
2BT3,BT1BatteryHolder_Keystone_3008_1x24502CR2450Mutual Exclusive with BT2
3C5,C12,C11,C3C_1206_3216Metric_Pad1.33x1.80mm_HandSolder4100nF
4C9,C8,C10,C2,C4,C13,C14,C6,C1,C7CP_EIA-3528-15_AVX-H_Pad1.50x2.35mm_HandSolder10330uFOptional
5J3SMA_Amphenol_132289_EdgeMount1915MHz SMA
6Q1SOT-231AO3407
7R5R_1206_3216Metric_Pad1.30x1.75mm_HandSolder11K
8R7,R2,R3,R6R_1206_3216Metric_Pad1.30x1.75mm_HandSolder410K
9SW3SW_SPST_Omron_B3FS-100xP1RESET
10SW4SW_SPST_Omron_B3FS-100xP1BOOT
11U1BME680-PSON80P300X300X100-8N1BME680
12U2RAK3172 without IPEX1RAK3172RAKwireless

Programming

Programming the device can be done over the UART2 or SWD, available next to the SMA antenna port. Out of the factory, the RAK3172 chip ships with an AT firmware that can be tested by connecting a USB-to-UART bridge to the UART2 port.

The following are some very good tutorial to start developing with the device:

For connecting to the UART2 port, use any USB-to-UART bridge module. In testing, the Sparkfun board is used for communication with AT firmware and programming over Arduino.


Sparkfun USB-to-UART Bridge

:warning: Be sure to only use 3.3V module. Do not 5V module

For connecting to the SWD port, use ST-Link v2 in-circuit debugger and programmer from STM. In testing, ST-Link v2 clone will not work. The ST-Link v2 should atleast be reconizeable by the STM32CubeProgrammer. A cheap and alternative way to get an authorized ST-Link is to buy a Nucleo board, cut the top part which contain the ST-Link and use it as an external programmer.


ST-Link v2 from a Nucleo Development Board

Here are some good tutorial to convert a Nucleo to and external ST-Link v2:

Reference

The project won't be possible without the amazing work from people across the globe. The following are the reference to those awesome projects:

License

The product is open-source! However, some part of library used under src, might have it's own license. Please reach out or create a ticket to report any license violation.

License: MIT

Parts

42
QtyValueFootprintReferences
10330uFCapacitor_Tantalum_SMD:CP_EIA-3528-15_AVX-H_Pad1.50x2.35mm_HandSolderC1, C2, C4, C6, C7, C8, C9, C10, C13, C14
4100nFCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC3, C5, C11, C12
410KResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR2, R3, R6, R7
2CR2450Teapot:BatteryHolder_Keystone_3008_1x2450BT1, BT3
11KResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR5
12x AATeapot:BatteryHolder_Keystone_2462_2xAABT2
1915MHz SMATeapot:SMA_Amphenol_132289_EdgeMountJ3
1AO3407Package_TO_SOT_SMD:SOT-23Q1
1BME680Teapot:BME680-PSON80P300X300X100-8NU1
1BOOTButton_Switch_SMD:SW_SPST_Omron_B3FS-100xPSW4
1GNDTestPoint:TestPoint_Keystone_5019_MinatureTP7
1LOGOTeapot:EdgeCut_BWLR2G***
1LOGOTeapot:TeapotLogoG***
1LOGOTeapot:TextLogo_BWLR1BG***
1LOGOTeapot:TextLogo_TeapotG***
1RAK3172Teapot:RAK3172U2
1RESETButton_Switch_SMD:SW_SPST_Omron_B3FS-100xPSW3
1RFTestPoint:TestPoint_THTPad_D2.0mm_Drill1.0mmTP8
1RSTTestPoint:TestPoint_Keystone_5019_MinatureTP5
1RXD2TestPoint:TestPoint_Keystone_5019_MinatureTP4
1SWCLKTestPoint:TestPoint_Keystone_5019_MinatureTP6
1SWDIOTestPoint:TestPoint_Keystone_5019_MinatureTP3
1TXD2TestPoint:TestPoint_Keystone_5019_MinatureTP2
1USER0Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm_NumberLabelsJP1
1USER1Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm_NumberLabelsJP2
1VCCTestPoint:TestPoint_Keystone_5019_MinatureTP1

Similar boards

  • 2 layers36.8 × 90.9 mmBwlr3d, the printed circuit board in 3D

    Bwlr3d

    teapotlaboratories/bwlr3d

    Teapot BWLR3D: Asset Tracker and Environmental Sensor with Solar Energy Harvesting

    108 parts18MIT
  • 4 layers184.3 × 131 mmPortaPi R1, the printed circuit board in 3D

    PortaPi R1

    JakeBoothy/PortaPi

    A portable Raspberry Pi Zero W2

    199 parts
  • 2 layers51 × 37 mmRAK proto board, the printed circuit board in 3D

    RAK proto board

    i2hm/micro_climate_station

    Open the KiCad project using KiCad 7 and above.

    40 parts3
  • 2 layers69 × 100 mmSy99 8mbex, the printed circuit board in 3D

    Sy99 8mbex

    wohali/sy99_8mbex

    v1.0 - Fabricated July/August 2018 - has issues, do not use

    43 parts3
  • 2 layers44.9 × 114.1 mmBSidesCBR2019, the printed circuit board in 3D

    BSidesCBR2019

    BSidesCbr/2019badge

    38 parts2
  • 4 layers47.6 × 42.4 mmHeart, the printed circuit board in 3D

    Heart

    lime7git/heart

    A small gift. Heart shape PCB with STM32L0 microcontroller, gpio expander, accelerometer and some fancy leds.

    68 parts2
  • 4 layers80 × 80 mmEPS, the printed circuit board in 3D

    EPS

    4111Spyglass/Hardware_CSAT

    243 parts1
  • 4 layers36 × 36 mmTempHumiditySensor Pro, the printed circuit board in 3D

    TempHumiditySensor Pro

    DAWN-cxx/smart-temp-humidity-sensor-pro-pcb

    A 4-layer low-power BLE temperature and humidity sensor PCB designed with KiCad 8.0.

    28 parts

Questions

How big is the Bwlr1b PCB?

It measures 38.6 × 72.1 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Bwlr1b use?

42 parts, built around the BME680, RAK3172-SIP, CR2450 and AO3407. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Bwlr1b KiCad files?

From the teapotlaboratories/bwlr1b repository on GitHub, at the commit this page was made from: the board is hardware/kicad/bwlr1b.kicad_pcb and its schematic hardware/kicad/bwlr1b.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Bwlr1b design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).