RADIOMETRIX M48A

Hartcran House, 231 Kenton Lane, Harrow, Middlesex, HA3 8RP, England
Tel: +44 (0) 20 8909 9595, Fax: +44 (0) 20 8909 2233, www.radiometrix.com
M48A MODEM
PRELIMINARY
07 September 2009
M48A modem chip – for narrow band wireless data link
The M48A is a half-duplex serial modem
controller suitable for use with narrow band
receivers, transmitters and transceivers. It
supports a maximum transparent data
throughput of 4800baud while baseband
modulation frequencies do not exceed 3.2KHz.
The device supports (programmable) long
startup/preamble durations sometimes
required for synthesized narrow band devices.
Figure 1: M48A-000-DIL modem IC
The M48 provides a half duplex link, but provided no two devices attempt to transmit at one time (a 'low' on
RX_flow may be used as a primitive 'CTS' indication) no further restrictions on data transmission need be
made, as all transmit timing, valid data identification and data stream buffering is conducted by the device.
This unit supports a range of user interface data rates, in asynchronous data format: 1 start bit, 8 data bits, 1
stop bit. The supplied default (and the maximum transparent throughput) is 4800 baud
To connect to a true RS232 device, inverting level shifters must be used (MAX232 type are ideal, but simple
NPN transistor switches often suffice). With typical microcontrollers and uarts, direct connection is usable.
Note that TXD has no internal pullup.
Features
!
!
!
!
!
!
!
!
!
!
!
!
!
Operating voltage (temperature):
5V for standard version (-40°C to +85°C)
Maximum usage of the range capability of an RF module
Compatible with fast or slow transmitter power up timing requirements
5kbps pulse duration coded protocol
Synchronisation codes and checksum to reduce false triggering on noise
Programmable transmit address and four receive addresses
Programmable timing parameters (preamble length, etc)
Programmable auxiliary serial output (to program radio modules)
Programmable serial modem baud rate (1200 - 76800 bps, half-duplex)
Suitable to be used with Narrow Band FM radio modules
Addressable point-to-point and point to multi point
Packet acknowledge/resend (ACK) mode
Store and forward repeater function
Applications
!
!
!
!
!
!
!
PDAs, organisers & laptops
Handheld / portable terminals
Remote operated vehicles
Data loggers
In-building environmental monitoring and control
Industrial (SCADA) telemetry and M2M systems
Fleet management, vehicle data acquisition
Radiometrix Ltd
M48A Modem Data Sheet
page 1
User Interface
M48A is an 18pin PIC16F648A, running proprietary software. It requires a 4.5v minimum supply.
1
2
Aux out
LAMP
3
4
5
6
TXE
RST
Vss (0V)
TX FLOW
7
8
9
RSTXD
RSRXD
RX FLOW
18
17
16
15
14
13
TONE OUT
TONE IN
OSC1
OSC2
Vdd (+5V)
RX Inhibit
12
11
Figure 2: package type, 18-Lead Plastic Dual In-line (PDIP - 300mil wide body)
Pin description:
Pin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Name
AUX OUT
LAMP
TXE
RST
0V
TX FLOW
RSTXD
RSRXD
RXFLOW
DFLT_0
DFLT_1
TX inhibit
RX inhibit
Vcc
OSC2
OSC1
TONE IN
TONE OUT
I/O
out
out
out
in
supply
out
in
out
out
in
in
in
in
supply
out
in
in
out
Function
Serial output to radio module (1200/2400/4800/9600 baud true RS232)
High when in transmit
Low = enable transmitter
Drive low to reset device. Otherwise pullup to Vcc
Supply ground
Low indicates tx buffer near full (3/4 full)
Inverted RS232 datastream in
Inverted RS232 datastream out
Low indicates data received or in rx FIFO buffer
Default timing set
Default timing set
high = normal mode, low = inhibits transmit (data in still goes to buffer)
high = normal mode, low = prevents serial data being output
5V (regulated power supply); Decouple with 100nuF close to IC
Connect to 19.6608MHz crystal via 100Ω resistor
Connect to 19.6608MHz crystal
Baseband input from receiver data output
Baseband output to transmitter data input
NOTES:
1. M48 is intended for use with USX/UHX, RMX and LM series radios.
If other radios are used, then to reliably recover the data format an external peak sampling data
recovery circuit is recommended, such as QR96.
2. All conncetions are 5v cmos logic level except TXE, which is a an open drain
(but do not exceed +5v on this pin)
3. Some Radiometrix transmitters require 3v logic levels on their transit data inputs:
In such cases a divider (4K7 series, 10K to ground) on the RXD pin is needed
4. In RX operation, Tone_out becomes a high impedance
5. After pulling TXE low (active), the coder allows about 50mS for TX to power up and settle
(this, and other timings, can be modified via the setup mode)
6. RSTXD (pin 7) has no pullup. If the device is only used for transmit, then tie this pin to VCC
7. Vcc must be a 5v regulated supply (4.5 - 5.5v).
At this oscillator frequency the pic will not operate reliably at 3v
8. An approximately 5.1kbps multiphase coded comms protocol is used
9. Without external loads the chip draws less than 5mA from 5v
10. tx_FLOW goes low when the tx buffer is 3/4 full.
it returns to high state when the buffer is empty
11. rx_FLOW goes low whenever valid data is present in the receive buffer.
12. A simple addressing structure is included in the datastream.
Units may be programmed onto one of 254 addresses
Radiometrix Ltd
M48A Modem Data Sheet
page 2
Address 0 is a broadcast 'all units' address
Address 255 is reserved (Units are supplied set to adr1 = 0, adr2,3,4 and adr_tx =1)
13. OSC1, 2 require a 19.6608MHz fundamental mode crystal, a series 100 ohm resistor from OSC2,
and a pair of 15pF caps : from the crystal pins to 0V
14. DFLT0 DFTL1
high high : slow timing (20mS, 50mS, 20mS)
low high : tba
high low : tba
high high : tba
These pins have internal pullups. They are only read at power-up, if the unit has not been already
programmed. They are also read on execution of a DEFAULT command
15. TX_inhibit is only sampled as the transmitter is initialising (and before a carrier is being emitted). It is
ignored during constantly streaming data (ie: once the transmitter has activated)
The Radio / datastream interface
A 128 byte software fifo is implemented on transmit (64 bytes on receive). At the transmit end this is used to
allow for the transmitter start up time (nominally 50mS), and to buffer data where the user interface baud
rate is set to more than 4800 baud. On receive it buffers arriving packets to the constant output data rate.
All timing and data formatting tasks are handled by the software. The user need not worry about keying the
transmitter before sending data: the link is entirely transparent.
For transmission across the radio link data is formatted into packets, each comprising up to 16 bytes of
payload data, a framing/sync code, an address byte and a checksum.
A simple P/N based scrambler algorithm is applied to the data payload, to 'whiten' the data, although the
data stream is not guaranteed to have a strictly 50:50 mark space. A peak sampling data recovery circuit
(such as QR96) is recommended
In transparent (normal) mode the entire 16 bytes of payload are used for data. In this mode, data can be
streamed at 4800 baud (or slower), without restrictions. The unit has, however, other "expanded" modes.
In expanded mode, the normal address byte is set to FF, and the first two bytes of the payload contain an
address byte and a mode byte, followed by up to 14 bytes of data.
The mode byte operates as a special function code (80-FF) or a burst identifier (01-7F). It is never a zero.
Burst identifier is an arbitary number incremented after each transmission. It is used to prevent the reception
of multiple copies of the same burst when in AKN or repeater operation
If less than 16 bytes are in the transmit end fifo then a shorter packet is still sent. When the transmit end fifo
has completely emptied, then the transmitter is keyed off. A link latency (first byte in to tx to first byte out of
rx) of about [ preamble period + 40mS ] is achievable..
Transmit operations have precedence over receive. If a byte is received on the TXD pin the unit immediately
switches into transmit mode, and any data in the the receiver buffers is lost. (for LBT applications this
precedence can be modified by using the N_TX_inhibit input)
To prevent un-necessary transmission of short packets, a programable delay (usually 20mS) is applied
between the arrival of a byte on TXD and the unit commencing it's transmit sequence. Unfortunately, during
this delay period, the receiver decoder functions are off-line and data already in the rx buffer is still lost.
Raw data is not fed to the radios. A coding operation in the transmit software, and decoding in the receiver,
isolate the AC coupled, potentially noisy baseband radio environment from the datastream.
Radiometrix Ltd
M48A Modem Data Sheet
page 3
Programming the M48
In order to use all the functions embedded in the M48, the user must be aware of the setup/programming
facility, which allows user customisation of the device's operating modes.
The device is programmed through the same RS232 port that is used for sending/receiving data. An RS232
terminal emulator (such as Aterm or HyperTerminal) is an ideal tool.
To enter program mode, a 'BREAK' character (a long 'space' condition that triggers a stop bit framing error in
the UART) must be sent to the unit.
The unit then 'replies' with an @ character, followed by a random character (ascii code between 48 and 79).
The user must then send this random value back to the unit within a five second timeout period (after which
the M48 reverts to normal operation)
Reception of a CTRL-A (ascii 1) will cause a new random value to be calculated and another @ and random
sequence is output (and the timeout counter is reset)
On reception of the correct byte, the M48 enters ‘command’ mode and sends the string “M48 SETUP”
In command mode the radio link is disabled, but characters sent to the unit (at the programmed baud rate,
as normal) are echoed back on the RXD pin.
The unit will only respond to certain command strings:
Upper case characters are used for all commands
Spaces are echoed, but are ignored by the parser
Keyboard entry
COMMANDS
carriage return (ascii 13)
Escape (ascii 27)
? or / (ascii 63 or 47)
- (ascii 54)
& (ascii 38)
delete (ascii 127)
FUNCTION
processes the input buffer contents (and clears the buffer)
terminates setup mode and returns to normal 'data' operation
prints the current contents of the input buffer
shortcut for the STATE command
shortcut for the RX command
clears the input buffer
Address setup
These commands set up the addresses. An M48 will only communicate with a unit set to the same address.
The M48 supports four receive addresses (of which ADR1 is usually set to zero) and a separate transmit
address
COMMANDS
ADR1 aa
ADR2 aa
ADR3 aa
ADR4 aa
ADTX aa
ADDR aa
FUNCTION
set receiver address 1
set receiver address 2
set receiver address 3
set receiver address 4
set transmitter address
set rx address 1 to zero and set tx address and rx addresses 2, 3 and 4 to aa
Notes:
1. aa is a two digit hexadecimal value (00 to FE)
2. Addresses are stored in volatile memory.
3. On power-up the M48 reverts to the defaults in EEPROM (as supplied these are tx addr=1, rx addr1
= 0 and rx addr 2-4 =1)
Radiometrix Ltd
M48A Modem Data Sheet
page 4
Operating mode setup
COMMANDS
DIAG
MEXT
AKN
STAF
NORM
PROM <CR>
FUNCTION
Enter a diagnostic mode, where the address, length, checksum and decoder
status byte for every received burst are printed
The unit now operates in extended mode (burst ID on, multiple transmissions
set by TRIES)
The unit now operates in aknowledge/resend (extended) mode
Operate as a store and forward repeater (with MEXT set, or not)
The unit returns to standard, transparent mode
Writes the current volatile settings (addresses and operating mode) into
EEPROM as the new defaults.
MEXT is used for multiple packet send operations, and (with TRIES set to one) to communicate with
repeater networks. This mode enables extended 14 byte packet format with burst identifier handling, but
without AKN burst generation"
It also allows listening in on AKN mode packets, without generating AKN transmissions.
In extended mode the data throughput is slightly reduced, as only 14 bytes are sent per packet. Fully
transparent 4800 baud operation is not supported.
STAF initialises the "store and forward" repeater mode.
In this mode, when a packet is received it, it is buffered and re-sent immediately.
Care must be taken by the user to control overflow issues when using the store and forward mode, as the
repeater only has a 16 byte (one packet) buffer, and cannot re-send two consecutive packets
(We recommend setting the TXOFF delay on the sending unit to a time greater than a burst length, so
permitting the repeater to clear it's buffer before the next packet can arrive. DELAY should also be set so as
to maximise the length of each transmit packet)
STAF can be used in extended (MEXT) mode, in which case multiple reception of the same burst by the
recipient (via repeater, and direct from sender) is handled by the embedded burst id code (and the same tx
and rx addresses are programmed into all units)
Alternatively (in normal mode) by manually setting the repeater's transmit address / recipient receive address
and sender's transmit / repeater receive to different values, the recipient can be made to respond only to
packets from the repeater.
Timing and baud rate setup
Take great care when setting timing parameters and baud rates. It is possible to upset the correct operation
of the unit, or lose communication with it altogether. In the worst case, where an unknown BAUD rate has
been set, then remember that the character following a 'break' is always an ascii 64 (the @ character) and
that on a scope this easily allows the bit-period to be measured
As supplied, the M48 is set to 4800 baud main interface, and 2400 baud on the aux-port
These setup parameters are immediately stored in EEPROM, and take effect right away.
COMMANDS
BAUD b1
BAUX b2
FUNCTION
Set main port baud rate
set aux port baud rate
NOTES
b1, b2 are baud rates
Only the first two digits are needed, i.e. BAUD 12 iss valid
Main port (b1) supports 1200, 2400, 4800, 9600, 19200, 38400, 57600, 76800
Aux port (b2) supports 1200, 2400, 4800, 9600 only
COMMANDS
DELAY dd
PREAM pp
TXOFF oo
TRIES rr
TIMEOUT tt
FUNCTION
Set the initial delay between first byte arrival and transmit start (20mS default)
Set the number of (620uS long) preamble bits (80 its / 50mS default)
Set the tx ramp-down period (20mS default)
Number of transmissions attempts allowed in AKN and MULT modes
Duration of AKN resend timeout (tt x 0.41mS)
Note: Variables dd, pp, oo, rr and tt are all two digit hexadecimal values (00 to FF)
Radiometrix Ltd
M48A Modem Data Sheet
page 5
General commands
COMMANDS
DEFAULT
STATE
LOCK
EXIT
TEST
RX
FUNCTION
The unit self-reprograms with ALL original factory preset values
Prints out the current operating parameters (a single minus sign, ascii 54, does the
same)
The unit now defaults to setup (rather than data) mode on power up
Return to data mode (same effect as an escape (ascii 27) byte)
If a LOCK command is in force, an escape byte has no effect, but EXIT overrides LOCK
Turns on the transmitter, and outputs a continuous 200Hz tone
This mode is disabled by any activity on the TXD input
Turn on the receiver/decoder (as if in data mode) and output received packets as
normal
This mode is disabled, and command mode re-entered, by any activity on the TXD input
A Carriage Return '<CR>' (ascill 13) should be entered after each command sequence to execute it. (with a
few exceptions among the single key commands and the string operations)
An incorrect command string will elicit an ‘ERR’ reply
A correct string is answered with an ‘OK’ (after all EEPROM programming has been completed)
If the buffer is empty, only the <cr> will be echoed
'String' commands
There are special commands which allow whole strings of characters to be sent via the transmitter, or the
auxilliary serial port (usually connected to the radio module programming input)
Auxilliary port output (to allow programming of an attached radio module)
[ (1-30 byte data string) ]
pin
[ (1-30 byte data string) <cr>
(ascill 91, 93) outputs the text string between the [ ] characters, to the AUX
(ascii 91, 13) as above, but with an added CR (13) appended to the end
Special ‘transmit a packet from command mode’ function.
$ (length byte) (1-16 byte data string)
($ is ascii 36)
This function output a data packet to the transmitter, then returns to setup mode.
‘Length byte’ is a single hex character.
It sets the length of a transient data buffer (the actual buffer length is one more than the value of length, so
0-F corresponds to a buffer between 1 and 16 bytes long)
After the length byte, the M48 sends back a colon character (ascii 58)
‘data string’ is a string of bytes equal in number to length+1
When the final byte is received, the modem goes into transmit, and sends a packet
Note: By careful use of the & and $ command bytes, the M48 can be used in a non-transparent mode,
without ever leaving command mode. This is especially useful for the master node in point to multi-point
operation.
Timings
The data throughput of the M48 is limited by the radio path. In continuously streaming (transparent) mode a
baud rate of 4800 baud is supported without any buffer overflows.
Byte latency is influenced by the switching performance of the radio (and the programmed DELAY and
PREAM values).
In default mode (20mS delay, 50mS preamble) the single byte in to out latency is of the order of 110mS
(20+50+40mS burst length and processing delays) although in streaming data this is reduced to around
30mS
Radiometrix Ltd
M48A Modem Data Sheet
page 6
If radio switching times are faster, then the preamble duration and the tx off delay can be reduced (crystal
controlled radios such as NiM2 work well with 15mS of preamble, 5mS tx off) and latency falls to around
40mS
In ANK mode, the switching speed of the radios, and the time absorbed in sending and decoding the
acknowledge burst dominate the data throughput. The acknowledge in itself requires only 20mS, but the
requirement to switch both radios between receive and transmit (to send the data packet, and then the akn
packet) adds a significant overhead.
Referring to the default timing setup this results in 1 packet per 150mS, and a peak data througput of only
900 baud, although if radios with faster switching performance are used then this is significantly increased.
(With NiM2 or BiM1 radios, the preamble duration can be significantly reduced, and an aknowledged mode
data rate of well over 1200 baud is achievable)
Unless only short data bursts are used, we recommend the use of CTS flow control if AKN is selected
Ordering Information:
M48A-000-SS - Shrink Small Outline
M48A-000-SO - Small Outline
M48A-000-DIL - Plastic Dual In Package
Radiometrix Ltd
M48A Modem Data Sheet
page 7
BiM, NIM & USX series radio transceiver + M48A modem interface for RS232 port
Application circuit
Radiometrix Ltd
M48A Modem Data Sheet
page 8
Radiometrix Ltd
Hartcran House
231 Kenton Lane
Harrow, Middlesex
HA3 8RP
ENGLAND
Tel: +44 (0) 20 8909 9595
Fax: +44 (0) 20 8909 2233
[email protected]
www.radiometrix.com
Copyright notice
This product data sheet is the original work and copyrighted property of Radiometrix Ltd. Reproduction in
whole or in part must give clear acknowledgement to the copyright owner.
Limitation of liability
The information furnished by Radiometrix Ltd is believed to be accurate and reliable. Radiometrix Ltd
reserves the right to make changes or improvements in the design, specification or manufacture of its
subassembly products without notice. Radiometrix Ltd does not assume any liability arising from the
application or use of any product or circuit described herein, nor for any infringements of patents or other
rights of third parties which may result from the use of its products. This data sheet neither states nor
implies warranty of any kind, including fitness for any particular application. These radio devices may be
subject to radio interference and may not function as intended if interference is present. We do NOT
recommend their use for life critical applications.
The Intrastat commodity code for all our modules is: 8542 6000.
R&TTE Directive
After 7 April 2001 the manufacturer can only place finished product on the market under the provisions of
the R&TTE Directive. Equipment within the scope of the R&TTE Directive may demonstrate compliance
to the essential requirements specified in Article 3 of the Directive, as appropriate to the particular
equipment.
Further details are available on The Office of Communications (Ofcom) web site:
http://www.ofcom.org.uk/radiocomms/ifi/
Information Requests
Ofcom
Riverside House
2a Southwark Bridge Road
London SE1 9HA
Tel: +44 (0)845 456 3000 or 020 7981 3040
Fax: +44 (0)20 7783 4033
[email protected]
European Radiocommunications Office (ERO)
Peblingehus
Nansensgade 19
DK 1366 Copenhagen
Tel. +45 33896300
Fax +45 33896330
[email protected]
www.ero.dk