This article was originally published on Predictable Designs (a company that helps entrepreneurs and makers develop new electronic hardware products). Download their free cheat sheet 15 Steps to Develop Your New Electronic Hardware Product.
The Internet of Things (IoT) is one of the hottest areas of new product development. By 2020 it is estimated there will be 50 billion IoT devices.
In this article I’ll show you the details behind a IoT reference design from Texas Instruments (TI) that offers Bluetooth Low-Energy, ZigBee, and 6LoWPAN wireless protocols.
TI has developed a IoT reference design they call SensorTag that’s purpose is to showcase their IoT system-on-a-chip called the CC2650.
The original SensorTag used TI’s CC2541. The newest SensorTag that is based on the CC2650 is a significant performance improvement over the original version.
The CC2650 is built on a much faster 32-bit Cortex-M3 microcontroller, versus the CC2541’s low-speed 8-bit 8051 microcontroller. Also, unlike the CC2541 which only offers Bluetooth Low-Energy, the CC2650 offers ZigBee and 6LoWPAN wireless protocols.
The SensorTag, as its name might imply, is loaded with various sensors including temperature, humidity, pressure, an accelerometer, a gyroscope and a magnetometer.
The SensorTag constantly transmits the data from these sensors using either Bluetooth Low-Energy (aka Bluetooth Smart), ZigBee, or 6LoWPAN.
TI’s CC2650 is known as a System On a Chip (SoC). It not only includes all of the circuitry for transmitting and receiving data via radio waves (called the transceiver) but it also includes a microcontroller that runs the required protocol stacks (firmware) and interfaces with all of the sensors.
There is a lot of functionality built into that little chip. It includes a Cortex-M3 32-bit microcontroller which is a very standard, and fairly powerful microcontroller.
Not only does the microcontroller control the wireless transceiver but it also can control external components, like sensors, buttons, LEDs, displays, etc.
This is because the CC2650 provides up to 31 general purpose I/O lines, various timers, analog-to-digital converters, a battery monitor, and various serial interfaces like I2C (a two-wire serial interface) and SPI.
The full schematic diagram for the SensorTag is available from Texas Instruments.The antenna
Bluetooth Low-Energy, ZigBee, and 6LoWPAN all use a carrier frequency of 2.4 GHz. There are two common choices when it comes to 2.4GHz antennas. Either a chip antenna or a PCB antenna.
The SensorTag uses a PCB antenna known as an Inverted-F antenna. A PCB antenna has the advantage of being essentially free because no extra component is necessary.
On the other hand a chip antenna can allow a smaller board size. PCB antennas also may require several board revisions to get them to work optimally.Crystal Oscillators
These generate precise frequency oscillations for timing the microcontroller and communications with the various sensors.
Quartz crystal oscillators revolutionized the watch industry decades ago. These oscillators use the piezoelectric effect which is when a crystal vibrates at a frequency proportional to the pressure applied to it.
The SensorTag uses two crystals: one at 24 MHz and one at 32.768 kHz.External Memory Storage
Although the CC2650 includes 128kB of built-in FLASH memory, the SensorTag also includes an additional 512kB of FLASH memory. This extra memory is provided by the W25X40CLUXI from Winbond Electronics.
All of the sensors are microchip based solutions. They all include analog-to-digital converters on-chip allowing them to output data in digital format via the popular two-wire serial interface, I2C.Accelerometer / Gyroscope / Magnetometer
InvenSense MPU-9250 — The MPU-9250 is a multi-chip module consisting of two dies integrated into a single package. One die houses the 3-axis gyroscope and the 3-axis accelerometer. The other die houses the AK8963 3-axis magnetometer from Asahi Kasei Microdevices.
Hence, the MPU-9250 is known as a 9-axis motion sensing device that combines a 3-axis gyroscope, 3-axis accelerometer, 3-axis magnetometer and a Digital Motion Processor™ (DMP).
The MPU-9250 communicates with the primary system microcontroller via either I2C or SPI serial interfaces.
I2C (and secondly SPI) are by far the most common communication protocols used by sensors.
An accelerometer measures proper acceleration or g-force which is different than measuring the rate of velocity change. For example, an accelerometer will measure 9.8 m/s² (1 g) when stationary on the Earth.
This is the acceleration caused by the Earth’s gravity. It’s actually during free fall that an accelerometer will measure zero (0 g). The InvenSense accelerometer can measure up to +/- 16 g’s.
A gyroscope measures orientation along 3-axises. For many products it is critical for it to know which way is up. That’s the function of a gyroscope.
A magnetometer measures magnetic field strength, and in the case of the MPU-9250, it measures it along 3 axes.
A magnetometer is usually used as a compass, but can also be used for other functions like a metal detector (limited to detecting only magnetic, or ferrous metals).
All of these sensors are created using a technology called Micro-Electro-Mechanical Systems (MEMS). MEMS is a technology that allows super small electro-mechanical devices, like sensors and actuators, to be created alongside the electronic devices on a microchip.Humidity Sensor
Texas Instruments HDC1000YPA — The HDC1000YPA measures humidity using a capacitive sensor. A capacitor is a device that stores electrical energy.
A capacitor consists of two conductive plates separated by an insulating dielectric material. The dielectric material’s properties are sensitive to moisture causing the capacitance to vary with humidity. This effect is used to measure humidity.
The HDC1000YPA also includes a temperature sensor that outputs the temperature of the chip itself, instead of a distant object like the next component. Both the humidity and chip temperature are passed to the microcontroller via I2C.Infrared Temperature Sensor
Texas Instruments TMP007 — The TMP007 measures the infrared energy emitted by an object to determine the object’s temperature. It passes this measurement value on to the microcontroller via either an I2C or SMBus interface.
This method allows temperature measurement of an object without the need to ever make physical contact.Pressure Sensor
Bosch Sensortec BMP280 — This chip measures barometric pressure which can be used for weather forecasting and altitude measurements. It interfaces with the CC2650 microcontroller via either I2C or SPI serial ports.
Before a big storm the barometric pressure drops so measuring it is a critical for weather forecasting.
Also as you go up in altitude the barometric pressure drops at a predictable rate.Digital Microphone
Knowles SPH0641LU4H — This is a digital microphone chip known as a MEMS (Micro-Elecrtro-Mechanical-System) device. This microphone gives the SensorTag the ability to transmit audio.Light Sensor
Texas Instruments OPT3001 — This is a sensor that detects the intensity of visible light. The spectral response of this sensor closely matches the human eye and includes a significant reduction of Infrared (IR) light.
The measured light intensity value is sent to the CC2650 microcontroller via the I2C serial interface.
One big improvement made with this version of the SensorTag is the addition of a port for connecting up external devices.
DevPack plug-in modules allow you to extend the functionality of the SensorTag by adding features such as display, lighting, capacitive touch, new sensors and much more.
You can also design your own packs to interface with the SensorTag via the DevPack port.
The SensorTag is powered from a single 3V lithium coin cell battery. It also has the option of adding a AAA battery pack.
The original SensorTag used a TPS62730 buck regulator to down convert the 3V battery to only 2.1V. The new version instead powers all of the circuits directly from the battery without any extra internal regulation.
A Texas Instruments TPS2291 load switch is placed between the battery and the other circuits so as to provide a controlled voltage ramp up of the supply voltage.
In general, there are two types of voltage regulators — linear, and switching.
A linear regulator (sometimes called a Low-DropOut regulator or just LDO) is simple but very inefficient. They waste lots of energy as heat). They are especially wasteful when the input voltage is much higher than the output voltage, wasting as much as 90% of the input power.
The primary advantages of a linear regulator is they generate a very clean output, they’re simple, and cheap.
A switching regulator, like the TPS62730 used in the original SensorTag, on the other hand is very efficient, usually only wasting 5–15% of their input power. However, they are very complex circuits compared to linear regulators.
In simple terms, they work by switching on/off while using an inductor and capacitor as temporary energy storage elements. For example, the original SensorTag had a regulator switching frequency of 2 MHz.
Originally published at predictabledesigns.com.