I would like to use an Arduino to relay data from a 433MHz sensor network to a WiFi web server. I know that the Arduino has the web server ability, using a WiFi shield, but I would like to know if one can also connect a 433MHz transciever at the same time?

I would like to monitor and control a remote system via a web page, and some of the sensors will be remote solar powered. Control will just be relay control of a valve.


2 Answers 2


Yes. You can connect any number of sensors in addition to a WiFi shield, subject to the obvious limitations of

Available physical ports,
power supply availability
processing power
Non interference of Wifi (usually 2.4 GHz) and 432 MHz equipment.

None of these are 'show stoppers". It's mainly a case of applying applied common sense.

Physical ports should be a non issue. The 432 MHz unit should require as little as one pin to communicate (eg half duplax async) and at worst should need no worse than something like TXD, RXD, enable, power/enable.

Power supply availability from solar power is just a matter of design. If this transmits autonomously and/or "gets in touch" on a timed basis and does not have to receive on demand then standby power can be low. If it has to monitor a receiver then you will have to tradeoff receiver always on simplicity against receiver occasional wakeup and listen with lower power but more complex scheduling. This is standard fare for this sort of application.

As a very very very rough indication

  • PV panel Wattage ~~= 12 x Average Wattage x days standby ability.


  • PV panel Wattage ~~= 24/Sunshine_hours* x Average Wattage x days standby ability.

    • Where sunshine_hours = equivalent full sunlight per day. Where full sunlight = 1000 Watts/metre^2

Sunshine hours can be established via the wonderful Gaisma website - this link is to the page for my home city Auckland.
The 4th chart / table down shows sunshine hours by month. Fpr auckland

Insolation, kWh/m²/day January - December
6.55 5.88 4.85 3.56 2.62 2.06 2.24 3.06 4.17 5.10 5.97 6.51

Best month is January with 6.55 hours and worst is June with 2.06 sunshine hours. Most sites world wide give about 2 hours worst case - which is why the first formula above use 24/sunshine_hours = 12. If you are in NYNY you will get less and if in eg Moscow Russia you get about 20 minutes/day in mid winter.
Solar power is not recommended in Moscow Russia in mid winter.

To find your city's SSH (sunshine hours) use either Gaisma's serach or usually quicker use Gargoyle and enter just gaisma city_name and most cases it will be first hit.

Processing power should be find. Quickest of trials will show you what to expect. Worst case you can walk and chew gum sequentially rather than both together.

2.4 GHz and 432 MHz equipment can exist with ease at the same location with only the most rudimentary of precautions. You can get them to interfere badly if you try hard to do so.

  • \$\begingroup\$ Thanks Russell, only the sensors (node.wickeddevice.com) would be solar powered 433MHz devices, as they are very low power, but can still get a good enough range for my application. The Arduino would have a 433MHz Tx/Rx as well as the WiFi. As both WiFi and 433 use the Rx and Tx pins on the Arduino, I was wondering how to actually connect both. \$\endgroup\$
    – Andrew
    Jan 23, 2012 at 23:51
  • \$\begingroup\$ Where does the 12*average_wattage comes from? Should it be 24/12? But probably the ratio is closer to 8...and consider that the light will likely be lower, considering also the incidence angle \$\endgroup\$
    – clabacchio
    May 22, 2012 at 8:33
  • \$\begingroup\$ Did the OP ask about how to power his board? I must be missing something in the original question. \$\endgroup\$ May 22, 2012 at 12:24
  • \$\begingroup\$ @NickJohnson yes he did: he wants to solar power it \$\endgroup\$
    – clabacchio
    May 22, 2012 at 13:00
  • \$\begingroup\$ @clabacchio - 12 comes from assumption of worst case sun of about 2 hours average of full sun per day in winter. Most but not all places on earth have 2+ hours worst case. My city is far from frozen but gets down to anout 2.5 hours IIRC. So panbel need is: Avg Watts x 24 hours per day/2_hours_charging. \$\endgroup\$
    – Russell McMahon
    May 22, 2012 at 16:05

The Arduino Uno, as you've observed, only has one UART (serial port). You cannot connect more than one device to it and expect it to work.

However, there are Arduino libraries for software serial (in fact, the most commonly used one is now built into the Arduino environment, and is called SoftSerial. This allows you to instantiate a serial port on any two pins.

Thus, your best option is to connect one module to the hardware UART - preferably whichever will have the higher data rate - and the other to any two spare pins, and use SoftSerial to communicate with it. Alternately, you could use SofSerial for both devices, leaving your UART free for USB communications and debugging, but be warned that trying to do high data rates via SoftSerial will consume most of your AVR's clock cycles.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.