Hello Everyone.
Iam Building a rf remote control for turn on and off 4 lights on and off on a boat. The emissor will be on the beach while the boat distance from the shore will be around 1km to 3km is necessary 2 at least, Usualy will be LOS only thing between is a layer Fiberglass and sometimes a body of someone.
The Hardware is pretty mutch done as you can see on the following link Rf Picaxe Picturesbut iam testing the code on this last days and got a bit confused. From what i searched and read if you use manchester code was suposed to increase your range, but with me is happening the oposite i used the code that hippy sugested on another topic and does what is suposed but the range will decrease alot. So i would like to ear some sugestions how to improve my code and increase the range .
My Setup is
Emissor Radiometrix TX3H-869.50-10 supplied whit a 7805 from a 12volts battery and sharing the supply whit the picaxe 18x.
Datasheet http://www.radiometrix.com/files/additional/tx3h.pdf
Receiver Radiometrix RX3A-869.50-10 suplied whit a 7805 just for him and the picaxe is feed whit a another 7805 from the same 12v battery.
Datasheet http://www.radiometrix.co.uk/dsheets/tx3h.pdf
both got 1/4 wave whip antennas whit a decent ground plane on the receiver but on the emissor dont space for a bigger ground plane.
The Basic Code iam using atm whit best results
Emissor
Receiver
the manchester code from hippy sugestion
Receiver
Tried diferent baud rates but the modules dont like <2400baud.
Would like to ear some opinions how to improve the code for max range.
Iam Building a rf remote control for turn on and off 4 lights on and off on a boat. The emissor will be on the beach while the boat distance from the shore will be around 1km to 3km is necessary 2 at least, Usualy will be LOS only thing between is a layer Fiberglass and sometimes a body of someone.
The Hardware is pretty mutch done as you can see on the following link Rf Picaxe Picturesbut iam testing the code on this last days and got a bit confused. From what i searched and read if you use manchester code was suposed to increase your range, but with me is happening the oposite i used the code that hippy sugested on another topic and does what is suposed but the range will decrease alot. So i would like to ear some sugestions how to improve my code and increase the range .
My Setup is
Emissor Radiometrix TX3H-869.50-10 supplied whit a 7805 from a 12volts battery and sharing the supply whit the picaxe 18x.
Datasheet http://www.radiometrix.com/files/additional/tx3h.pdf
Receiver Radiometrix RX3A-869.50-10 suplied whit a 7805 just for him and the picaxe is feed whit a another 7805 from the same 12v battery.
Datasheet http://www.radiometrix.co.uk/dsheets/tx3h.pdf
both got 1/4 wave whip antennas whit a decent ground plane on the receiver but on the emissor dont space for a bigger ground plane.
The Basic Code iam using atm whit best results
Emissor
Code:
main:
if pin1 = 1 then
b13 =1
high 5
high 1
pause 60
serout 4,N2400,("UUUUUUXYZ",b0,b1,b2,b3,b4,b5,b6,b7,b8,b9 ,b10,b11,b12,b13)
low 5
low 1
end if
if pin2 = 1 then
b13 =2
high 5
high 1
pause 60
serout 4,N2400,("UUUUUUXYZ",b0,b1,b2,b3,b4,b5,b6,b7,b8,b9 ,b10,b11,b12,b13)
low 5
low 1
end if
if pin0 = 1 then
b13 =3
high 5
high 1
pause 60
serout 4,N2400,("UUUUUUXYZ",b0,b1,b2,b3,b4,b5,b6,b7,b8,b9 ,b10,b11,b12,b13)
low 5
low 1
end if
if pin7 = 1 then
b13 =4
high 5
high 1
pause 60
serout 4,N2400,("UUUUUUXYZ",b0,b1,b2,b3,b4,b5,b6,b7,b8,b9 ,b10,b11,b12,b13)
low 5
low 1
end if
goto main
Code:
main: serin 1,N2400,("XYZ"),b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10, b11,b12,b13
if b13=1 then
high 2
pause 200
low 2
endif
if b13=2 then
high 4
pause 200
low 4
endif
if b13=20 then
for b0 = 1 to 59999
high 4
pause 59999
next
end if
goto main
Code:
main:
b0 = 1
send:
bit15 = bit7
bit13 = bit6
bit11 = bit5
bit9 = bit4
bit7 = bit3
bit5 = bit2
bit3 = bit1
bit1 = bit0
w0 = w0 AND $AAAA
w0 = w0 XOR $AAAA / 2 OR w0
high 5
high 1
pause 100
SEROUT 4,N2400,(170,170,201 ,b1,b0)
pause 100
low 5
low 1
pause 600
goto main
Code:
main:
b0 = 5
SERIN 1,N2400,(201),b1,b0
w1 = w0 AND $AAAA
w1 = w1 XOR $AAAA / 2 OR w1
IF w0 <> w1 THEN Error
bit0 = bit1
bit1 = bit3
bit2 = bit5
bit3 = bit7
bit4 = bit9
bit5 = bit11
bit6 = bit13
bit7 = bit15
' Result in b0
if b0 = 1 then
high 2
pause 400
low 2
end if
if b0 = 2 then
high 4
pause 400
low 4
end if
goto main
error:
goto main
Would like to ear some opinions how to improve the code for max range.
Last edited: