ThirdReality Temperature and Humidity Sensor Lite
Overview
The ThirdReality Temperature and Humidity Sensor Lite integrates the BL704L SoC from Bouffalo Lab. Internally, the device breaks out the pinout for JTAG, as well as UART and the bootstrap pin, making it perfectly suited for development. BL704L is a highly integrated 802.15.4 (Zigbee/Thread/Matter) and BLE combo chipset for IoT applications.
Hardware
Pins 17-20 are broken out on the JTAG header.
For more information about the BouffaloLab BL704L MCU and the device:
Supported Features
The 3r_tnh_sensor_lite board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo -
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
3r_tnh_sensor_lite/bl704l10q2i target
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
SiFive E24 Standard Core CPU1 |
|
ADC |
on-chip |
Bouffalolab ADC1 |
|
Cache |
on-chip |
Bouffalo Lab L1C cache control1 |
|
Clock control |
on-chip |
||
on-chip |
Bouffalolab F32K clock1 |
||
on-chip |
The BL70x/L DLL1 |
||
on-chip |
Bouffalolab Root Clock Represents both FCLK and HCLK depending on their presence, which should be kept the same1 |
||
on-chip |
The BCLK clock, or peripheral clock Source -> / divider -> This Clock1 |
||
on-chip |
BFLB Flash Clock Source -> divider -> CLK Only has settings for Bank 1 on BL61x (boot flash) at the moment1 |
||
on-chip |
Bouffalolab BL70x(L) Clock Controller1 |
||
Cryptographic accelerator |
on-chip |
Bouffalo Lab SEC Engine TRNG (True Random Number Generator)1 |
|
on-chip |
Bouffalo Lab SEC Engine SHA hardware accelerator1 |
||
on-chip |
Bouffalo Lab SEC Engine AES hardware accelerator1 |
||
DMA |
on-chip |
Bouffalo Lab DMA1 |
|
Flash controller |
on-chip |
Bouffalolab Flash Controller1 |
|
GPIO & Headers |
on-chip |
Bouffalo Lab BL60x and BL70x GPIO node1 |
|
I2C |
on-chip |
Bouffalolab I2C interface1 |
|
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
RISC-V CPU interrupt controller1 |
|
on-chip |
RISC-V Core Local Interrupt Controller CLIC Pre-Standard v0.91 |
||
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
on-board |
Group of PWM-controlled LEDs1 |
||
MTD |
on-board |
Flash node1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory1 |
||
Pin control |
on-chip |
Bouffalo Lab Pinctrl node1 |
|
Power management |
on-chip |
Bouffalolab Power Controller1 |
|
PWM |
on-chip |
Bouffalolab PWM 11 |
|
on-chip |
Bouffalolab PWM 21 |
||
Regulator |
on-chip |
Bouffalolab HBN SoC (CPU, Memory, etc) voltage regulator It is a LDO with a canonical voltage of 1.10v It has two modes, but they are only switched between when going into sleep mode and do not share settings areas1 |
|
on-chip |
Bouffalolab HBN AON (Always ON section) voltage regulator It is a LDO with a canonical voltage of 1.10v It has two modes, but they are only switched between when going into sleep mode and do not share settings areas1 |
||
Sensors |
on-board |
Sensirion SHT4x humidity and temperature sensor1 |
|
Serial controller |
on-chip |
Bouffalo Lab UART1 |
|
SPI |
on-chip |
Bouffalolab SPI1 |
|
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
System controller |
on-chip |
BouffaloLab Efuse1 |
|
Timer |
on-chip |
RISC-V Machine Timer1 |
|
Watchdog |
on-chip |
Bouffalo Lab Watchdog Timer1 |
System Clock
The Device is configured to run at max speed (128MHz).
Serial Port
The 3r_tnh_sensor_lite board uses UART0 as default serial port.
Programming and Debugging
The 3r_tnh_sensor_lite board supports the runners and associated west commands listed below.
| flash | debug | debugserver | rtt | attach | |
|---|---|---|---|---|---|
| bflb_mcu_tool | ✅ (default) | ||||
| openocd | ✅ | ✅ (default) | ✅ | ✅ | ✅ |
Samples
Build the Zephyr kernel and the Hello World sample application:
# From the root of the zephyr repository west build -b 3r_tnh_sensor_lite samples/hello_world west flash
Run your favorite terminal program to listen for output. Under Linux the terminal should be
/dev/ttyUSB0. For example:$ screen /dev/ttyUSB0 115200
Connection should be configured as follows:
Speed: 115200
Data: 8 bits
Parity: None
Stop bits: 1
Then, press and release RST button
*** Booting Zephyr OS build v4.3 *** Hello World! 3r_tnh_sensor_lite/bl704l10q2i
Congratulations, you have 3r_tnh_sensor_lite configured and running Zephyr.