Skip to content

Commit ec1d0ff

Browse files
committed
nRF24L01+ module with Raspberry pi python change added
0 parents  commit ec1d0ff

File tree

4 files changed

+932
-0
lines changed

4 files changed

+932
-0
lines changed

RecieverModeMaster.py

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
import RPi.GPIO as GPIO
2+
from lib_nrf24 import NRF24
3+
import time
4+
import spidev
5+
GPIO.setmode(GPIO.BCM)
6+
pips = [[0xE8, 0xE8, 0xF0, 0xF0, 0xE1], [0xF0, 0xF0, 0xF0, 0xF0, 0xE1]]
7+
radio = NRF24(GPIO, spidev.SpiDev())
8+
radio.begin(0, 17)
9+
10+
#0xF0, 0xF0, 0xF0, 0xF0, 0xE1
11+
12+
radio.setPayloadSize(32)
13+
#radio.setChannel(0x76)
14+
radio.setDataRate(NRF24.BR_1MBPS)
15+
radio.setPALevel(NRF24.PA_MIN)
16+
17+
18+
radio.setAutoAck(True)
19+
radio.enableDynamicPayloads()
20+
#radio.enableAckPayload()
21+
22+
radio.openReadingPipe(1,pips[0])
23+
#radio.printDetails()
24+
radio.startListening()
25+
26+
27+
28+
while True:
29+
while not radio.available(0):
30+
time.sleep(1/100)
31+
receivedMessage = []
32+
radio.read(receivedMessage, radio.getDynamicPayloadSize())
33+
print("Received:{}".format(receivedMessage))
34+
35+
print("Translating received message")
36+
string = ""
37+
38+
for n in receivedMessage:
39+
if(n>=32 and n<=126):
40+
string +=chr(n)
41+
print("Translated message:{}".format(string))
42+
time.sleep(1)
43+

Tranciever.py

+56
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
import RPi.GPIO as GPIO
2+
from lib_nrf24 import NRF24
3+
import time
4+
import spidev
5+
6+
GPIO.setmode(GPIO.BCM)
7+
8+
pipes = [[0xE8, 0xE8, 0xF0, 0xF0, 0xE1], [0xF0, 0xF0, 0xF0, 0xF0, 0xE1]]
9+
10+
radio = NRF24(GPIO, spidev.SpiDev())
11+
radio.begin(0, 17)
12+
13+
radio.setPayloadSize(32)
14+
radio.setChannel(0x76)
15+
radio.setDataRate(NRF24.BR_1MBPS)
16+
radio.setPALevel(NRF24.PA_MIN)
17+
18+
radio.setAutoAck(True)
19+
radio.enableDynamicPayloads()
20+
radio.enableAckPayload()
21+
22+
radio.openWritingPipe(pipes[0])
23+
radio.openReadingPipe(1, pipes[1])
24+
radio.printDetails()
25+
radio.startListening()
26+
27+
message = list("GETSTRING")
28+
while len(message) < 32:
29+
message.append(0)
30+
31+
while True:
32+
start = time.time()
33+
radio.write(message)
34+
print("Sent the message: {}".format(message))
35+
radio.startListening()
36+
37+
while not radio.available(0):
38+
time.sleep(1/100)
39+
if time.time() - start > 2:
40+
print("Timed out.")
41+
break
42+
43+
receivedMessage = []
44+
radio.read(receivedMessage, radio.getDynamicPayloadSize())
45+
print("Received: {}".format(receivedMessage))
46+
47+
print("Translating our received Message into unicode characters...")
48+
string = ""
49+
50+
for n in receivedMessage:
51+
if (n >= 32 and n <= 126):
52+
string += chr(n)
53+
print("Our received message decodes to: {}".format(string))
54+
55+
radio.stopListening()
56+
time.sleep(1)

0 commit comments

Comments
 (0)