DLP Design 000RF1 USB Short Range Transceiver User Manual DLP RF1 Data Sheet

DLP Design, Inc. USB Short Range Transceiver DLP RF1 Data Sheet

Users Manual Revised

Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
1
DLP-RF1
USB / RF OEM Transceiver Module (Preliminary)
The DLP-RF1 combines a USB interface,
Freescale™ MC13192 2.4GHz Direct-Sequence
Spread Spectrum RF Transceiver IC and Freescale
MC9S08GT60 microcontroller to form an IEEE
802.15.4 compliant, ZigBee™ ready, short-range
transceiver module.
The MC9S08GT60 microcontroller is preprogrammed
with DLP Design’s Serial Interface Packet Processor
(SIPP™ firmware) for accessing the transceiver
functions via simple serial calls. The application
programming required for accessing the module via
USB is functionally identical to that used to access
the RS232C ports on a standard Windows/Linux/Mac
PC via the use of royalty-free Virtual COM Port (VCP) drivers. (No USB driver development is
required for most applications.) The SIPP firmware in the DLP-RF1 resides at the application
layer and is based on Freescale’s SMAC. The SIPP firmware provides basic access to
DLP-RF1 functionality: packet receive and transmit, transceiver settings, EEPROM access, etc.
The MC9S08GT60 can be reprogrammed (if desired) with user-supplied firmware via a
6-pin BDM header that is compatible with the P&E USB-ML-12 and other device programmers
(purchased separately).
Application Areas:
• Remote control and wire replacement in
industrial systems
• Wireless sensor networks
• Home automation and control
• Factory automation
• Heating and cooling systems
• Inventory management and RFID tagging
• Human interface devices
• Remote entertainment control • Wireless toys
Features:
• IEEE 802.15.4 Compliant & ZigBee ready • Range: >700 feet (outdoor line of sight)
• Microcontroller pre-programmed with
SIPP firmware
• Default reset via shorting two jumpers at
power-up
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
2
• Carrier-sense, multiple-access technology • Royalty-free USB drivers
• USB interface programming as easy as
RS232C
• Agency approvals in place for immediate
deployment in the US, Canada, & Europe
• All operational power taken from the host
PC
1.0 System Overview
Using the pre-programmed SIPP firmware, the DLP-RF1 can be used in conjunction with other
DLP-RF1 and/or DLP-RF2 modules to form simple point-to-point and star configuration
systems. Both the DLP-RF1 and the DLP-RF2 can serve as host/system controllers. In the
case of the DLP-RF1, the host is a user-supplied Windows, Linux, or Mac PC that is accessed
via a USB interface and user-supplied, 6-foot USB cable. In the case of the DLP-RF2, the host
is a user-supplied microcontroller/DSP/FPGA/etc. that is accessed via a 2-wire serial interface–
TX, RX, and ground. A host processor is not necessarily required by the DLP-RF2. The SIPP
firmware within the DLP-RF2 can be used to both gain access to the MC9S08GT60’s port pins
for basic digital I/O as well as offer a few hardware-specific functions.
Using the Z-Stack ZigBee Protocol Stack from Figure 8 Wireless (licensed separately), the
DLP-RF1 can be used in conjunction with other DLP-RF1/DLP-RF2 transceivers as well as
other MC13192-based ZigBee-ready devices to form complex point-to-point, star, and mesh
networks. (For additional information on creating a ZigBee enabled system, refer to
Section 2.0)
In a system using the preprogrammed SIPP firmware, each transceiver has a unique 16-bit ID
yielding a theoretical maximum of 65,535 transceivers. Every data packet handled by the SIPP
firmware must contain, at minimum, the number of bytes in the packet, the destination
transceiver ID (packet destination), the source transceiver ID (packet origin), and a command
byte.
As shipped from DLP Design, the DLP-RF1 has an ID of 1. If more than one DLP-RF1 is to be
used in a system, then this ID must be changed to a value higher than 2 (the DLP-RF2 has a
default ID value of 2). Upon reset or power up, the ID is read from non-volatile (EEPROM)
memory. If JP1 is shorted at power up (or before a reset), the default ID for the DLP-RF1 is set
to 1, and other transceiver settings are also returned to a default state in the EEPROM. (Refer
to Section 3.2 for additional details.)
2.0 ZigBee / Figure 8 Wireless
ZigBee™ is the only standards-based wireless networking technology for reliable, secure, cost-
effective, low-power monitoring and control solutions. ZigBee provides the network, security,
and application profile software layers for the IEEE 802.15.4 Global Wireless Standard. As a
leading member of the ZigBee Alliance with in-depth experience in mesh and wireless
communication protocols, Figure 8 Wireless provides a complete ZigBee software development
suite for application and product development.
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
3
ZigBee Primary Target Markets:
• Home Control
• Building Automation
• Industrial Automation
Figure 8 Wireless is a leader in making wireless device networking and the Extended Network a
reality. Figure 8's software products are the technological building blocks OEMs need to
produce standards-based ad hoc wireless device networks. Figure 8 Wireless has an
experienced wireless device networking team and strong partnerships with silicon radio
vendors, hardware providers, and system integrators. They are also a significant contributor to
the ZigBee Alliance, a non-profit organization defining global standards for reliable, cost-
effective, low power wireless applications.
**Contact Figure 8 Wireless for additional details on enabling the ZigBee protocol with the
DLP-RF1 and DLP-RF2 transceivers (www.figure8wireless.com; 858-552-8500).**
3.0 Preprogrammed Serial Interface Packet Processor (SIPP) Firmware
The C source code and flow diagrams for the preprogrammed SIPP firmware are available in a
Developer’s Kit as a separate purchase. The Developer’s Kit also contains the complete
electrical schematics for the DLP-RF1.
The source code for Freescale’s SMAC is available as a free download from
www.freescale.com.
A test program (DLP-RFTestAp.exe) is available as a free download from www.dlpdesign.com
that makes easy work of setting up the DLP-RF1 transceiver and testing its basic functionality.
Use of the DLP-RFTestAp.exe requires a USB interface between a host Windows PC and the
DLP-RF1 as well as a user-supplied 6-foot USB cable.
**Under this communication protocol, it is the responsibility of the host application to “Retry”
transmissions that do not produce the anticipated reply.**
3.1 Packet Structure
Each SIPP firmware packet is comprised of 6 or more bytes. The following table outlines the
packet structure:
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
4
PACKET STRUCTURE
Byte Description Comments
0
Number of bytes in the packet
following byte 0: 5-125
Each packet must contain (as a minimum) the
number of bytes, a destination ID, Source ID
and a command byte
1
Destination ID MSByte
ID Range: 1-65535*
ID:1 default for new DLP-RF1 transceivers
ID:2 default for new DLP-RF2 transceivers
ID:0 reserved for broadcast to all transceivers
2 Destination ID LSByte
3 Source ID MSByte
Range: 1-65535
4 Source ID LSByte
5 Command Byte
Command Range: 0xA0-0xDF
Both Command Packets and Reply Packets.
Every packet must have a command byte.
6 Data Byte(s) 0-120 bytes of data are allowed in the packet
*Note: Each transceiver in the system must have a unique ID. ID:0 is reserved for broadcast packets
sent by DLP-RF2 transceivers coming out of Sleep Mode.
3.2 Reserved EEPROM Locations
The EEPROM memory is a feature of the preprogrammed SIPP firmware and, as such, is only
available when using the DLP-RF1 with its firmware as shipped from DLP Design.
The EEPROM memory used by the SIPP firmware consists of a block of 32 bytes that reside
within the Flash program memory of the MC9S08GT60. The first 10 bytes (0-9) and the last
byte (31) are reserved for storing transceiver settings and checksum. Bytes 10 through 30 (user
area) are available for use by the user’s host software.
Whenever the data in any EEPROM location is changed, the checksum location (EEPROM
Location 31) is automatically updated. At power up or reset, if ever the calculated checksum for
the first 31 bytes does not match the value at EEPROM Location 31, the Default Reset values
for the transceiver settings are restored, and the checksum is recalculated and rewritten. The
values in the user area are preserved.
Additionally, if JP1 is shorted at power up (or reset), the default values for the transceiver
settings are restored, and the checksum is recalculated and rewritten. Again, values in the user
area are preserved.
The following table outlines usage of the reserved EEPROM locations. These values are read
at power up, reset, or via SIPP firmware:
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
5
EEPROM CONTENTS
Byte Description Options Default Reset
0 My ID MSB Range: 1-65,535 1 for RF1; 2 for RF2
1 My ID LSB 0 reserved for
broadcast commands
2 Transceiver
Channel
0-15 (2.405GHz to 2.480GHz) 7 (2.440 GHz)
3 RF Transmit Power 0-15 (-16.6 to +3.5dBm into the baluns) 15 (+3.5dBm - Max
Power)
4
Sleep Time Length
MSB (DLP-RF2
Low-Power Mode
Only)
Range: 1-65,535: 5-second increments,
3.8 days max.
For Example: 1=5 seconds, 12=1
minute, 120=10 minutes, 720=1 hour,
17,280=1day
5 seconds
5 Sleep Time Length
LSB
6
Wake from Sleep,
Host Command
Timeout after
Check-in (DLP-RF2
in Low-Power Mode
Only)
1-128 seconds
2 seconds
7
Baud rate for RF2
Host Controller
(DLP-RF2 Only)
0-2400; 1-4800; 2-9600; 3-14400;
4-19200; 5-38400; 6-128000;
7-250000
2 (9600 baud)
8 Port Pin Bit Field
(DLP-RF2 Only)
0x00-0xFF (A6B6B5B4 B3B2B1B0) 0x80; A6 monitored
9
DLP-RF2 Available
Features
(DLP-RF2 Only)
Bit 7 – Measures battery voltage
Bit 6 – Temperature sensor
Bit 5 – Relays
Bit 4 – Reserved
Bit 3 – Reserved
Bit 2 – Reserved
Bit 1 – Reserved
Bit 0 – Reserved
All bits cleared; no
features available
31 Checksum EX-OR of bytes 0-30 Calculated
3.3 Command Set
This Command Set is a feature of the preprogrammed SIPP firmware and, as such, is only
available if using the DLP-RF1 with its firmware as shipped from DLP Design.
Packets are broken down into two primary types: Command Packets and Reply Packets. The
host controller/PC originates all Command Packets. In the case of the DLP-RF1, the host is the
user-supplied host PC and associated application program.
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
6
If a Command Packet is received by the DLP-RF1 via USB with a destination ID that matches
the ID stored in the EEPROM of the DLP-RF1, then the MC9S08GT60 will process the packet
and reply to the host PC. If the ID in the packet does not match the ID stored in EEPROM, then
the packet is intended for a different destination and is transmitted via the transceiver.
If a packet is received via the RF transceiver with the correct ID, then the packet is either
processed by the MC9S08GT60 or forwarded on to the host. Commands between 0xA0 and
0xBF are Command Packets that are to be processed by the MC9S08GT60, while commands
between 0xC0 and 0xDF are Reply Packets and are forwarded on to the host.
If a packet arrives via the RF transceiver with an ID of 0 (zero), then the packet is a “broadcast”
packet intended for the system controller (the RF1/RF2 unit that is designated as system
controller). ID:0 packets are always immediately forwarded on to the host.
If a packet arrives via the RF transceiver with an ID that does not match the EEPROM, then the
packet is ignored. The only exception to this is if “Return All Packets” Mode is enabled, in which
case the DLP-RF1 is monitoring packet traffic, and all unsolicited packets are returned to the
serial host.
**Under this communication protocol, it is the responsibility of the host application to “Retry”
transmissions that do not produce the anticipated reply.**
Cmd
Packet Recipient
Description
# Bytes
Returned
Expected
Reply Cmd
0xA0 MC9S08GT60 Ping (no data) 0xC0
0xA1 MC9S08GT60 Set Transmit Power Level
1 Data Byte; Range: 0-15
0xC0
0xA2 MC9S08GT60 Set Transceiver Channel
1 Data Byte; Range: 0-15
0xC0
0xA3 MC9S08GT60 Reset Microcontroller (no data) 0xC0
0xA4 MC9S08GT60 Release immediately to Sleep
(DLP-RF2 only--no data)
0xC0
0xA5 MC9S08GT60 Measure energy on all channels (no data) 0xC3
0xA6 MC9S08GT60 Return all packets received to host
(Packet Watch Mode—no data)
0xC0
0xA7 MC9S08GT60 Return only packets with correct ID to host\
(Default--no data)
0xC0
0xA8 MC9S08GT60 Read EEPROM
1 Data Byte; Address: 0-31
0xC4
0xA9 MC9S08GT60 Write EEPROM and update checksum
2 Data Bytes; Address: 0-31; Data: 0-255
0xC5
0xAA MC9S08GT60 Read I/O pin, Port: 0xC6
0xAB MC9S08GT60 Set I/O pin direction, I/O Port: 0xC7
0xAC MC9S08GT60 Set/Clear I/O pin, Port: 0xC8
0xAD MC9S08GT60 Setup A/D, Mode: 0xC9
0xAE MC9S08GT60 Read A/D, Channel: 0xCA
0xAF MC9S08GT60 Reserved
0xB0 MC9S08GT60 Relay no-header packet to RF2 host - no
reply
0xCE
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
7
0xB1 MC9S08GT60 Relay no-header packet to RF2 host - wait
for reply with timeout
0xCE
0xB6 MC9S08GT60 Request Board Type (DLP-RF1, RF2)--
ROM and RFIC versions
0xCD
0xB7 MC9S08GT60 Return Board ID (not available through RF
transceiver)
0xCF
0xB8 MC9S08GT60 Read VBAT (DLP-RF2 only; additional
hardware required)
0xCB
0xB9 MC9S08GT60 Read Temperature (DLP-RF2 only;
additional hardware required)
0xCC
0xC0 Serial / USB Generic Reply or “ACK” for all non-
broadcast commands
0xC1 Serial / USB Check-in from DLP-RF2 due to monitored
port pin input change
0xC2 Serial / USB Check-in from DLP-RF2 due to wake from
sleep
0xC3 Serial / USB Measured energy data
0xC4 Serial / USB EEPROM read reply
0xC5 Serial / USB Write EEPROM reply
0xC6 Serial / USB Read I/O pin reply
0xC7 Serial / USB Set direction reply
0xC8 Serial / USB Set/Clear I/O pin reply
0xC9 Serial / USB Setup A/D reply
0xCA Serial / USB Read A/D reply
0xCB Serial / USB Read VBAT reply
0xCC Serial / USB Read Temperature reply
0xCD Serial / USB Return board type--uC ROM and RF IC
versions
0xCE Serial / USB No-header packet reply
0xCF Serial / USB Return ID
Example: Below is a simple C program illustrating the Ping (0xA0) command. This assumes
the presence of a transceiver with an ID of 1 issuing the Ping command and a second
transceiver with an ID of 0x13 (19 decimal) to receive and respond to the Ping command:
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
8
int m_DestID = 0x13;
int m_SourceID = 0x01;
unsigned char rx[126], tx[126];
int pos=1;//init packet index
tx[pos++] = (unsigned char)((m_DestID&0xff00)>>8); //Destination ID MSB
tx[pos++] = (unsigned char)(m_DestID&0x00ff); //Destination ID LSB
tx[pos++] = (unsigned char)((m_SourceID&0xff00)>>8); //Source ID MSB
tx[pos++] = (unsigned char)(m_SourceID&0x00ff); //Source ID LSB
tx[pos++] = 0xA0;//Command byte: Ping
tx[0] = pos-1;//assign number of bytes in packet to position zero
PutBuffer(tx, pos);//send tx out serial port (actually USB)
GetBuffer(rx, 6, TIMEOUTWAIT); //wait up to timeout for 6 bytes to return
if(rx[5] != 0xC0)//if Buffer Position 5 is not the expected reply (0XC0)
{
//No reply to the Ping command
//either retry the command or process the error
}
4.0 USB Interface
The VCP (Virtual COM Port) USB drivers can be downloaded from the bottom of the page at
www.dlpdesign.com. [Windows XP (SP1 or later) and Linux (Kernel 2.4.0 or later) users do not
need to download drivers as they are already part of the operating system.] Unzip the drivers
into a folder on the PC’s hard drive. The USB driver installation process is initiated by
connecting a DLP-RF1 to the host PC. When prompted, point the driver installer to the folder in
which the VCP drivers reside.
The DLP-RF1 uses a USB interface design similar to that used by the DLP-USB245M USB
adapter module in that the connection between the USB IC and MC9S08GT60 consists of 8
data lines and 5 hand-shaking lines. Once the VCP drivers are installed, the DLP-RF1 appears
to the host PC as a COM (RS232C) port. The application program running on the host PC
simply has to open what appears to be an RS232C port then build and send a packet to gain
access to/control of the DLP-RF1. The VCP drivers intercept the data packets on their way to
the COM port and reroute them to the USB port. All packets returned from the DLP-RF1 simply
appear in the receive buffer that was create when the COM port was opened.
There is no need for the host application to set the baud rate of the opened COM port since
data between the PC and DLP-RF1 flows at USB 1.1 “Full Speed” data rates, and the
handshaking lines clock the data flowing between the USB IC and MC9S08GT60 over the 8-bit
data bus.
Since the host application is responsible for “retrying” any command packet that goes
unanswered, the host application must wait an appropriate amount of time for all responses.
The amount of time to wait for a reply is dependant upon several factors so it is best for the user
to derive empirically (trial and error) the appropriate amount of time to wait.
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
9
5.0 Agency Identification Numbers
Agency compliance is a very important requirement for any product deployment. DLP Design
has obtained modular approval for its products so that the OEM only has to meet a few
requirements to be eligible for use under that approval. The corresponding agency identification
numbers are listed below:
Part Number US/FCC CAN/IC
DLP RF1 SX9000RF1 5675A-000RF1
5.1 Integral Antenna
Important: The DLP-RF1 is approved for use with the integral antenna ONLY. Modifying the
DLP-RF1’s PCB antenna or modifying the PCB to use an external antenna will void all agency
compliance.
5.2 FCC/IC Requirements for Modular Approval
Any changes or modifications not expressly approved by DLP Design, Inc. could void the user’s
authority to operate the equipment.
5.3 Warnings Required in OEM Manuals
Warning: Operation is subject to the following two conditions: (1) This device may not cause
harmful interference, and (2) This device must accept any interference received, including
interference that may cause undesirable operation.
This device is intended only for OEM integrators under the following conditions:
1. The transmitter module may not be co-located with any other transmitter or antenna.
2. The module is approved using the FCC ‘unlicensed modular transmitter approval’
method.
As long as the two conditions are met, further transmitter testing will not be required. However,
the OEM integrator is still responsible for testing their end-product for any additional compliance
requirements required with this module installed (for example, digital device emissions, PC
peripheral requirements, etc.).
IMPORTANT NOTE: In the event that these conditions can not be met (for example certain co-
location with another transmitter, or a different antenna), then the FCC authorization is no longer
valid and the FCC ID may not be used on the final product. In these circumstances, the OEM
integrator will be responsible for re-evaluating the end product (including the transmitter) and
obtaining a separate FCC authorization.
Rev 1.0 (January 2005) DLP-RF1 DLP Design, Inc.
10
End Product Labeling
The final end product must be labeled in a visible area with the following: “Contains TX FCC ID:
SX9000RF1”.
RF Exposure Statements That May be Included in the Users Manual
The users manual for end users must include the following information in a prominent location
“IMPORTANT NOTE: To comply with FCC RF exposure compliance requirements, the antenna
used for this transmitter must not be co-located or operating in conjunction with any other
antenna or transmitter.”
Additional Information That Must be Provided to OEM Integrators
The end user should NOT be provided any instructions on how to remove or install the device.
6.0 Disclaimer
Neither the whole nor any part of the information contained herein nor the product described in
this datasheet may be adapted or reproduced in any material or electronic form without the prior
written consent of the copyright holder.
This product and its documentation are supplied on an as-is basis, and no warranty as to their
suitability for any particular purpose is either made or implied. DLP Design will not accept any
claim for damages whatsoever arising as a result of use or failure of this product. Your statutory
rights are not affected.
This product or any variant of it is not intended for use in any medical appliance, device, or
system in which the failure of the product might reasonably be expected to result in personal
injury.
This document provides preliminary information that may be subject to change without notice.
7.0 Contact Information
DLP Design, Inc.
1605 Roma Lane
Allen, TX 75013
Phone: 469-964-8027
Fax: 415-901-4859
Email: support@dlpdesign.com
Internet: http://www.dlpdesign.com

Navigation menu