I just managed to realize wireless communication between an arduino uno and nano with some different, cheap chinese rf link kits using manhatten library. Unfortunately the power of the rf kits isn't appropriate to communicate from basement of my house, where I want to install the nano with some sensors, to my appartment, where I want to make the data logging with the arduino. The house is very rigid with several layers of concrete.
What would be the best approach to communicate wireless. I didn't found suited link kits at acceptable costs. Maybe bluetooth would be an alternative?!
What is the manhatten Library ? can you give a link to it ?
Did you try to optimize the antenna length for both the receiver and the transmitter ?
Could you make something outside the basement/wall/window ? Perhaps a horizontal antanna.
Do you have ethernet or wifi in the basement ?
A few layers of concrete (with steel rods enforcement) could be a problem. Using 433MHz modules would be my first choice. You have to know that the data rate with those is very slow, perhaps a few hundred bytes per second.
Bluetooth is for shorter distances and has more trouble getting through concrete.
Unfortunately I have no wifi or ethernet in the basement.
If I had any idea, how to enhance the antenna of the sender and receiver, I would do so. Is there any description in the web?
I tried the 433MHz link kit by sending manually signals (impulses) and I managed to "communicate" from basement to the roof of the house. To communicate more "professional" I used manhatten library for wireless communication but now the distance is limited.
I would prefer to use an antenna but need a description how to do this.
I could not find any manhatten library either.
But anyway, the VirtualWire library is the only good library for the cheap modules. http://www.airspayce.com/mikem/arduino/
VirtualWire does not repeat messages, so if you want to sure that a message arrives, you might have to repeat it a few times.
XD OK, I'm slightly stupid. Forget about manhattan library and replace it by manchester library (both are cities XD).
The powerline approach might be a solution, but than I cannot use a cheaper and smaller arduino nano but have to implement two uno's together with an ethernet shield. This might be too expensive (together with the powerline modules).
Would it help to reduce the baud rate to the least possible value to get a more stable communication? As I implementend my own simple communication protocol by sending each 50 ms an impulse of 10 ms length I could pass through concrete. This means that I can transfer less than 20 bits per second. For a high speed communication the noise seems to be too high. So the optimum should lie inbetween.
The distance between Manchester and Manhattan is 278 km
It should not be hard to make an Arduino compatible communication devices that use the mains, perhaps with a serial interface. I don't know of something like that exists.
The VirtualWire library is very well optimized to get the best signal. It is not something you can achieve with your own sketch. You have to use it, to learn about the maximim distance (and I would transmit the data a few times).
Bitrate too high: the cheap modules perform worse with high bitrates.
Bitrate too low: Noise could appear in the 'gaps' during the moment the transmitter is off (it is modulated by switching it on and off).
Normally a lower bitrate is better. For what I know, lower than 1000 does not improve it a lot.
Every 6 dBm receiver sensitivity gain will be double the distance.
Every 6 dBi antenna gain will be double the distance
Every 6 dBm Transmitter power gain will be double the distance.
Base on Friis Transmission Equation, for sub Ghz chipset, if we select 300 Mhz v.s 900 Mhz band, the distance will be 3 times more. same thing if we select 300 Mhz v.s. 2400 Mhz, the distance will be 8 times more.
In your case, either gain antenna or gain Transmitter power.
I changed from manchester library to virtual wire, decreased the baud rate to 1000 changed the max signal length in the library to be able to transmit texts of 32 byte length (since I want to send this message length) and finally added a 17 cm antenna to the transmitter and to the receiver of my 434 MHz kit. The transmitter was operating at 12 V the entire time, so no additional tuning was possible.
Finally I get my signal from the basement to my appartment
Well done.
I'm amazed myself that the VirtualWire is so good. I did a test this afternoon, and the distance was larger than I thought it would be.
Those very cheap modules from Ebay don't need to be inverted. The example files for receiver and transmitter contain both a line to invert the signal, but you better remove those lines.
On the receiver module it is possible to get the signal strength (a agc signal) from a capacitor or the chip. I have not tried that yet, but I plan to do that to be able to tune the length of the antannas.