433mhz module: Convert this picbasic code to propeller?
Hello Guys!
Trying to get started with a new wireless project of mine. I have posted this question over in the propeller forum, but the thread is absolutely stone cold.
Forgive me for this double post, but here it comes:
Trying to control some wall-outlet relays, wich is cordless and works on the 433MHz band. I am completely new to the wireless stuff with propeller, and have never used it on another platform either.
I have found a protocol for the recievers, and also code that works with PIC (Basic, PBASIC?)
The protocol can be found following this link: http://svn.telldus.com/svn/rf_ctrl/nexa_2_6_driver/trunk/NexaProtocol.txt
And here is the Pbasic code:
It would be great if someone could help me translate this to spin, so that i have a test-code as a kickstart.
The code above does also use the parallax module, but way back when they came separated as sender and reciever.
Iam very excited to get started with this project, so any help will be greatly appreciated!
Thanks guys.
Daniel
Trying to get started with a new wireless project of mine. I have posted this question over in the propeller forum, but the thread is absolutely stone cold.
Forgive me for this double post, but here it comes:
Trying to control some wall-outlet relays, wich is cordless and works on the 433MHz band. I am completely new to the wireless stuff with propeller, and have never used it on another platform either.
I have found a protocol for the recievers, and also code that works with PIC (Basic, PBASIC?)
The protocol can be found following this link: http://svn.telldus.com/svn/rf_ctrl/nexa_2_6_driver/trunk/NexaProtocol.txt
And here is the Pbasic code:
DEFINE OSC 4 ' Timing as described in NexaProtocol.txt T CON 350 ' T = 350uS T3 CON 1050 ' 3T T32 CON 11200 ' 32T (Stop/Synch) ' Note we're using 1 VS X as shown in text A1_ON CON %111000000000 ' 12-bit code for House/Unit A1 ON A1_OFF CON %011000000000 ' 12-bit code for House/Unit A1 OFF ' ||||||||||||____ 4-bit House code ' ||||||||________ 4-bit Unit code ' ||||____________ 3-bit Unknown code ' |_______________ 1-bit Activation code 1=ON 0=OFF D_PACKET VAR WORD ' Holds 12-bit data packet to send INDEX VAR BYTE ' Data packet bit index pointer LOOPS VAR BYTE ' Loop counter TX VAR PORTB.0 ' Connects to RF transmitter data in LOW TX ' TX output idles low for RF carrier OFF Main: D_PACKET = A1_ON GOSUB Send PAUSE 5000 D_PACKET = A1_OFF GOSUB Send PAUSE 5000 GOTO Main Send: FOR LOOPS = 1 TO 4 ' send each packet 4 times FOR INDEX = 0 TO 11 ' sends 12 bits per pass LSB 1st HIGH TX ' The 1st half of a 0 or X bit period is the PAUSEUS T ' same so no need to repeat this sequence inside LOW TX ' the IF block PAUSEUS T3 IF D_PACKET.0[INDEX]=1 THEN HIGH TX ' send a 1 bit (1=X here) PAUSEUS T3 LOW TX PAUSEUS T ELSE HIGH TX ' send a 0 bit PAUSEUS T LOW TX PAUSEUS T3 ENDIF NEXT INDEX ' loop until all 12-bits sent ' Start of Stop/Synch period after each 12-bit packet HIGH TX PAUSEUS T LOW TX PAUSEUS T32 ' End of Stop/Synch period NEXT LOOPS ' send 4 packets per pass RETURN END
It would be great if someone could help me translate this to spin, so that i have a test-code as a kickstart.
The code above does also use the parallax module, but way back when they came separated as sender and reciever.
Iam very excited to get started with this project, so any help will be greatly appreciated!
Thanks guys.
Daniel
This discussion has been closed.
Comments
Do not cross-post!
Thats why i created this one, and i am unable to delete the other one.
Oh, and thanks for your help.
Im very sorry if i ruined your day.