RF04 - USB Telemetry Module  

Technical Specification
Covering the RF04/400 European and RF04/900 USA/Canada modules

The RF04 is a very easy to use radio telemetry module. The module is powered from the USB bus, so no external power supply or batteries are required. Just plug it into your PC and it will appear as a COM port. The RF04 module can be used by anyone who can program a PC to use the COM ports.

License Exempt Frequency Bands
The RF04/400 uses the LPRS EasyRadio ER400TRS module which operates at 433-4MHz. The frequency allocations between 433-4MHz are Pan European and also extend to South Africa, Australia & New Zealand.
The RF04/900 uses the ER900TRS module for EU (868-870MHz) or USA (902-920MHz) markets. Power output up to 10mW. NOTE restrictions in USA to 1mW and 5mW EU

First Step - Get The Drivers
The heart of this module is the FTDI FT232BM USB chip and the LPRS EasyRadio transceiver. The documentation provided by FTDI is very complete, and is not duplicated here. The serial input and output of the FT232BM connects directly to the EasyRadio module. Before using the RF04, you will need to install FTDI's Virtual COM Port ( VCP ) Drivers. These drivers appear to the system as an extra Com Port ( in addition to any existing hardware Com Ports ). Application software accesses the USB device in the same way as it would access a standard Windows Com Port using the Windows VCOMM API calls or by using a Com Port  Library. Drivers are available for Windows, Apple, Linux and Open BSD systems directly from the FTDI website. You should get and install the drivers now, before you connect the RF04 to your computer. The Drivers page is here

Which COM port?
After installing the drivers, and plugging in the RF04 module to a spare USB port, you will want to know which COM port it has been assigned to. This will vary from system to system depending on how many COM ports you currently have installed. To find out where it is, right click on your "My Computer" desktop icon and select the "Device Manager" tab. Now scroll down and open the "Ports (COM & LPT)" tab. You should see the USB serial port listed - COM2 in the example below. If you want to change the COM port number - just right click on it, select properties, select advanced and select the COM port number from the available list.


What COM Port Settings?
The COM port should be set up for 19200 baud, 8 data bits, no parity and one stop bit. The following is a Visual C++ function we use to set up the serial COM port, together with the serial in and out functions..

void CBrain::SetupCommPort(void)
  DCB dcb;

  hCom = CreateFile( COM2, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
  GetCommState(hCom, &dcb);
  dcb.BaudRate = CBR_19200;
  dcb.fParity = FALSE;
  dcb.fOutxCtsFlow = FALSE;
  dcb.fOutxDsrFlow = FALSE;
  dcb.fDtrControl = DTR_CONTROL_DISABLE;
  dcb.fDsrSensitivity = FALSE;
  dcb.fOutX = FALSE;
  dcb.fInX = FALSE;
  dcb.fRtsControl = RTS_CONTROL_DISABLE;
  dcb.fAbortOnError = FALSE;
  dcb.ByteSize = 8;
  dcb.Parity = NOPARITY;
  dcb.StopBits = ONESTOPBIT;
  SetCommState(hCom, &dcb);

void CBrain::SerOut(BYTE sbuf)
  DWORD n;
  WriteFile(hCom, &sbuf, 1, &n, NULL);

BYTE CBrain::SerIn(void)
  BYTE sbuf;
  DWORD n;
  ReadFile(hCom, &sbuf, 1, &n, NULL);
  return sbuf;

RF04 Schematic

RF04 Footprint

Further Information
For further technical information on the USB chip, please visit the FTDI website,
and for further technical information on the EasyRadio transceiver, please visit the LPRS website. 
Both these companies update their data regularly.