Created by Reid Landsrud, last modified by Rolf HornFeb 22, 2016
The main intent of this project is to showcase TE Connectivity/Measurement Specialties’ sensor portfolio and Panasonic’s PAN1740 Bluetooth Low Energy module.
This project consists of two applications:
The first is a BLE server or peripheral that reads and serves up the sensor data. This is the standalone board that is battery operated with the three sensors on it: temperature, pressure, and humidity. This application can be interfaced to any BLE central that is capable of reading raw BLE packets, such as an Android, iOS, or custom application. This is also demonstrated in the Create a Weather Station with TE Connectivity sensors – Another Geek Moment.
The other is a BLE client or central that gathers the sensor data from the server, formats it, and prepares the data for transfer to a PIC32 via an SPI bus. This application was designed to interface with PICtail Plus Connector on Microchip’s Low-Cost Controllerless Graphics Board. The graphics interface is shown here: [PIC32 Low-Cost Controllerless Graphics Interface to Newhaven Color LCD]( PIC32 Low-Cost Controllerless Graphics Interface to Newhaven Color LCD - eewiki / Microcontroller - Engineering and Component Solution Forum - TechForum │ Digi-Key)
- Panasonic Bluetooth Low Energy Module PAN1740 (ENW-89846A1KF)
- Data sheet
- Design Guide
- Evaluation Kit
- PAN1740 Experimenter Kit
- Dialog Semiconductor (Free Login Required)
- Software Development Kit – SDK188.8.131.52
- Smart Snippets 3.8
- KEIL – MDK-ARM (µVision5) – Free Code size limited version is sufficient Download Page
- TE Connectivity TSYS01 Temperature Sensor G-NICO-018
- TE Connectivity MS5637 Pressure Sensor MS563702BA03-50
- TE Connectivity HTU21D Humidity Sensor HPP845E031R4
- STMicroelectronics 1 Mb EEPROM M24M01
Figure 1 shows the schematic of the sensor board. The PAN1740 provides the processing power for the board with the onboard Cortex M0 in the module. The sensors are interfaced via I2C bus, and the data is processed and broadcast via the Bluetooth module.
Figure 2 shows the basic layout of the board. Further detail on the 4 layer board layout and gerbers can be found in the attached resources.
Figure 3 shows the schematic of the client board that interfaces with the Controllerless graphics board. It utilizes the PICTail Plus board edge connector to interface with the SPI bus. With the lack of a 3.3v power pin on the connector, this board required a 3.3v regulator of its own.
Figure 4 shows the basic layout of the client board.
The firmware created for the Cortex M0 microcontroller that is embedded in the PAN1740 module was created in KEIL µVision 5 using Dialog Semiconductor’s SDK184.108.40.206.
The firmware on the BLE server board collects the raw data from the sensors and calculates actual values from the calibration data provided by the TE Connectivity sensors. It then uses a custom profile, which utilizes a 128-bit UUID, to transmit the data over the BLE connection. Using Dialog Semiconductor’s app note AN-B-029, will walk the developer through creating a custom profile.
The firmware on the BLE client board takes advantage of the custom profile from above to easily read the data made available on the BLE connection. The data is read in and stored, then transmitted over the SPI bus to the PIC32 for display.
The firmware for each board is stored on the external EEPROM. When the PAN1740 boots with an empty OTP memory, it searches for a program residing on an external device. This makes the module very versatile for development, as the EEPROM can be re-programmed many times. Once development has been completed the program can be burned to the OTP memory, allowing for the elimination of the EEPROM for added power savings and faster boot times.
The EEPROM can be programmed with Dialog’s SmartSnippets software using an FTDI USB – RS232 cable (TTL-232R-3V3) and small programming points integrated into the board layout.
Bill of Materials
This bill of materials would satisfy making one set.
|Quantity||Part Number||Description||BLE Client||BLE Server/Sensor|
|2||CKN10502CT-ND||SWITCH TACTILE SPST-NO 0.05A 16V||S1||S1|
|2||587-1880-1-ND||FERRITE BEAD 120 OHM 0603||L1||L1|
|2||497-6351-1-ND||IC EEPROM 1MBIT 1MHZ 8SO||U2||U2|
|7||399-1096-1-ND||CAP CER 0.1UF 16V X7R 0603||C1, C2||C1, C2, C3, C4, C5|
|4||YAG1238CT-ND||RES SMD 4.7K OHM 1% 1/10W 0603||R1,R2||R1,R2|
|2||P10KYCT-ND||RES SMD 10K OHM 0.1% 1/10W 0603||R4||R3|
|3||160-1828-1-ND||LED GREEN CLEAR 0603 SMD||D1, D2||D1|
|3||RHM100GCT-ND||RES SMD 100 OHM 5% 1/10W 0603||R3, R5||R4|
|1||478-3119-1-ND||CAP TANT 2.2UF 16V 20% 0603||C3|
|1||478-6201-1-ND||CAP CER 470PF 25V NP0 0603||C4|
|2||P16823CT-ND||MOD BLUETOOTH LOW ENERGY 4.0||U1||U1|
|1||576-1281-1-ND||IC REG LDO 3.3V 0.5A SOT23-5||U3|
|1||223-1134-ND||SENSOR TEMPERATURE I2C SPI 16QFN||U5|
|1||223-1199-1-ND||BAROMETRIC PRESSURE SENSOR||U4|
|1||223-1144-1-ND||IC SENSOR TEMP/HUM DGTL||U3|
|1||BAT-HLD-001-ND||HOLDER BATTERY 20MM COIN||BATT|
|1||AC164144-ND||LLC PICTAIL PLUS DAUGHTR BRD|
|1||DKSB1014B-ND||NHD-3.5-320240MF-PIC EVAL BOARD|
|1||DM320003-2-ND||KIT EVAL PIC32 USB II STARTER|