One of the cheapest (but not the best) solutions for DIY wireless data transmission between different devices (Arduino and other microcontrollers) is a pair of 433MHz modules: FS1000A and XY-MK-5V. A set of them (you will need one transmitter and one receiver) costs about $1. Pretty cheap, right?

FS1000A and XY-MK-5V 433MHz RF modules

Of course, there is a price to pay. Those modules are as simple as possible. They do not offer anything like error correction, RSSI, frequency hopping, or even two-directional transmission. They offer only basic functionality: receiver reports digital ONE when the transmitter detects ONE on the input (if in range, of course). Everything above that has to be done in the software.

Of course, there are at least a couple of libraries for different microcontrollers (Arduino and similar) like VirtualWire or RadioHead. But well, their functionality is still limited.


The transmitter. Smaller of the pair.

  • Connectors: Vcc (power), GND (ground) and ATAD (DATA, device transmits when the HIGH state is applied)
  • Working voltage: 3-12V. Higher voltage = more power = more range
  • Current while transmitting: 28mA
  • Range: "up to 200m". I will check that later
  • Data speed: up to 10Kbps, but range drops considerably with speed above 2400bps
  • Sold without an antenna. No antenna = limited range. To make an antenna, just solder 165mm of copper wire to the ANT pad


The receiver. The bigger one.

  • Connectors: GND, 2x DATA, Vcc
  • Voltage: 5V. Very sensitive to voltage fluctuations. Always use stabilized power source and decoupling capacitor
  • Current while standby: 4mA
  • Sold without an antenna. 165mm of copper wire solves the problem

You can get them very cheap from China


The topic of range of FS1000A and XY-MK-5V is complicated. It can vary from only a few meters to a few hundred meters in open space when proper antennas are used.