From ab7f168e037cb04824e58dbf5f910333b4dab6f8 Mon Sep 17 00:00:00 2001 From: 2bndy5 <2bndy5@users.noreply.github.com> Date: Wed, 6 Mar 2024 17:20:22 +0000 Subject: [PATCH] deploy: 9eca153dcf39a975fe662e7e86ffde73f7e5eead --- COMMON__ISSUES_8md.html | 2 +- CONTRIBUTING_8md.html | 2 +- RF24_8cpp.html | 2 +- RF24_8cpp_source.html | 2 +- RF24_8h.html | 2 +- RF24_8h_source.html | 2 +- RF24__arch__config_8h.html | 2 +- RF24__arch__config_8h_source.html | 2 +- RF24__config_8h.html | 2 +- RF24__config_8h_source.html | 2 +- annotated.html | 2 +- arduino_8md.html | 2 +- attiny_8md.html | 2 +- atxmega_8md.html | 2 +- classRF24-members.html | 2 +- classRF24.html | 2 +- classes.html | 2 +- compatibility_8h.html | 2 +- compatibility_8h_source.html | 2 +- cross__compile_8md.html | 2 +- deprecated.html | 2 +- dir_08581547d0c03868bb69abd460b21ce0.html | 2 +- dir_49e56c817e5e54854c35e136979f97ca.html | 2 +- dir_64e73385a8b7738563c26ce10415b58d.html | 2 +- examples.html | 2 +- ...2AcknowledgementPayloads_8ino-example.html | 2 +- ...gStarted_2GettingStarted_8ino-example.html | 2 +- ...gure_2InterruptConfigure_8ino-example.html | 2 +- ..._2ManualAcknowledgements_8ino-example.html | 186 +++++++++--------- ...verDemo_2MulticeiverDemo_8ino-example.html | 2 +- ...amingData_2StreamingData_8ino-example.html | 2 +- ...Started_HandlingFailures_8ino-example.html | 2 +- ...meouts_2TransferTimeouts_8ino-example.html | 2 +- ...ngpair_dyn_2pingpair_dyn_8ino-example.html | 2 +- ...ngpair_irq_2pingpair_irq_8ino-example.html | 2 +- ..._sleepy_2pingpair_sleepy_8ino-example.html | 2 +- ..._2rf24ping85_2rf24ping85_8ino-example.html | 2 +- ...ch3pin_2timingSearch3pin_8ino-example.html | 2 +- examples_2scanner_2scanner_8ino-example.html | 2 +- ...2acknowledgementPayloads_8cpp-example.html | 2 +- ...2acknowledgement_payloads_8py-example.html | 2 +- ...es_linux_2getting_started_8py-example.html | 2 +- ...es_linux_2gettingstarted_8cpp-example.html | 2 +- ...inux_2interrupt_configure_8py-example.html | 2 +- ..._2manualAcknowledgements_8cpp-example.html | 2 +- ..._2manual_acknowledgements_8py-example.html | 2 +- ...s_linux_2multiceiverDemo_8cpp-example.html | 2 +- ...s_linux_2multiceiver_demo_8py-example.html | 2 +- examples_linux_2scanner_8cpp-example.html | 2 +- ...les_linux_2streamingData_8cpp-example.html | 2 +- ...les_linux_2streaming_data_8py-example.html | 2 +- files.html | 2 +- functions.html | 2 +- functions_func.html | 2 +- functions_vars.html | 2 +- globals.html | 2 +- globals_defs.html | 2 +- globals_enum.html | 2 +- globals_eval.html | 2 +- globals_func.html | 2 +- globals_type.html | 2 +- globals_vars.html | 2 +- gpio_8h.html | 2 +- gpio_8h_source.html | 2 +- group__CRCLength.html | 2 +- group__Datarate.html | 2 +- group__PALevel.html | 2 +- group__Porting__GPIO.html | 2 +- group__Porting__General.html | 6 +- group__Porting__Includes.html | 2 +- group__Porting__SPI.html | 2 +- group__Porting__Timing.html | 2 +- includes_8h.html | 2 +- includes_8h_source.html | 2 +- index.html | 30 +-- linux__install_8md.html | 2 +- main__page_8md.html | 2 +- md_COMMON_ISSUES.html | 2 +- md_CONTRIBUTING.html | 2 +- md_docs_arduino.html | 2 +- md_docs_attiny.html | 2 +- md_docs_atxmega.html | 2 +- md_docs_cross_compile.html | 2 +- md_docs_linux_install.html | 49 +++-- md_docs_mraa.html | 6 +- md_docs_pico_sdk.html | 28 +-- md_docs_portability.html | 16 +- md_docs_python_wrapper.html | 20 +- md_docs_rpi_general.html | 32 +-- md_docs_using_cmake.html | 22 +-- modules.html | 2 +- mraa_8md.html | 2 +- nRF24L01_8h.html | 2 +- nRF24L01_8h_source.html | 2 +- pages.html | 2 +- pico__sdk_8md.html | 2 +- portability_8md.html | 2 +- printf_8h.html | 2 +- printf_8h_source.html | 2 +- python__wrapper_8md.html | 2 +- rpi__general_8md.html | 2 +- spi_8h.html | 2 +- spi_8h_source.html | 2 +- using__cmake_8md.html | 2 +- 104 files changed, 304 insertions(+), 279 deletions(-) diff --git a/COMMON__ISSUES_8md.html b/COMMON__ISSUES_8md.html index 47012e5f..bad6b6c3 100644 --- a/COMMON__ISSUES_8md.html +++ b/COMMON__ISSUES_8md.html @@ -101,7 +101,7 @@ diff --git a/CONTRIBUTING_8md.html b/CONTRIBUTING_8md.html index cdf4b72d..06be5e8c 100644 --- a/CONTRIBUTING_8md.html +++ b/CONTRIBUTING_8md.html @@ -101,7 +101,7 @@ diff --git a/RF24_8cpp.html b/RF24_8cpp.html index 77f8df54..001d5d68 100644 --- a/RF24_8cpp.html +++ b/RF24_8cpp.html @@ -770,7 +770,7 @@

diff --git a/RF24_8cpp_source.html b/RF24_8cpp_source.html index d97c7c58..e2849340 100644 --- a/RF24_8cpp_source.html +++ b/RF24_8cpp_source.html @@ -2387,7 +2387,7 @@ diff --git a/RF24_8h.html b/RF24_8h.html index 958304a9..d84e92e1 100644 --- a/RF24_8h.html +++ b/RF24_8h.html @@ -141,7 +141,7 @@ diff --git a/RF24_8h_source.html b/RF24_8h_source.html index 5bd3f6eb..fc7ab960 100644 --- a/RF24_8h_source.html +++ b/RF24_8h_source.html @@ -486,7 +486,7 @@ diff --git a/RF24__arch__config_8h.html b/RF24__arch__config_8h.html index 0665d05d..89aff38f 100644 --- a/RF24__arch__config_8h.html +++ b/RF24__arch__config_8h.html @@ -174,7 +174,7 @@ diff --git a/RF24__arch__config_8h_source.html b/RF24__arch__config_8h_source.html index 27898073..c356dbfb 100644 --- a/RF24__arch__config_8h_source.html +++ b/RF24__arch__config_8h_source.html @@ -173,7 +173,7 @@ diff --git a/RF24__config_8h.html b/RF24__config_8h.html index 68ced140..2a31a7d9 100644 --- a/RF24__config_8h.html +++ b/RF24__config_8h.html @@ -272,7 +272,7 @@

diff --git a/RF24__config_8h_source.html b/RF24__config_8h_source.html index 2eb42646..82d38f2c 100644 --- a/RF24__config_8h_source.html +++ b/RF24__config_8h_source.html @@ -343,7 +343,7 @@ diff --git a/annotated.html b/annotated.html index c6820260..9869351b 100644 --- a/annotated.html +++ b/annotated.html @@ -107,7 +107,7 @@ diff --git a/arduino_8md.html b/arduino_8md.html index 49a6678d..e526af1f 100644 --- a/arduino_8md.html +++ b/arduino_8md.html @@ -101,7 +101,7 @@ diff --git a/attiny_8md.html b/attiny_8md.html index a94d85c4..5d716f05 100644 --- a/attiny_8md.html +++ b/attiny_8md.html @@ -101,7 +101,7 @@ diff --git a/atxmega_8md.html b/atxmega_8md.html index 4eab5361..42372092 100644 --- a/atxmega_8md.html +++ b/atxmega_8md.html @@ -101,7 +101,7 @@ diff --git a/classRF24-members.html b/classRF24-members.html index 77fe80e0..d2fad2a7 100644 --- a/classRF24-members.html +++ b/classRF24-members.html @@ -187,7 +187,7 @@ diff --git a/classRF24.html b/classRF24.html index 184dafbd..6c485159 100644 --- a/classRF24.html +++ b/classRF24.html @@ -3307,7 +3307,7 @@

diff --git a/classes.html b/classes.html index ff1b1899..d3e8d843 100644 --- a/classes.html +++ b/classes.html @@ -108,7 +108,7 @@ diff --git a/compatibility_8h.html b/compatibility_8h.html index d25bacda..b18b61e2 100644 --- a/compatibility_8h.html +++ b/compatibility_8h.html @@ -128,7 +128,7 @@ diff --git a/compatibility_8h_source.html b/compatibility_8h_source.html index 310fe18f..2c5c0322 100644 --- a/compatibility_8h_source.html +++ b/compatibility_8h_source.html @@ -134,7 +134,7 @@ diff --git a/cross__compile_8md.html b/cross__compile_8md.html index 686d30b3..9fb17fa2 100644 --- a/cross__compile_8md.html +++ b/cross__compile_8md.html @@ -101,7 +101,7 @@ diff --git a/deprecated.html b/deprecated.html index 9b39ddbe..f27ff7e8 100644 --- a/deprecated.html +++ b/deprecated.html @@ -104,7 +104,7 @@ diff --git a/dir_08581547d0c03868bb69abd460b21ce0.html b/dir_08581547d0c03868bb69abd460b21ce0.html index 29fe3bd1..f5e44fc7 100644 --- a/dir_08581547d0c03868bb69abd460b21ce0.html +++ b/dir_08581547d0c03868bb69abd460b21ce0.html @@ -119,7 +119,7 @@ diff --git a/dir_49e56c817e5e54854c35e136979f97ca.html b/dir_49e56c817e5e54854c35e136979f97ca.html index 6c9c258f..fae316e4 100644 --- a/dir_49e56c817e5e54854c35e136979f97ca.html +++ b/dir_49e56c817e5e54854c35e136979f97ca.html @@ -105,7 +105,7 @@ diff --git a/dir_64e73385a8b7738563c26ce10415b58d.html b/dir_64e73385a8b7738563c26ce10415b58d.html index 110f7f43..4b28bee9 100644 --- a/dir_64e73385a8b7738563c26ce10415b58d.html +++ b/dir_64e73385a8b7738563c26ce10415b58d.html @@ -111,7 +111,7 @@ diff --git a/examples.html b/examples.html index 9848924c..fa3a28fb 100644 --- a/examples.html +++ b/examples.html @@ -123,7 +123,7 @@ diff --git a/examples_2AcknowledgementPayloads_2AcknowledgementPayloads_8ino-example.html b/examples_2AcknowledgementPayloads_2AcknowledgementPayloads_8ino-example.html index 5536406c..0a374060 100644 --- a/examples_2AcknowledgementPayloads_2AcknowledgementPayloads_8ino-example.html +++ b/examples_2AcknowledgementPayloads_2AcknowledgementPayloads_8ino-example.html @@ -305,7 +305,7 @@ diff --git a/examples_2GettingStarted_2GettingStarted_8ino-example.html b/examples_2GettingStarted_2GettingStarted_8ino-example.html index 2faaf9bd..3afe26ee 100644 --- a/examples_2GettingStarted_2GettingStarted_8ino-example.html +++ b/examples_2GettingStarted_2GettingStarted_8ino-example.html @@ -253,7 +253,7 @@ diff --git a/examples_2InterruptConfigure_2InterruptConfigure_8ino-example.html b/examples_2InterruptConfigure_2InterruptConfigure_8ino-example.html index ea0cb56b..cab27959 100644 --- a/examples_2InterruptConfigure_2InterruptConfigure_8ino-example.html +++ b/examples_2InterruptConfigure_2InterruptConfigure_8ino-example.html @@ -437,7 +437,7 @@ diff --git a/examples_2ManualAcknowledgements_2ManualAcknowledgements_8ino-example.html b/examples_2ManualAcknowledgements_2ManualAcknowledgements_8ino-example.html index 98e26f8f..1f596595 100644 --- a/examples_2ManualAcknowledgements_2ManualAcknowledgements_8ino-example.html +++ b/examples_2ManualAcknowledgements_2ManualAcknowledgements_8ino-example.html @@ -214,107 +214,109 @@
129 while (!radio.available()) { // wait for response
130 if (millis() - start_timeout > 200) // only wait 200 ms
131 break;
-
132 }
-
133 unsigned long end_timer = micros(); // end the timer
-
134 radio.stopListening(); // put back in TX mode
-
135
-
136 // print summary of transactions
-
137 Serial.print(F("Transmission successful!")); // payload was delivered
-
138 uint8_t pipe;
-
139 if (radio.available(&pipe)) { // is there a payload received
-
140 Serial.print(F(" Round-trip delay: "));
-
141 Serial.print(end_timer - start_timer); // print the timer result
-
142 Serial.print(F(" us. Sent: "));
-
143 Serial.print(payload.message); // print the outgoing payload's message
-
144 Serial.print(payload.counter); // print outgoing payload's counter
-
145 PayloadStruct received;
-
146 radio.read(&received, sizeof(received)); // get payload from RX FIFO
-
147 Serial.print(F(" Received "));
-
148 Serial.print(radio.getPayloadSize()); // print the size of the payload
-
149 Serial.print(F(" bytes on pipe "));
-
150 Serial.print(pipe); // print the pipe number
-
151 Serial.print(F(": "));
-
152 Serial.print(received.message); // print the incoming payload's message
-
153 Serial.println(received.counter); // print the incoming payload's counter
-
154 payload.counter = received.counter; // save incoming counter for next outgoing counter
-
155 } else {
-
156 Serial.println(F(" Recieved no response.")); // no response received
-
157 }
-
158 } else {
-
159 Serial.println(F("Transmission failed or timed out")); // payload was not delivered
-
160 } // report
-
161
-
162 // to make this example readable in the serial monitor
-
163 delay(1000); // slow transmissions down by 1 second
-
164
-
165 } else {
-
166 // This device is a RX node
-
167
-
168 uint8_t pipe;
-
169 if (radio.available(&pipe)) { // is there a payload? get the pipe number that recieved it
-
170 PayloadStruct received;
-
171 radio.read(&received, sizeof(received)); // get incoming payload
-
172 payload.counter = received.counter + 1; // increment incoming counter for next outgoing response
-
173
-
174 // transmit response & save result to `report`
-
175 radio.stopListening(); // put in TX mode
-
176
-
177 radio.writeFast(&payload, sizeof(payload)); // load response to TX FIFO
-
178 bool report = radio.txStandBy(150); // keep retrying for 150 ms
-
179
-
180 radio.startListening(); // put back in RX mode
-
181
-
182 // print summary of transactions
-
183 Serial.print(F("Received "));
-
184 Serial.print(radio.getPayloadSize()); // print the size of the payload
-
185 Serial.print(F(" bytes on pipe "));
-
186 Serial.print(pipe); // print the pipe number
-
187 Serial.print(F(": "));
-
188 Serial.print(received.message); // print incoming message
-
189 Serial.print(received.counter); // print incoming counter
-
190
-
191 if (report) {
-
192 Serial.print(F(" Sent: "));
-
193 Serial.print(payload.message); // print outgoing message
-
194 Serial.println(payload.counter); // print outgoing counter
-
195 } else {
-
196 Serial.println(" Response failed."); // failed to send response
-
197 }
-
198 }
-
199 } // role
-
200
-
201 if (Serial.available()) {
-
202 // change the role via the serial monitor
-
203
-
204 char c = toupper(Serial.read());
-
205 if (c == 'T' && !role) {
-
206 // Become the TX node
-
207
-
208 role = true;
-
209 memcpy(payload.message, "Hello ", 6); // set the outgoing message
-
210 Serial.println(F("*** CHANGING TO TRANSMIT ROLE -- PRESS 'R' TO SWITCH BACK"));
-
211 radio.stopListening(); // put in TX mode
-
212
-
213 } else if (c == 'R' && role) {
-
214 // Become the RX node
-
215
-
216 role = false;
-
217 memcpy(payload.message, "World ", 6); // set the response message
-
218 Serial.println(F("*** CHANGING TO RECEIVE ROLE -- PRESS 'T' TO SWITCH BACK"));
-
219 radio.startListening(); // put in RX mode
-
220 }
-
221 }
-
222} // loop
+
132 delayMicroseconds(200); // relax probing of available()
+
133 }
+
134 unsigned long end_timer = micros(); // end the timer
+
135 radio.stopListening(); // put back in TX mode
+
136
+
137 // print summary of transactions
+
138 Serial.print(F("Transmission successful!")); // payload was delivered
+
139 uint8_t pipe;
+
140 if (radio.available(&pipe)) { // is there a payload received
+
141 Serial.print(F(" Round-trip delay: "));
+
142 Serial.print(end_timer - start_timer); // print the timer result
+
143 Serial.print(F(" us. Sent: "));
+
144 Serial.print(payload.message); // print the outgoing payload's message
+
145 Serial.print(payload.counter); // print outgoing payload's counter
+
146 PayloadStruct received;
+
147 radio.read(&received, sizeof(received)); // get payload from RX FIFO
+
148 Serial.print(F(" Received "));
+
149 Serial.print(radio.getPayloadSize()); // print the size of the payload
+
150 Serial.print(F(" bytes on pipe "));
+
151 Serial.print(pipe); // print the pipe number
+
152 Serial.print(F(": "));
+
153 Serial.print(received.message); // print the incoming payload's message
+
154 Serial.println(received.counter); // print the incoming payload's counter
+
155 payload.counter = received.counter; // save incoming counter for next outgoing counter
+
156 } else {
+
157 Serial.println(F(" Recieved no response.")); // no response received
+
158 }
+
159 } else {
+
160 Serial.println(F("Transmission failed or timed out")); // payload was not delivered
+
161 } // report
+
162
+
163 // to make this example readable in the serial monitor
+
164 delay(1000); // slow transmissions down by 1 second
+
165
+
166 } else {
+
167 // This device is a RX node
+
168
+
169 uint8_t pipe;
+
170 if (radio.available(&pipe)) { // is there a payload? get the pipe number that recieved it
+
171 PayloadStruct received;
+
172 radio.read(&received, sizeof(received)); // get incoming payload
+
173 payload.counter = received.counter + 1; // increment incoming counter for next outgoing response
+
174
+
175 // transmit response & save result to `report`
+
176 radio.stopListening(); // put in TX mode
+
177
+
178 radio.writeFast(&payload, sizeof(payload)); // load response to TX FIFO
+
179 bool report = radio.txStandBy(150); // keep retrying for 150 ms
+
180
+
181 radio.startListening(); // put back in RX mode
+
182
+
183 // print summary of transactions
+
184 Serial.print(F("Received "));
+
185 Serial.print(radio.getPayloadSize()); // print the size of the payload
+
186 Serial.print(F(" bytes on pipe "));
+
187 Serial.print(pipe); // print the pipe number
+
188 Serial.print(F(": "));
+
189 Serial.print(received.message); // print incoming message
+
190 Serial.print(received.counter); // print incoming counter
+
191
+
192 if (report) {
+
193 Serial.print(F(" Sent: "));
+
194 Serial.print(payload.message); // print outgoing message
+
195 Serial.println(payload.counter); // print outgoing counter
+
196 } else {
+
197 Serial.println(" Response failed."); // failed to send response
+
198 }
+
199 }
+
200 } // role
+
201
+
202 if (Serial.available()) {
+
203 // change the role via the serial monitor
+
204
+
205 char c = toupper(Serial.read());
+
206 if (c == 'T' && !role) {
+
207 // Become the TX node
+
208
+
209 role = true;
+
210 memcpy(payload.message, "Hello ", 6); // set the outgoing message
+
211 Serial.println(F("*** CHANGING TO TRANSMIT ROLE -- PRESS 'R' TO SWITCH BACK"));
+
212 radio.stopListening(); // put in TX mode
+
213
+
214 } else if (c == 'R' && role) {
+
215 // Become the RX node
+
216
+
217 role = false;
+
218 memcpy(payload.message, "World ", 6); // set the response message
+
219 Serial.println(F("*** CHANGING TO RECEIVE ROLE -- PRESS 'T' TO SWITCH BACK"));
+
220 radio.startListening(); // put in RX mode
+
221 }
+
222 }
+
223} // loop
Driver class for nRF24L01(+) 2.4GHz Wireless Transceiver.
Definition: RF24.h:116
@ RF24_PA_LOW
Definition: RF24.h:50
#define delay(milisec)
+
#define delayMicroseconds(usec)
#define millis()
diff --git a/examples_2MulticeiverDemo_2MulticeiverDemo_8ino-example.html b/examples_2MulticeiverDemo_2MulticeiverDemo_8ino-example.html index 6d5642ed..cddece0d 100644 --- a/examples_2MulticeiverDemo_2MulticeiverDemo_8ino-example.html +++ b/examples_2MulticeiverDemo_2MulticeiverDemo_8ino-example.html @@ -292,7 +292,7 @@ diff --git a/examples_2StreamingData_2StreamingData_8ino-example.html b/examples_2StreamingData_2StreamingData_8ino-example.html index 29519b09..47eb22c4 100644 --- a/examples_2StreamingData_2StreamingData_8ino-example.html +++ b/examples_2StreamingData_2StreamingData_8ino-example.html @@ -284,7 +284,7 @@ diff --git a/examples_2old_backups_2GettingStarted_HandlingFailures_2GettingStarted_HandlingFailures_8ino-example.html b/examples_2old_backups_2GettingStarted_HandlingFailures_2GettingStarted_HandlingFailures_8ino-example.html index d26191c2..54808d9e 100644 --- a/examples_2old_backups_2GettingStarted_HandlingFailures_2GettingStarted_HandlingFailures_8ino-example.html +++ b/examples_2old_backups_2GettingStarted_HandlingFailures_2GettingStarted_HandlingFailures_8ino-example.html @@ -322,7 +322,7 @@ diff --git a/examples_2old_backups_2TransferTimeouts_2TransferTimeouts_8ino-example.html b/examples_2old_backups_2TransferTimeouts_2TransferTimeouts_8ino-example.html index ff74c622..5e841d25 100644 --- a/examples_2old_backups_2TransferTimeouts_2TransferTimeouts_8ino-example.html +++ b/examples_2old_backups_2TransferTimeouts_2TransferTimeouts_8ino-example.html @@ -280,7 +280,7 @@ diff --git a/examples_2old_backups_2pingpair_dyn_2pingpair_dyn_8ino-example.html b/examples_2old_backups_2pingpair_dyn_2pingpair_dyn_8ino-example.html index 6291fb50..4cf56423 100644 --- a/examples_2old_backups_2pingpair_dyn_2pingpair_dyn_8ino-example.html +++ b/examples_2old_backups_2pingpair_dyn_2pingpair_dyn_8ino-example.html @@ -283,7 +283,7 @@ diff --git a/examples_2old_backups_2pingpair_irq_2pingpair_irq_8ino-example.html b/examples_2old_backups_2pingpair_irq_2pingpair_irq_8ino-example.html index 1760cf78..b44538de 100644 --- a/examples_2old_backups_2pingpair_irq_2pingpair_irq_8ino-example.html +++ b/examples_2old_backups_2pingpair_irq_2pingpair_irq_8ino-example.html @@ -276,7 +276,7 @@ diff --git a/examples_2old_backups_2pingpair_sleepy_2pingpair_sleepy_8ino-example.html b/examples_2old_backups_2pingpair_sleepy_2pingpair_sleepy_8ino-example.html index 016ef181..1cea53a8 100644 --- a/examples_2old_backups_2pingpair_sleepy_2pingpair_sleepy_8ino-example.html +++ b/examples_2old_backups_2pingpair_sleepy_2pingpair_sleepy_8ino-example.html @@ -329,7 +329,7 @@ diff --git a/examples_2rf24_ATTiny_2rf24ping85_2rf24ping85_8ino-example.html b/examples_2rf24_ATTiny_2rf24ping85_2rf24ping85_8ino-example.html index 722b1e08..e28cc9f1 100644 --- a/examples_2rf24_ATTiny_2rf24ping85_2rf24ping85_8ino-example.html +++ b/examples_2rf24_ATTiny_2rf24ping85_2rf24ping85_8ino-example.html @@ -283,7 +283,7 @@ diff --git a/examples_2rf24_ATTiny_2timingSearch3pin_2timingSearch3pin_8ino-example.html b/examples_2rf24_ATTiny_2timingSearch3pin_2timingSearch3pin_8ino-example.html index dee9a244..d7283fe8 100644 --- a/examples_2rf24_ATTiny_2timingSearch3pin_2timingSearch3pin_8ino-example.html +++ b/examples_2rf24_ATTiny_2timingSearch3pin_2timingSearch3pin_8ino-example.html @@ -315,7 +315,7 @@ diff --git a/examples_2scanner_2scanner_8ino-example.html b/examples_2scanner_2scanner_8ino-example.html index 0e661051..e2c2e793 100644 --- a/examples_2scanner_2scanner_8ino-example.html +++ b/examples_2scanner_2scanner_8ino-example.html @@ -240,7 +240,7 @@ diff --git a/examples_linux_2acknowledgementPayloads_8cpp-example.html b/examples_linux_2acknowledgementPayloads_8cpp-example.html index f153415b..17b99612 100644 --- a/examples_linux_2acknowledgementPayloads_8cpp-example.html +++ b/examples_linux_2acknowledgementPayloads_8cpp-example.html @@ -318,7 +318,7 @@ diff --git a/examples_linux_2acknowledgement_payloads_8py-example.html b/examples_linux_2acknowledgement_payloads_8py-example.html index 4c72057c..6f0e9010 100644 --- a/examples_linux_2acknowledgement_payloads_8py-example.html +++ b/examples_linux_2acknowledgement_payloads_8py-example.html @@ -320,7 +320,7 @@ diff --git a/examples_linux_2getting_started_8py-example.html b/examples_linux_2getting_started_8py-example.html index 70fac2d6..9bf2b034 100644 --- a/examples_linux_2getting_started_8py-example.html +++ b/examples_linux_2getting_started_8py-example.html @@ -289,7 +289,7 @@ diff --git a/examples_linux_2gettingstarted_8cpp-example.html b/examples_linux_2gettingstarted_8cpp-example.html index 9c668938..795dfb06 100644 --- a/examples_linux_2gettingstarted_8cpp-example.html +++ b/examples_linux_2gettingstarted_8cpp-example.html @@ -281,7 +281,7 @@ diff --git a/examples_linux_2interrupt_configure_8py-example.html b/examples_linux_2interrupt_configure_8py-example.html index f1d2b373..dddaa985 100644 --- a/examples_linux_2interrupt_configure_8py-example.html +++ b/examples_linux_2interrupt_configure_8py-example.html @@ -375,7 +375,7 @@ diff --git a/examples_linux_2manualAcknowledgements_8cpp-example.html b/examples_linux_2manualAcknowledgements_8cpp-example.html index 066c543e..358a4069 100644 --- a/examples_linux_2manualAcknowledgements_8cpp-example.html +++ b/examples_linux_2manualAcknowledgements_8cpp-example.html @@ -343,7 +343,7 @@ diff --git a/examples_linux_2manual_acknowledgements_8py-example.html b/examples_linux_2manual_acknowledgements_8py-example.html index 965aa0ba..a4e7ed6c 100644 --- a/examples_linux_2manual_acknowledgements_8py-example.html +++ b/examples_linux_2manual_acknowledgements_8py-example.html @@ -332,7 +332,7 @@ diff --git a/examples_linux_2multiceiverDemo_8cpp-example.html b/examples_linux_2multiceiverDemo_8cpp-example.html index 0c04a989..a5c19057 100644 --- a/examples_linux_2multiceiverDemo_8cpp-example.html +++ b/examples_linux_2multiceiverDemo_8cpp-example.html @@ -353,7 +353,7 @@ diff --git a/examples_linux_2multiceiver_demo_8py-example.html b/examples_linux_2multiceiver_demo_8py-example.html index 7b1a6d5a..1a018871 100644 --- a/examples_linux_2multiceiver_demo_8py-example.html +++ b/examples_linux_2multiceiver_demo_8py-example.html @@ -287,7 +287,7 @@ diff --git a/examples_linux_2scanner_8cpp-example.html b/examples_linux_2scanner_8cpp-example.html index 70ac8919..f41af2cb 100644 --- a/examples_linux_2scanner_8cpp-example.html +++ b/examples_linux_2scanner_8cpp-example.html @@ -226,7 +226,7 @@ diff --git a/examples_linux_2streamingData_8cpp-example.html b/examples_linux_2streamingData_8cpp-example.html index e6e8f72e..c1e3506e 100644 --- a/examples_linux_2streamingData_8cpp-example.html +++ b/examples_linux_2streamingData_8cpp-example.html @@ -373,7 +373,7 @@ diff --git a/examples_linux_2streaming_data_8py-example.html b/examples_linux_2streaming_data_8py-example.html index d601a941..923e6b5e 100644 --- a/examples_linux_2streaming_data_8py-example.html +++ b/examples_linux_2streaming_data_8py-example.html @@ -308,7 +308,7 @@ diff --git a/files.html b/files.html index 0c248900..116a71ba 100644 --- a/files.html +++ b/files.html @@ -118,7 +118,7 @@ diff --git a/functions.html b/functions.html index 93ec0349..e86de175 100644 --- a/functions.html +++ b/functions.html @@ -254,7 +254,7 @@

- w -

    diff --git a/functions_func.html b/functions_func.html index f1c8c99b..27f99e08 100644 --- a/functions_func.html +++ b/functions_func.html @@ -248,7 +248,7 @@

    - w -

      diff --git a/functions_vars.html b/functions_vars.html index eb1f60e8..84c94528 100644 --- a/functions_vars.html +++ b/functions_vars.html @@ -114,7 +114,7 @@ diff --git a/globals.html b/globals.html index f93024af..4d422a08 100644 --- a/globals.html +++ b/globals.html @@ -384,7 +384,7 @@

      - w -

        diff --git a/globals_defs.html b/globals_defs.html index 7fd90983..df6e1880 100644 --- a/globals_defs.html +++ b/globals_defs.html @@ -318,7 +318,7 @@

        - w -

          diff --git a/globals_enum.html b/globals_enum.html index 39cfeff9..6409c8ce 100644 --- a/globals_enum.html +++ b/globals_enum.html @@ -114,7 +114,7 @@ diff --git a/globals_eval.html b/globals_eval.html index 0ac84470..f4baeccf 100644 --- a/globals_eval.html +++ b/globals_eval.html @@ -122,7 +122,7 @@ diff --git a/globals_func.html b/globals_func.html index b45fde2c..685653c3 100644 --- a/globals_func.html +++ b/globals_func.html @@ -125,7 +125,7 @@ diff --git a/globals_type.html b/globals_type.html index 1d8f0a86..f7149fa8 100644 --- a/globals_type.html +++ b/globals_type.html @@ -113,7 +113,7 @@ diff --git a/globals_vars.html b/globals_vars.html index ee1fc62b..57d04166 100644 --- a/globals_vars.html +++ b/globals_vars.html @@ -137,7 +137,7 @@ diff --git a/gpio_8h.html b/gpio_8h.html index f7683e62..f4e2d718 100644 --- a/gpio_8h.html +++ b/gpio_8h.html @@ -138,7 +138,7 @@ diff --git a/gpio_8h_source.html b/gpio_8h_source.html index c91b35b5..bac51119 100644 --- a/gpio_8h_source.html +++ b/gpio_8h_source.html @@ -150,7 +150,7 @@ diff --git a/group__CRCLength.html b/group__CRCLength.html index 2861917f..0e873e76 100644 --- a/group__CRCLength.html +++ b/group__CRCLength.html @@ -138,7 +138,7 @@

          diff --git a/group__Datarate.html b/group__Datarate.html index c5b3fc56..cbd8e0e6 100644 --- a/group__Datarate.html +++ b/group__Datarate.html @@ -137,7 +137,7 @@

          diff --git a/group__PALevel.html b/group__PALevel.html index 50269cbd..2581bf3a 100644 --- a/group__PALevel.html +++ b/group__PALevel.html @@ -174,7 +174,7 @@

          diff --git a/group__Porting__GPIO.html b/group__Porting__GPIO.html index 39b59915..87c21ac8 100644 --- a/group__Porting__GPIO.html +++ b/group__Porting__GPIO.html @@ -364,7 +364,7 @@

          diff --git a/group__Porting__General.html b/group__Porting__General.html index 6f295316..aa06b50d 100644 --- a/group__Porting__General.html +++ b/group__Porting__General.html @@ -498,7 +498,7 @@

          -
          Examples
          examples/AcknowledgementPayloads/AcknowledgementPayloads.ino, examples/GettingStarted/GettingStarted.ino, examples/InterruptConfigure/InterruptConfigure.ino, examples/ManualAcknowledgements/ManualAcknowledgements.ino, examples/MulticeiverDemo/MulticeiverDemo.ino, examples/StreamingData/StreamingData.ino, examples/old_backups/GettingStarted_HandlingFailures/GettingStarted_HandlingFailures.ino, examples/old_backups/TransferTimeouts/TransferTimeouts.ino, examples/old_backups/pingpair_dyn/pingpair_dyn.ino, examples/old_backups/pingpair_irq/pingpair_irq.ino, examples/old_backups/pingpair_sleepy/pingpair_sleepy.ino, examples/rf24_ATTiny/rf24ping85/rf24ping85.ino, examples/rf24_ATTiny/timingSearch3pin/timingSearch3pin.ino, examples/scanner/scanner.ino, examples_linux/acknowledgementPayloads.cpp, examples_linux/gettingstarted.cpp, examples_linux/manualAcknowledgements.cpp, and examples_linux/multiceiverDemo.cpp.
          +
          Examples
          examples/AcknowledgementPayloads/AcknowledgementPayloads.ino, examples/GettingStarted/GettingStarted.ino, examples/InterruptConfigure/InterruptConfigure.ino, examples/ManualAcknowledgements/ManualAcknowledgements.ino, examples/MulticeiverDemo/MulticeiverDemo.ino, examples/StreamingData/StreamingData.ino, examples/old_backups/GettingStarted_HandlingFailures/GettingStarted_HandlingFailures.ino, examples/old_backups/TransferTimeouts/TransferTimeouts.ino, examples/old_backups/pingpair_dyn/pingpair_dyn.ino, examples/old_backups/pingpair_irq/pingpair_irq.ino, examples/old_backups/pingpair_sleepy/pingpair_sleepy.ino, examples/rf24_ATTiny/rf24ping85/rf24ping85.ino, examples/rf24_ATTiny/timingSearch3pin/timingSearch3pin.ino, examples/scanner/scanner.ino, examples_linux/acknowledgementPayloads.cpp, examples_linux/gettingstarted.cpp, examples_linux/manualAcknowledgements.cpp, and examples_linux/multiceiverDemo.cpp.

          Definition at line 71 of file RF24_arch_config.h.

          @@ -520,7 +520,7 @@

          -
          Examples
          examples/InterruptConfigure/InterruptConfigure.ino, examples/rf24_ATTiny/timingSearch3pin/timingSearch3pin.ino, examples/scanner/scanner.ino, and examples_linux/scanner.cpp.
          +
          Examples
          examples/InterruptConfigure/InterruptConfigure.ino, examples/ManualAcknowledgements/ManualAcknowledgements.ino, examples/rf24_ATTiny/timingSearch3pin/timingSearch3pin.ino, examples/scanner/scanner.ino, and examples_linux/scanner.cpp.

          Definition at line 72 of file RF24_arch_config.h.

          @@ -584,7 +584,7 @@

          diff --git a/group__Porting__Includes.html b/group__Porting__Includes.html index 005e63b4..50ccf8f1 100644 --- a/group__Porting__Includes.html +++ b/group__Porting__Includes.html @@ -123,7 +123,7 @@

          diff --git a/group__Porting__SPI.html b/group__Porting__SPI.html index 7608e4a5..360708de 100644 --- a/group__Porting__SPI.html +++ b/group__Porting__SPI.html @@ -233,7 +233,7 @@

          diff --git a/group__Porting__Timing.html b/group__Porting__Timing.html index bdde4818..a167572b 100644 --- a/group__Porting__Timing.html +++ b/group__Porting__Timing.html @@ -182,7 +182,7 @@

          diff --git a/includes_8h.html b/includes_8h.html index 0d2f5872..762a7729 100644 --- a/includes_8h.html +++ b/includes_8h.html @@ -120,7 +120,7 @@ diff --git a/includes_8h_source.html b/includes_8h_source.html index f43af04b..779b2966 100644 --- a/includes_8h_source.html +++ b/includes_8h_source.html @@ -114,7 +114,7 @@ diff --git a/index.html b/index.html index d5538d10..071d43f9 100644 --- a/index.html +++ b/index.html @@ -93,19 +93,19 @@

          -

          +

          Design Goals

          This library fork is designed to be...

            @@ -115,30 +115,30 @@

          • Easy for beginners to use, with well documented examples and features
          • Consumed with a public interface that's similar to other Arduino standard libraries
          -

          +

          News

          See the releases' descriptions on the library's release page for a list of changes.

          -

          +

          Useful References

          -

          +

          Additional Information and Add-ons

          -

          +

          More Information

          -

          +

          Platform Support Pages

          -

          +

          General µC Pin layout

          See also
          also the individual board support pages for more info

          Observe

          @@ -192,7 +192,7 @@

          diff --git a/linux__install_8md.html b/linux__install_8md.html index 992b2a7e..2ba32d8d 100644 --- a/linux__install_8md.html +++ b/linux__install_8md.html @@ -101,7 +101,7 @@
          diff --git a/main__page_8md.html b/main__page_8md.html index be88807a..6f907979 100644 --- a/main__page_8md.html +++ b/main__page_8md.html @@ -101,7 +101,7 @@ diff --git a/md_COMMON_ISSUES.html b/md_COMMON_ISSUES.html index 40641805..f5a8febd 100644 --- a/md_COMMON_ISSUES.html +++ b/md_COMMON_ISSUES.html @@ -225,7 +225,7 @@

          diff --git a/md_CONTRIBUTING.html b/md_CONTRIBUTING.html index 7a8d37a8..8c78dcda 100644 --- a/md_CONTRIBUTING.html +++ b/md_CONTRIBUTING.html @@ -109,7 +109,7 @@ diff --git a/md_docs_arduino.html b/md_docs_arduino.html index 1168afc5..2a61cf83 100644 --- a/md_docs_arduino.html +++ b/md_docs_arduino.html @@ -266,7 +266,7 @@

          diff --git a/md_docs_attiny.html b/md_docs_attiny.html index aac49d1c..eec9db08 100644 --- a/md_docs_attiny.html +++ b/md_docs_attiny.html @@ -167,7 +167,7 @@

          diff --git a/md_docs_atxmega.html b/md_docs_atxmega.html index 001c9e99..cadbe769 100644 --- a/md_docs_atxmega.html +++ b/md_docs_atxmega.html @@ -141,7 +141,7 @@

          diff --git a/md_docs_cross_compile.html b/md_docs_cross_compile.html index c16bb28e..f8f0c23b 100644 --- a/md_docs_cross_compile.html +++ b/md_docs_cross_compile.html @@ -164,7 +164,7 @@

          diff --git a/md_docs_linux_install.html b/md_docs_linux_install.html index 021796f9..1e33ad2b 100644 --- a/md_docs_linux_install.html +++ b/md_docs_linux_install.html @@ -93,18 +93,41 @@
          -

          Generic Linux devices are supported via SPIDEV, MRAA, RPi native via BCM2835, or using LittleWire.

          -
          Note
          The SPIDEV option should work with most Linux systems supporting spi userspace device.
          -
          Warning
          These install instructions are beginning to age because they were designed with the assumption that the arm-linux-gnueabihf-g** compilers were available and default for the system. If you have problems using the manual install instructions (especially on a 64-bit OS), please try the instructions using CMake.
          -
          Note
          Since wiringPi is no longer maintained or distributed (as of RPi OS 11 bullseye), pigpio is now required for using the radio's IRQ pin. This applies to RPi, SPIDEV, and pigpio drivers. The MRAA driver may provide its own IRQ implementation. Remember that the RPi OS lite variant does not ship with pigpio installed.
          -

          -Automated Install

          +

          Generic Linux devices are supported via SPIDEV, PiGPIO, MRAA, RPi native via BCM2835, or using LittleWire.

          +
          Note
          The SPIDEV option should work with most Linux systems supporting spi userspace device.
          +
          +Since wiringPi is no longer maintained or distributed (as of RPi OS 11 bullseye), pigpio is now required for using the radio's IRQ pin. This applies to RPi, SPIDEV, and pigpio drivers. The MRAA driver may provide its own IRQ implementation. Remember that the RPi OS lite variant does not ship with pigpio installed.
          +

          +Automatic Installation (New)

          +

          Using CMake: (See the instructions using CMake for more information and options)

          +
            +
          1. Download the install.sh file from https://github.com/nRF24/.github/blob/main/installer/install.sh
            wget https://raw.githubusercontent.com/nRF24/.github/main/installer/install.sh
            +
          2. +
          3. Make it executable
            chmod +x install.sh
            +
          4. +
          5. Run it and choose your options

            ./install.sh
            +

            The script will detect needed dependencies and install what it needs according to the user input.

            +

            It will also ask to install a python package named pyRF24. This is not the same as the traditionally provided python wrappers as the pyRF24 package can be used independent of the C++ installed libraries. For more information on this newer python package, please check out the pyRF24 documentation.

            +
          6. +
          7. Try an example from one of the libraries

            cd ~/rf24libs/RF24/examples_linux
            +

            Edit the gettingstarted example, to set your pin configuration

            nano gettingstarted.cpp
            +

            Build the examples. Remember to set the RF24_DRIVER option according to the one that was selected during the scripted install.

            mkdir build && cd build
            +
            cmake .. -D RF24_DRIVER=SPIDEV
            +
            make
            +

            Run the example

            sudo ./gettingstarted
            +
          8. +
          +

          See the instructions using CMake for more information and options

          +

          +Automated Install (Deprecated)

          Designed & Tested on RPi - Defaults to SPIDEV on devices supporting it

          1. Install prerequisites if there are any (pigpio, MRAA, LittleWire libraries, setup SPI device etc)
          2. @@ -120,8 +143,8 @@

            sudo ./gettingstarted

          -

          -Manual Install

          +

          +Manual Install (Deprecated)

          1. Install prerequisites if there are any (pigpio, MRAA, LittleWire libraries, setup SPI device etc)
            Note
            See the MRAA documentation for more info on installing MRAA
          2. @@ -145,8 +168,8 @@

            sudo ./gettingstarted

          -

          -Build using SPIDEV

          +

          +Build using SPIDEV (Deprecated)

          1. Make sure that spi device support is enabled and /dev/spidev<a>.<b> is present
          2. Manual Install using SPIDEV:
            ./configure --driver=SPIDEV
            @@ -159,7 +182,7 @@

            diff --git a/md_docs_mraa.html b/md_docs_mraa.html index 8602741e..5a8df8af 100644 --- a/md_docs_mraa.html +++ b/md_docs_mraa.html @@ -93,7 +93,7 @@

          MRAA is a Low Level Skeleton Library for Communication on GNU/Linux platforms. Review the MRAA documentation for more information

          @@ -101,7 +101,7 @@ -

          +

          Setup and installation

          Build using the MRAA library from MRAA documentation

          MRAA is not included.

          @@ -125,7 +125,7 @@

          diff --git a/md_docs_pico_sdk.html b/md_docs_pico_sdk.html index efdcd3c1..a74d8998 100644 --- a/md_docs_pico_sdk.html +++ b/md_docs_pico_sdk.html @@ -93,18 +93,18 @@

          Just to be very clear and concise: The following instructions are not required to use the Arduino IDE with any RP2040-based boards. These instructions pertain to using only Raspberry Pi's Pico SDK for RP2040 based boards.

          -

          +

          Prerequisite

          Follow Raspberry Pi's "Getting Started with Pico" document to setup a proper development environment on your host PC (the machine that will build your project). Notice that the setup instructions are a little different for building on a Windows PC.

          Either set an environment variable named PICO_SDK_PATH that points to your local clone of the pico-sdk or put the pico-sdk next to the RF24 folder or next to the folder containing your project using the RF24 library:

          path/to/github/repos/
          @@ -112,7 +112,7 @@ 

          RF24/ my_rf24_project/

          Alternatively, the RF24 repository (and optionally the RF24Network and RF24Mesh repositories) can be included into your project's "lib" folder as copies or git submodules. For more detail, see the below instructions to incorporate RF24 libs into your project.

          -

          +

          Building the RF24 examples for the Pico SDK

          Each example imports a set of constants (CE_PIN, CSN_PIN, IRQ_PIN) from the examples_pico/defaultPins.h file. Default values for SPI pins (SCK, MOSI, MISO) come from the Pico SDK repository's pico-sdk/src/boards/include/boards/<board_name>.h files

            @@ -129,7 +129,7 @@

            Warning
            If doing consecutive build attempts, it is strongly encouraged to delete all files in the build directory before re-attempting to build the project.

          -

          +

          Incorporating RF24 libs into your project

          In order to use the RF24 libraries in your RP2040 based project:

            @@ -161,12 +161,12 @@

          Note
          Any of the project's source file(s) that includes any of RF24* libraries must be a C++ file. It is highly recommended to use the .cpp file extension for such project source files.
          -

          +

          Using different pins for the SPI bus

          Initially (without modification), the SPI bus uses the default pins defined in the Pico SDK repository's pico-sdk/src/boards/include/boards/<board_name>.h files. However, there may be some boards that do not define the necessary pins to use as defaults. This can be rememdied using either project source code or build-time configuration.

          Warning
          There is no support for software driven SPI on RP2040 based boards at this time. If someone is so inclined to implement this using the Pico SDK's PIO (Programable Input Output) feature, please submit an issue or pull request to the RF24 repository.
          Note
          Before deciding what pins to use for the SPI bus, review the GPIO pins' "Function Select Table" in the Pico SDK documentation. There are essentially 2 SPI buses with multiple pin options for each.
          -

          +

          Project Source code option

          This option is the most reliable and flexible. It involves calling SPI.begin() and then passing the SPI object to RF24::begin(_SPI*).

          #include <RF24.h>
          @@ -185,7 +185,7 @@

          // continue with program as normal ...
          }
          Driver class for nRF24L01(+) 2.4GHz Wireless Transceiver.
          Definition: RF24.h:116
          -

          +

          Build-time configuration option

          To specify the default SPI pins used at build time, you can use either:

            @@ -199,7 +199,7 @@

          1. additional command line arguments
            cmake --build . --config Release -DPICO_DEFAULT_SPI=0 -DPICO_DEFAULT_SPI_SCK_PIN=2 -DPICO_DEFAULT_SPI_TX_PIN=3 -DPICO_DEFAULT_SPI_RX_PIN=4
          -

          +

          Using Multiple Radios

          It is possible to drive multiple nRF24L01 transceivers on a single board. To do this each radio needs dedicated digital output pins for the CE and CSN pins.

          Warning
          The RPi Pico board's 3v regulator is typically insufficient to power more than 1 radio. It is also worth mentioning that the RPi Pico board uses a switching regulator which inherently produces electrical noise (a not steady 3v signal otherwise referred to as "power instability").
          @@ -252,7 +252,7 @@

          diff --git a/md_docs_portability.html b/md_docs_portability.html index f73a6297..056140f1 100644 --- a/md_docs_portability.html +++ b/md_docs_portability.html @@ -93,18 +93,18 @@

          The RF24 radio driver mainly utilizes the Arduino API for GPIO, SPI, and timing functions, which are easily replicated on various platforms.

          Support files for these platforms are stored under RF24/utility, and can be modified to provide the required functionality.

          -

          +

          Basic Hardware Template

          -

          +

          RF24/utility

          The RF24 library now includes a basic hardware template to assist in porting to various platforms.

          The following files can be included to replicate standard Arduino functions as needed, allowing devices from ATTiny to Raspberry Pi to utilize the same core RF24 driver.

          @@ -126,21 +126,21 @@

          Examples are provided via the included hardware support templates in RF24/utility

          See the modules page for examples of class declarations.

          -

          +

          Device Detection

          1. The main detection for Linux devices is done in the configure script, with the includes.h from the proper hardware directory copied to RF24/utility/includes.h
          2. Secondary detection is completed in RF24_config.h, causing the include.h file to be included for all supported Linux devices
          3. RF24.h contains the declaration for SPI and GPIO objects 'spi' and 'gpio' to be used for porting-in related functions.
          -

          +

          Code

          To have your ported code included in this library, or for assistance in porting, create a pull request or open an issue at RF24 Library issues

          diff --git a/md_docs_python_wrapper.html b/md_docs_python_wrapper.html index d1d000a5..b7dde144 100644 --- a/md_docs_python_wrapper.html +++ b/md_docs_python_wrapper.html @@ -93,32 +93,32 @@

          By mz-fuzzy

          -

          +

          Python Wrapper Prerequisites

          -

          +

          RF24

          The RF24 lib needs to be built in C++ & installed for the python wrapper to wrap it.

          See Linux Installation (or installing with CMake alternatively) and Linux/RPi General

          -

          +

          Python2

          sudo apt-get install python-dev libboost-python-dev python-pip python-rpi.gpio

          Next, install some up-to-date python packages.

          python -m pip install --upgrade pip setuptools
          -

          +

          Python3

          sudo apt-get install python3-dev libboost-python-dev python3-pip python3-rpi.gpio

          Next, install some up-to-date python3 packages.

          python3 -m pip install --upgrade pip setuptools
          -

          +

          Installation

          Note
          Steps 2 and 3 have to be repeated if installing the python wrappers for RF24Network and RF24Mesh libraries. The prerequisites stated above still apply to each library.
            @@ -156,7 +156,7 @@

            diff --git a/md_docs_rpi_general.html b/md_docs_rpi_general.html index 98310f1b..645d3056 100644 --- a/md_docs_rpi_general.html +++ b/md_docs_rpi_general.html @@ -93,19 +93,19 @@

            RF24 supports a variety of Linux based devices via various drivers. Some boards like RPi can utilize multiple methods to drive the GPIO and SPI functionality.

            -

            +

            Potential PreConfiguration

            If SPI is not already enabled, load it on boot:

            sudo raspi-config
            @@ -116,7 +116,7 @@

            sudo apt-get upgrade

          -

          +

          Build Options

          The default build on Raspberry Pi utilizes the included BCM2835 driver from the BCM2835 Library

            @@ -125,7 +125,7 @@

            sudo make install

          -

          +

          Connections and Pin Configuration

          Using pin 15(GPIO22) for CE, pin 24(GPIO8 commonly labeled as CE0) for CSN

          Can use any available SPI BUS for CSN.

          @@ -134,18 +134,18 @@

          Driver class for nRF24L01(+) 2.4GHz Wireless Transceiver.
          Definition: RF24.h:116

          for proper constructor to address the correct spi device at /dev/spidev<a>.<b>

          Choose any GPIO output pin for radio CE pin.

          -

          +

          General

          RF24 radio(22,0);
          -

          +

          MRAA Constructor

          RF24 radio(15,0);

          See the MRAA documentation for Raspberry Pi support

          -

          +

          SPI_DEV Constructor

          RF24 radio(22, 0);

          See the Raspberry Pi documentation about the GPIO pins

          -

          +

          Pins

          @@ -167,7 +167,7 @@

          8 IRQ - -
          -

          +

          breif history of RF24 library lineage

          Based on the arduino lib from J. Coliz, the library was berryfied by Purinda Gunasekara then forked from github stanleyseow/RF24 to jscrane/RF24-rpi

          Network lib also based on farconada/RF24Network

          @@ -175,7 +175,7 @@

          diff --git a/md_docs_using_cmake.html b/md_docs_using_cmake.html index 46baf315..371e3170 100644 --- a/md_docs_using_cmake.html +++ b/md_docs_using_cmake.html @@ -93,18 +93,18 @@

          A more modern approach instead of using hand-crafted Makefiles & configure scripts to build & install software. Please note that these instructions are not needed if you have already installed the library using these older instructions

          -

          +

          Installing the library

          You can install the library in a few different ways.

            @@ -117,7 +117,7 @@

          The librf24-bcm.so file may not exist if you used CMake to install the library.

          Note
          Since wiringPi is no longer maintained or distributed (as of RPi OS 11 bullseye), pigpio is now required for using the radio's IRQ pin. This applies to RPi, SPIDEV, and pigpio drivers. The MRAA driver may provide its own IRQ implementation. Remember that the RPi OS lite variant does not ship with pigpio installed.
          -

          +

          Automatic Installation

          There is a newer automatic install script that makes use of the CMake approach.

            @@ -137,7 +137,7 @@

            Run the example

            sudo ./gettingstarted

          -

          +

          Building from source code

          1. Install prerequisites if there are any (pigpio, wiringPi, MRAA, LittleWire libraries, setup SPI device etc)

            @@ -179,7 +179,7 @@

          2. Run an example file
            sudo ./gettingstarted
          -

          +

          Using a package manager

          The RF24 library now (as of v1.4.1) has pre-built packages (.deb or .rpm files) that can be installed on a Raspberry Pi. These packages can be found on the library's GitHub release page

            @@ -199,7 +199,7 @@

            dpkg -i pkg_filename.deb

          -

          +

          Cross-compiling the library

          The RF24 library comes with some pre-made toolchain files (located in the RF24/cmake/toolchains directory) to use in CMake. To use these toolchain files, additional command line options are needed when configuring CMake to build the library (step 5 in the above instructions to build from source).

          cmake .. -D CMAKE_TOOLCHAIN_FILE=cmake/toolchains/armhf.cmake
          @@ -209,7 +209,7 @@

          make
          sudo make install

          Remember to also specify the RF24_DRIVER option (via CLI or environment variable) if not using the auto-configuration feature (see step 5 in the above instructions to build from source).

          -

          +

          Installing the library remotely

          To install remotely, you can create an installable package file using CMake's built-in program called CPack.

          cmake .. -D CMAKE_TOOLCHAIN_FILE=cmake/toolchains/armhf.cmake
          @@ -220,7 +220,7 @@

          diff --git a/modules.html b/modules.html index 5d50efe0..7531000a 100644 --- a/modules.html +++ b/modules.html @@ -107,7 +107,7 @@ diff --git a/mraa_8md.html b/mraa_8md.html index c3bf3d3e..79ec5d56 100644 --- a/mraa_8md.html +++ b/mraa_8md.html @@ -101,7 +101,7 @@ diff --git a/nRF24L01_8h.html b/nRF24L01_8h.html index 0d1e8686..24679aad 100644 --- a/nRF24L01_8h.html +++ b/nRF24L01_8h.html @@ -1778,7 +1778,7 @@

          diff --git a/nRF24L01_8h_source.html b/nRF24L01_8h_source.html index 13c779bd..b07cf865 100644 --- a/nRF24L01_8h_source.html +++ b/nRF24L01_8h_source.html @@ -229,7 +229,7 @@ diff --git a/pages.html b/pages.html index 86bbbbbd..51b49302 100644 --- a/pages.html +++ b/pages.html @@ -113,7 +113,7 @@ diff --git a/pico__sdk_8md.html b/pico__sdk_8md.html index 451c141d..c248e108 100644 --- a/pico__sdk_8md.html +++ b/pico__sdk_8md.html @@ -101,7 +101,7 @@ diff --git a/portability_8md.html b/portability_8md.html index aa792d63..e6ed3b29 100644 --- a/portability_8md.html +++ b/portability_8md.html @@ -101,7 +101,7 @@ diff --git a/printf_8h.html b/printf_8h.html index 1a619f54..fde1f9c7 100644 --- a/printf_8h.html +++ b/printf_8h.html @@ -138,7 +138,7 @@

          diff --git a/printf_8h_source.html b/printf_8h_source.html index 2c2ee204..b4c1b9b6 100644 --- a/printf_8h_source.html +++ b/printf_8h_source.html @@ -142,7 +142,7 @@ diff --git a/python__wrapper_8md.html b/python__wrapper_8md.html index bfebbf8b..0598ac6f 100644 --- a/python__wrapper_8md.html +++ b/python__wrapper_8md.html @@ -101,7 +101,7 @@ diff --git a/rpi__general_8md.html b/rpi__general_8md.html index 914f4fb5..7799e87a 100644 --- a/rpi__general_8md.html +++ b/rpi__general_8md.html @@ -101,7 +101,7 @@ diff --git a/spi_8h.html b/spi_8h.html index 39fd53c4..a7707315 100644 --- a/spi_8h.html +++ b/spi_8h.html @@ -136,7 +136,7 @@ diff --git a/spi_8h_source.html b/spi_8h_source.html index 68e2f432..8dd613ea 100644 --- a/spi_8h_source.html +++ b/spi_8h_source.html @@ -160,7 +160,7 @@ diff --git a/using__cmake_8md.html b/using__cmake_8md.html index b25ec100..920f77f1 100644 --- a/using__cmake_8md.html +++ b/using__cmake_8md.html @@ -101,7 +101,7 @@