Low Power
Low Power
Low Power
Description Features
This reference design explains how to use the TI • Meets EN13757-4 Class HR Requirements for
wireless metering-bus (M-Bus) stack for CC1310 and Sensitivity and Selectivity and Class HT for
CC1350 wireless MCUs and integrate it into a smart Transmit Power in S-, T-, and C-Modes
meter or data collector product. This software stack is • Complete Single-Chip Implementation With Serial
compatible with the Open Metering System (OMS) Interface to Host MCU
v3.0.1 specification. EN13757-1 through EN13757-7 • Consumes Only 0.7 µA at 3.6 V in Shutdown Mode
are European standards for meter reading and include
both wired and wireless M-Bus; these together are • Embedded (API Level) Interface for Combining
very popular in ultra-low-power metering and sub- wM-Bus Stack and Meter Application
metering applications. This design offers ready-to-use • wM-Bus OMSv3.0.1 Compliant S- and T-Modes
binary images for any of the wireless M-Bus S-, T-, or (S1, S2, T1, T2) With C1- and C2-Modes Added
C-modes at 868 MHz with uni- (meter) or bidirectional • Supports Meter and Data Collector (Also Called
configurations (both meter and data collector). Multiple "Other") Functionality
pre-compiled binary images are provided that cover
metering applications, including but not limited to heat Applications
cost allocators (HCAs), gas, water, and heat meters,
or e-meters with an external host MCU. • Metering and Sub-Metering Systems With wM-Bus
at 868-MHz Communication
Resources • Water Meters, Heat Meters, Gas Meters, and Heat
Cost Allocators
TIDA-01531 Design Folder
• E-Meters (as Meter Device)
CC1350 LaunchPad™ Product Folder
CC1310 LaunchPad Product Folder
• Data Collectors and E-Meters Collecting Data From
Flow Meters
CC1350 Wireless MCU Product Folder
CC1310 Wireless MCU Product Folder • In-Home Displays, Handheld Readers
TIDA-01531
Wireless MCU
CC 13x0
Host UART Balun and RF
MCU wM-Bus OMS matching
v3.0.1 SW
Stack
An IMPORTANT NOTICE at the end of this TI reference design addresses authorized use, intellectual property matters and other
important disclaimers and information.
1 System Description
The European wM-Bus standard EN13757-4 was published in 2005 and defines a "star network" system
architecture for wireless meter read-out and uses the 863- to 870-MHz ISM band. This standard was
updated in 2013, when the 433- and 169-MHz narrow-band support were added. By 2017, the wM-Bus
protocol has been selected as the communication interface for e-meters, gas meters, and water meters in
countries like France, Netherlands, Italy, Germany, and others. Many of these countries are already
deploying smart meters in significant volumes.
This reference design focuses on the 868-MHz ISM band and describes a wireless module compatible
with S-, T-, and C-mode wM-Bus based on a single-chip CC13x0 Wireless MCU, which runs the TI
OMSv3.0.1 software stack. This combined solution of the CC13x0 and software stack is applicable for any
metering applications such as mains-powered e-meters or battery-powered gas or water meters. Other
widely deployed metering devices that can be used are heat cost allocators (HCAs), heat meters, data
collectors, and in-home displays.
Statements in this design guide apply also to the CC1310, even if only CC1350 is mainly mentioned.
2 System Overview
Wireless MCU
CC 13x0
Host UART Balun and RF
MCU wM-Bus OMS matching
v3.0.1 SW
Stack
to market and brings many advantages over designing, testing, and manufacturing an own RF solution,
especially for less experienced users. This reference design represents a single-chip wM-Bus RF
subsystem, which is functionally equivalent to a "standard" wM-Bus module and allows full software and
hardware integration into a customer product on the chip level, which is often preferred for high-volume
projects.
Users have the choice of developing their own wM-Bus modules as a dedicated hardware by combining
the wM-Bus software stack with one of the multiple CC1350 (or CC1310) hardware reference designs on
TI.com. Users can also embed both the stack and the preferred TI hardware reference design into their
own product for the most cost-optimized solution.
The ARM® Cortex-M3 runs with up to 48 MHz, and there is also 128kB of in-system programmable Flash,
8kB of SRAM for cache (or as general-purpose RAM), and 20-kB of ultra-low leakage SRAM in the device.
The sensor controller has been optimized for ultra-low power and can run autonomously from the rest of
the system at 24 MHz, using only 0.4 mA + 8.2 μA/MHz.
The sensor controller has a 16-bit architecture, controls the 12-bit ADC hardware block, and has its
dedicated 2kB of ultra-low leakage SRAM for code and data. The CC1350 standby current is typically 0.7
μA (with RTC running and RAM and data CPU retention). The sensor controller seamlessly interfaces to
the IR LED and uses its internal TDC and COMPA (Comparator A) hardware blocks to deliver outstanding
low-power consumption while executing various tasks.
4 Low-Power wM-Bus Communications Module Reference Design TIDUDG0 – September 2017
Submit Documentation Feedback
Copyright © 2017, Texas Instruments Incorporated
www.ti.com System Overview
Host
MCU
Figure 3 shows the difference: on the left, the stack option "Serial" is shown. These are the binary images
(named "*Serial*.out"), which include support for the serial commands that can be generated or received
and processed by an external host MCU. This is particularly useful when the wM-Bus communications
subsystem (here OMSv3.0.1) has to be separated from the main application or the metrology portion
inside a smart meter. Such system architecture is typical for gas and e-meters and many feature-rich
water and heat meters.
The host MCU uses the serial commands, documented in HTML pages inside the software stack installer,
to interface and control the CC13x0 wM-Bus device. This serial mode of operation can be also called a
wM-Bus "network processor" or "RF module", as the entire wM-Bus stack is self-contained and no stack
code is executed on the host MCU (except the serial command handling). This separation of the stack and
the application in two different devices avoids any critical timing between the wM-Bus communication and
the host application as they run in parallel and independent from each other.
NOTE: The serial stack type together with any CC1350 hardware reference can replace any off-the-
shelf wM-Bus RF module with OMSv3.0.1 functionality. This reference design focuses
exclusively on the serial approach; the API solution is not reviewed.
On the right of Figure 3 is the embedded- or API-type implementation—both the user application and the
wM-Bus stack run together inside the CC13x0 device. For this case, the CCS IDE tool and the API
documentation of the stack function calls are used. Because the serial commands parser code is not
needed, the latter is not included into the stack to reduce the flash memory footprint on the CC13x0.
The wM-Bus API-type stack version is a perfect fit for HCAs (see the TIDA-00848 and TIDA-00838
reference designs), low-cost water meters, or electronic RF add-on modules (see the TIDA-01228
reference design), where the complete product application including the wM-Bus stack will fit into the
available 128kB Flash with 20-kB SRAM + 8kB cache RAM.
The ultra-low-power Sensor Controller Engine (SCE) of the CC1350 is not used in the wM-Bus stack and,
if desired, can be programmed with user code. Examples for ultra-low-power tasks for the SCE can be
found in multiple TI reference designs: the single-chip HCA reference design (TIDA-00848) as well as the
two-chip HCA reference designs (TIDA-00646 and TIDA-00838). Furthermore, the TIDA-01212 reference
design shows a half-duplex, bidirectional, single IR LED communication while the TIDA-01228 reference
design introduces an inductive (or LC-sensing) approach of a small rotating disc, commonly used in
mechanical water and gas meters.
NOTE: The open source example code for wM-Bus, provided together within all of the
aforementioned reference designs, is not the same as the wM-Bus stack presented here.
These reference designs have coding examples under an "open source" license and, even if
they do support the S-, T-, C-, F-, or all N-modes, they do not implement the specific OMS
timing requirements nor the full feature set of the OMSv3.0.1 specification.
The IPC solution is an excellent way to achieve the smallest possible PCB size, much simpler layout and
less variation in RF performance in the 868-MHz band. TI has partnered with two vendors who offer
matched balun filter components for CC13x0 devices for the 779- to 928-MHz band. The Murata
LFB18868MBG9E212 and Johanson 0850BM14E0016 are pin-compatible parts that reduce the
component count significantly while still obtaining high radio performance. The IPC reference design
matches the performance of the discrete multi-layer inductor reference design with a single component.
If best-in-class RF performance is desired, then the discrete wire-wound inductors solution is
recommended, as used on the CC1350 or CC1310 LaunchPad.
3.1.1 Hardware
Use either of the following choices:
• CC1350 LaunchPad (two boards)
• CC1310 LaunchPad (two boards)
Both LaunchPad types are available for purchase through the TI online store or authorized distributors.
There are no royalties pay when using the TI wM-Bus OMSv3.0.1 stack with CC13x0 devices in a
consumer product.
3.1.2 Software
• FlashProgrammer2 or UniFlash4.2.x
• wM-Bus Suite (PC GUI) for configuration of wM-Bus devices
• CCSv7.2.0.00013 or later (the IDE for CC13xx wireless MCUs) is required only when using the
embedded or API version of the stack to combine the stack and user application into a single device. If
necessary, customize the serial interface pins to the host MCU in the serial stack version.
Alternatively, the UniFlash v.4.2.0.1435 or later can be used as well (see Figure 5). The first step is again
to select the serial image (for the desired S-, T-, or C-mode), and then load the meter binary image into
the first CC1350 LaunchPad and the data collector binary image into the second.
Figure 5. UniFlash v4.2 With Two CC1350LP Boards (for Meter and Data Collector)
The two freshly programmed CC1350 LaunchPads must stay connected (using the USB cable) to the PC
for the next steps.
Start with "Open the demo project" and then select the "Smart Meter" entry on the left side (see Figure 7).
Then click on the blue and white circle "Start wireless M-Bus demo" to run a scan of the serial COM ports.
All connected wM-Bus devices (through USB) are auto-detected; in this case, two are listed (meter and
data collector). Next, select the "Meter" device and "Finish" the initialization process for the meter.
This binding is equivalent to the installation of the meter to the data collector. The PC GUI tool enables the
monitoring and control of the wM-Bus devices with Serial support; in fact, the PC GUI tool can be viewed
as a "Host MCU", which sends serial commands to and receives indications from the meter and data
collector units.
Using the PC GUI tool, bind or "install" as shown in Figure 9.
Finally, when both the meter and the data collector are correctly configured and launched, the PC tool
resembles Figure 10.
NOTE: The Data Collector window tabs were arranged by moving them to the right through clicking
and dragging.
Figure 10. Fully Configured Meter and Data Collector Device in PC Tool
It is important to know that a new console can be started using the symbols on the console tab to the
right. The currently active console can be pinned (see symbol in the console tab) to the current device.
Then a new (second) console window can be started and assigned to the data collector device (not shown
in Figure 10).
All address subfield parameters can be modified or set manually and then written to the device using the
"Write config to device" button on the right. If additional meter devices need to be added to the test setup,
then perform the following:
• Add the new meter device under the "Data Collector" entry in the Configuration suite (left column in the
PC GUI tool)
• Configure the new meter manually by adding its address and encryption key with the address of the
data collector.
• Close both data collector tabs in the PC GUI tool and restart the demo to detect the data collector
device. Then bind it to the two meters.
NOTE: The PC GUI tool is limited to three meters—this is a software limitation only. The TI wM-Bus
OMSv3.0.1 software stack for the data collector itself supports up to 16 meter devices. This
number can be further increased (requires stack customization and verification), based on
free memory resources and the processing time at the data collector side, where the full
meter list has to be parsed very quickly during the reception of a data packet to identify the
meter and retrieve its encryption key. For example, in T2-mode, the data collector has to
start transmission of the packet (preamble bits) in the time slot of 2 to 3 ms after the last
transmitted bit of the meter packet (see EN13757-4).
The default packet content is at "0" and has a time stamp of "01-01-2000" because the time of the meter
device has not been updated by the data collector yet.
Now, to transmit the real-world data, the user has to adjust the value in the data packet, which is done by
selecting the "Set Periodical user Data" under the Smart Meter (COM 6| T2) tab. After making the
changes to the Data Field, Function, Unit, Multiplier, and Value parameters, press "Set Telegram Data" to
save these values. In Figure 14, the value of 123 Wh in a 24-bit Integer representation has been chosen.
Figure 14. Modified "123" Energy Value for Meter Data Packet
This new value is used in the next periodic (or synchronous) data packet of the meter, which is received
and decoded by the data collector (see Figure 15). Note that the time has been synched, as the decoded
packet shows the actual time, starting with the date "31-07-2017".
Figure 15. Data Packet With Synchronized Time and User Defined Content
Figure 16 shows that this does not happen immediately (see "Processing...") but is delayed until the next
data packet of the meter is received. The data collector in T2-mode has to send the Time Synchronization
request in the very short receive window of 2 to 3 ms after the T-mode transmission frame, as this is the
only period where the T2-mode meter is listening to receive data. If this request from the data collector is
received by the meter, then a short exchange of a few telegrams takes place. At the end, the GUI shows
"Passed" with a green check sign behind.
Beginning with the next telegram, the meter uses the actual date and time, which is in fact the PC time
where the PC GUI is running. This is also visible under "Details" for the newly received data packets from
the meter (see Figure 15).
Calculate CRC
Figure 17. Commands Format Used in Serial Version of TI wM-Bus Stack (by STACKFORCE GmbH)
The command data is transferred over the UART connection to or from the CC13x0 using the format of
115.2kbps, no flow control, and 8N1 (8 data bits, no parity, 1 stop bit).
Note that the UART connection on the CC1350 LaunchPad runs over a USB cable as a COM port and
can be accessed with any PC terminal program.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
#include "crc.h"
#include <stdint.h>
//------------------------------------------------------------------------------------------------
-------
// uint16 crcCalc(uint16 crcReg, uint8 crcData)
//
// DESCRIPTION:
// Calculates the 16-bit CRC. The function requires that the CRC_POLYNOM
// is defined, which gives the wanted CRC polynom.
//
// ARGUMENTS:
// uint8 crcData - Data to perform the CRC-16 operation on.
// uint16 crcReg - Current or initial value of the CRC calculation
//
// RETURN:
// The value returned is the 16-bit CRC (of the data supplied so far).
//------------------------------------------------------------------------------------------------
-------
crcData <<= 1;
}
return crcReg;
}
// CRC_POLYNOM 0x3D65
For T-mode, the sensitivity is –105 dBm for 1% BER; for C-mode, it is –106.3 dBm at 1% BER (see Table
7 and Table 9 in the application report CC13xx Combined wM-Bus C-Mode and T-Mode ). Both values [6]
meet the common target of –105 dBm typical sensitivity at 1% BER for a T- or C-mode receiver.
The measured selectivity for the T- and C-mode patch is > 40 dB at a ±200-kHz offset and above as
shown in Table 1:
Thus CC1350 and CC1310 fulfill the HR receiver class requirements as per EN13757-4 for sensitivity and
selectivity. Note that the immunity requirements as per EN 301 489 are measured at the full system level
and thus no statement can be made on the CC13x0 subsystem level.
Both S-mode and CT-mode patches have been integrated into the TI stack and are being automatically
involved, depending on the wM-Bus mode used. For example, in a T2-mode meter binary, the TI Stack
uses the CT-mode patch for transmitting data and then change to the S-mode patch in receive direction.
The switch between the patches happens fast enough to enable S-mode data reception in 2 ms after the
last bit of the T-mode data packet has been transmitted.
4 Design Files
4.1 Schematics
To download the schematics, see the design files at CC1350 LaunchPad.
5 Software Files
To download the software files, see the design files at CC1350 LaunchPad and TIDA-01531.
6 Related Documentation
1. Beuth, Communication systems for meters and remote reading of meters - Part 4: Wireless meter
readout (Radio meter reading for operation in SRD bands)
2. Beuth, Telecontrol equipment and systems - Part 5: Transmission protocols - Section 2: Link
transmission procedures (EN60870-5-2 or IEC 870-5-2)
3. Texas Instruments, CC1310 Integrated Passive Component for 779-928 MHz, Application Report
(SWRA524)
4. Texas Instruments, CC1350 SimpleLink™ Ultra-Low-Power Dual-Band Wireless MCU, Datasheet
(SWRS183)
5. Texas Instruments, CC1310 SimpleLink™ Ultra-Low-Power Sub-1 GHz Wireless MCU, Datasheet
(SWRS181)
6. Texas Instruments, CC13xx Combined wM-Bus C-Mode and T-Mode, Application Report (SWRA522)
7. Texas Instruments, CC13xx wM-Bus S-Mode, Application Report (SWRA512)
8. Texas Instruments, CC-Antenna-DK2 and Antenna Measurements Summary, Application Report
(SWRA496)
9. Radiocrafts, wM-Bus Products (https://radiocrafts.com/products/wirelessmbus/)
6.1 Trademarks
LaunchPad, SimpleLink, Code Composer Studio are trademarks of Texas Instruments.
Cortex, ARM are registered trademarks of ARM Ltd.
Bluetooth is a registered trademark of Bluetooth SIG.
Wi-Fi is a registered trademark of Wi-Fi Alliance.
All other trademarks are the property of their respective owners.
Texas Instruments Incorporated (‘TI”) technical, application or other design advice, services or information, including, but not limited to,
reference designs and materials relating to evaluation modules, (collectively, “TI Resources”) are intended to assist designers who are
developing applications that incorporate TI products; by downloading, accessing or using any particular TI Resource in any way, you
(individually or, if you are acting on behalf of a company, your company) agree to use it solely for this purpose and subject to the terms of
this Notice.
TI’s provision of TI Resources does not expand or otherwise alter TI’s applicable published warranties or warranty disclaimers for TI
products, and no additional obligations or liabilities arise from TI providing such TI Resources. TI reserves the right to make corrections,
enhancements, improvements and other changes to its TI Resources.
You understand and agree that you remain responsible for using your independent analysis, evaluation and judgment in designing your
applications and that you have full and exclusive responsibility to assure the safety of your applications and compliance of your applications
(and of all TI products used in or for your applications) with all applicable regulations, laws and other applicable requirements. You
represent that, with respect to your applications, you have all the necessary expertise to create and implement safeguards that (1)
anticipate dangerous consequences of failures, (2) monitor failures and their consequences, and (3) lessen the likelihood of failures that
might cause harm and take appropriate actions. You agree that prior to using or distributing any applications that include TI products, you
will thoroughly test such applications and the functionality of such TI products as used in such applications. TI has not conducted any
testing other than that specifically described in the published documentation for a particular TI Resource.
You are authorized to use, copy and modify any individual TI Resource only in connection with the development of applications that include
the TI product(s) identified in such TI Resource. NO OTHER LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE TO
ANY OTHER TI INTELLECTUAL PROPERTY RIGHT, AND NO LICENSE TO ANY TECHNOLOGY OR INTELLECTUAL PROPERTY
RIGHT OF TI OR ANY THIRD PARTY IS GRANTED HEREIN, including but not limited to any patent right, copyright, mask work right, or
other intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information
regarding or referencing third-party products or services does not constitute a license to use such products or services, or a warranty or
endorsement thereof. Use of TI Resources may require a license from a third party under the patents or other intellectual property of the
third party, or a license from TI under the patents or other intellectual property of TI.
TI RESOURCES ARE PROVIDED “AS IS” AND WITH ALL FAULTS. TI DISCLAIMS ALL OTHER WARRANTIES OR
REPRESENTATIONS, EXPRESS OR IMPLIED, REGARDING TI RESOURCES OR USE THEREOF, INCLUDING BUT NOT LIMITED TO
ACCURACY OR COMPLETENESS, TITLE, ANY EPIDEMIC FAILURE WARRANTY AND ANY IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL
PROPERTY RIGHTS.
TI SHALL NOT BE LIABLE FOR AND SHALL NOT DEFEND OR INDEMNIFY YOU AGAINST ANY CLAIM, INCLUDING BUT NOT
LIMITED TO ANY INFRINGEMENT CLAIM THAT RELATES TO OR IS BASED ON ANY COMBINATION OF PRODUCTS EVEN IF
DESCRIBED IN TI RESOURCES OR OTHERWISE. IN NO EVENT SHALL TI BE LIABLE FOR ANY ACTUAL, DIRECT, SPECIAL,
COLLATERAL, INDIRECT, PUNITIVE, INCIDENTAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES IN CONNECTION WITH OR
ARISING OUT OF TI RESOURCES OR USE THEREOF, AND REGARDLESS OF WHETHER TI HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
You agree to fully indemnify TI and its representatives against any damages, costs, losses, and/or liabilities arising out of your non-
compliance with the terms and provisions of this Notice.
This Notice applies to TI Resources. Additional terms apply to the use and purchase of certain types of materials, TI products and services.
These include; without limitation, TI’s standard terms for semiconductor products http://www.ti.com/sc/docs/stdterms.htm), evaluation
modules, and samples (http://www.ti.com/sc/docs/sampterms.htm).
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2017, Texas Instruments Incorporated