I got a 433mhz transmitter and reciever from Jaycar.
http://www.lostplot.com/pics/TXC1.pdf
http://www.lostplot.com/pics/RXB1%20reciever.pdf
Originally I wanted to send data to the Arduino, part of another project, but had problem with wireless data quality.
I stripped it down and reversed the direction, easier to diagnose I thought.
so I connected them like this...
The max3223 connects to a serial to usb adaptor on a pc.
on the Arduino...
void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println("1234567890abcdefghijklmnipqrstuvwxyz");
delay(1);
}
Heres the data captured on the pc...
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
Great.
As I increase the delay, I get the problem again.
delay=20
67890abcdefghijklmnopqrstuvwxyz
4567890abcdefghijklmnopqrstuvwxyz
567890abcdefghijklmnopqrstuvwxyz
67890abcdefghijklmnopqrstuvwxyz
0567890abcdefghijklmnopqrstuvwxyz
67890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
67890abcdefghijklmnopqrstuvwxyz
1234567810abcdefghijklmnopqrstuvwxyz
890abcdefghijklmnopqrstuvwxyz
467890abcdefghijklmnopqrstuvwxyz
5&7890abcdefghijklmnopqrstuvwxyz
890abcdefghijklmnopqrstuvwxyz
1234567890abcdefghijklmnopqrstuvwxyz
7890abcdefghijklmnopqrstuvwxyz
7890abcdefghijklmnopqrstuvwxyz
67890abcdefghijklmnopqrstuvwxyz
7890abcdefghijklmnopqrstuvwxyz
7890abcdefghijklmnopqrstuvwxyz
67890abcdefghijklmnopqrstuvwxyz
delay=100
@cdefghijklmnopqrstuvwxyz
`cdefghijklmnopqrstuvwxyz
cdefghijklmnopqrstuvwxyz
0À?
??
??¡¥©±µ¹½ÁÅÉÍÑÕÙÝáåé
@`cdefghijklmnopqrstuvwxyz
0abcdefghijklmnopqrstuvwxyz
0abcdefghijklmnopqrstuvwxyz
bcdefghijklmnopqrstuvwxyz
Any ideas why this happens like this ?
I changed the code to tease out some behaviour.
void loop()
{
for(int i=0;i<5;i++) Serial.println("1234567890");
for(int i=0;i<5;i++) Serial.println("abcdefghijklmnipqrstuvwxyz");
delay(100);
}
the results...
34567890
1234567890
1234567890
1234567890
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
234567890
1234567890
1234567890
1234567890
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
0?? 234567890
1234567890
1234567890
1234567890
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
234567890
1234567890
1234567890
1234567890
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
Is it to do with initial transmission?
I wonder if the problem is with the pc end, the max3223, that has features which can invoke powersaving.
http://datasheets.maxim-ic.com/en/ds/MAX3221-MAX3243.pdf
I have FORCEON and FORCEOFF, high (vcc) and EN low (GND).
I thought I could elliminate the pc side and loopback to the Arduino's RX, but I'm not sure how I woul know what data I was seeing on the Arduino serial debug console.
Ideas or comments welcomed.
Thanks