1. 31 Jul, 2014 1 commit
    • TMRh20's avatar
      Add optional write timeout/failure handling · 327f0609
      TMRh20 authored
      Per issue #5 by sven337
      - Add optional failure handling/timeout
      - Un-comment #define FAILURE_HANDLING in RF24_config.h to enable
      - Add radio.errorDetected variable - indicates if an error/timeout was
      detected
      example:
      if(radio.failureDetected){
      delay(1000);
      radio.begin();
      radio.failureDetected = 0;
      radio.openWritingPipe(addresses[1]);
      radio.openReadingPipe(1,addresses[0]);
      report_failure(); //blink leds, send a message, etc.
      }
      
      Additional:
      - removed unused wide_band boolean
      - remove rx buffer flushes for RPi also
      327f0609
  2. 29 Jul, 2014 1 commit
    • TMRh20's avatar
      Modify write,startWrite, remove rx buffer flushes · 1d180150
      TMRh20 authored
      Modified write() to use startFastWrite, then toggle CE after completion
      to remove need for a delay on some boards.
      Added delay to startWrite for non-Arduino boards.
      Removed receive buffer flushes. This prevents an issue in the
      RF24Network library, where payloads would be received, but flushed when
      a transmission takes place prior to reading.
      Should address issues #7 and #11
      1d180150
  3. 16 Jun, 2014 1 commit
    • TMRh20's avatar
      Due & RPi bugfix - #9 - root cause resolved · 2869663f
      TMRh20 authored
      - Discovered a bug affecting Arduino Due using extended SPI methods, it
      seems an extra delay is required before switching to TX mode
      - Found the same bug affected the RPi, and removed all delays from
      bcm2835 driver, since this bug caused the strange behaviour on RPi
      2869663f
  4. 15 Jun, 2014 1 commit
    • TMRh20's avatar
      RPi - Example updates, minor bmc driver change · ea987810
      TMRh20 authored
      - Modified spi transfernb hopefully for the last time, re #9
      - Updated RPi examples to minimize CPU usage
      - Updated transfer example for Arduino and RPi to exit TX mode after 4ms
      per manufacturer. Improves multicast streaming.
      - Bit of a cleanup on RPi examples
      ea987810
  5. 14 Jun, 2014 1 commit
    • TMRh20's avatar
      Final tweaks to address #9 · b8d97f53
      TMRh20 authored
      - Adjusted spi writes (delay vs no delay)
      - Re-enabled buffer flushes on start/stop listening
      - Adjusted delay for transfernb()
      - Testing indicates that with gettingstarted_call_response example, ack
      responses may not be written soon enough if CPU load is high on RPi. eg:
      testing indicates this is a limitation of the hardware, not the driver.
      b8d97f53
  6. 06 Jun, 2014 1 commit
    • TMRh20's avatar
      - Fixes and modifications for Due & Teensy3.x · aac16506
      TMRh20 authored
      - Moved printf.h to root library folder
      - Modified printf.h for better compatibility with Arduino Due and Teensy
      - Fixed some potential bugs preventing Teensy from working
      - Improved Due support and performance
      - may help correct issue #7
      aac16506
  7. 25 May, 2014 1 commit
    • TMRh20's avatar
      Further tweaks per #9 · b62e179a
      TMRh20 authored
      - moved radio.flush_tx(); to public
      - adjusted call_response example to use tx_flush();
      - adjusted write_payload, read_payload
      b62e179a
  8. 22 May, 2014 1 commit
    • TMRh20's avatar
      Performance tweaks to address #9 · 5ec5b06b
      TMRh20 authored
      - added delays to stop/start listening on RPi
      - removed buffer flushes on start/stop listening for RPi
      - added modified transfernbd function to BCM library - one has no
      delays, also removed one delay period from both by waiting for RX data
      - modified transfernb function to stop sending if RX fifo is full
      - added delay to stoplistening for arduino etc. (actually seems to
      improve performance)
      - tests on-par with Arduino performance
      5ec5b06b
  9. 19 May, 2014 3 commits
  10. 18 May, 2014 2 commits
  11. 08 May, 2014 1 commit
    • TMRh20's avatar
      Updated address assignment · b7c24a81
      TMRh20 authored
      - Added setAddressWidth()  - allows address widths of 3 to 5 bytes
      (24,32 or 40 bits)
      - Addresses can now be specified via a byte array
      - Thanks to Zephyrr for suggestion
      b7c24a81
  12. 07 May, 2014 1 commit
  13. 06 May, 2014 4 commits
  14. 30 Apr, 2014 6 commits
  15. 26 Apr, 2014 1 commit
    • TMRh20's avatar
      RPi SPI functionality and RPi fix for startWrite · 6530f954
      TMRh20 authored
      - Enabled use of hardware CS1 pin
      - Removed custom_cs code for software driven CSN
      - Modified BCM driver to allow use of hardware SPI pins not in use while
      SPI is active.
      - Updated constructor in examples
      6530f954
  16. 24 Apr, 2014 2 commits
  17. 23 Apr, 2014 1 commit
  18. 22 Apr, 2014 1 commit
  19. 15 Apr, 2014 1 commit
  20. 11 Apr, 2014 1 commit
  21. 10 Apr, 2014 2 commits
    • TMRh20's avatar
      Revert powerUp() delay to 5ms delay · 18583123
      TMRh20 authored
      For nRF24L01+ to go from power down mode to TX or RX mode it must first
      pass through stand-by mode.
      There must be a delay of Tpd2stby (see Table 16.) after the nRF24L01+
      leaves power down mode before
      the CEis set high.
      
      5ms is the maximum defined in the v1.0 datasheet
      18583123
    • TMRh20's avatar
      enableDynamicAck(), Single NOACK, default RT, · 92a19af8
      TMRh20 authored
      - Added new function: enableDynamicAck()  to enable single-write NOACK
      payloads (merge closer with gcopeland fork)
      - Added single NOACK writes for write(), writeFast(), startWrite() and
      startFastWrite()
      - powerUp() now checks to see if radio is powered on. No delay if
      powered up.
      - radio must still be powered up manually if powered down manually
      - use setRetries function in begin()
      - set CE low on powerDown
      - updated readme
      92a19af8
  22. 09 Apr, 2014 1 commit
  23. 08 Apr, 2014 3 commits
    • TMRh20's avatar
      Merge pull request #1 from zephyrr/master · 8077f56a
      TMRh20 authored
      Merge improved write_payload() and read_payload()  - looks good and passes my testing.
      8077f56a
    • zephyrr's avatar
      Revamped write_payload() and read_payload() · 84146a17
      zephyrr authored
      Restructured based on needing or not needing blank padding
      84146a17
    • TMRh20's avatar
      Fix: Due write() issues. · afdb084d
      TMRh20 authored
      Found that Due would send multiple payloads or fail in writing in some
      cases. Change ensures single-payload transmission using write().
      - Updated pingpair_dyn.ino example sketch to conform with available()
      changes
      - Slight doc update
      afdb084d
  24. 06 Apr, 2014 1 commit
    • TMRh20's avatar
      Fix: Missing byte with due RX · d28323aa
      TMRh20 authored
      - SPI transfer fix to read every available byte in the payload with
      payloads less than 32 bytes with dynamic payload size disabled.
      d28323aa
  25. 05 Apr, 2014 1 commit
    • TMRh20's avatar
      Full Due support, maskIRQ function · e1aaa571
      TMRh20 authored
      - Tested and now fully functional on Arduino Due
      - Added support for the extended SPI functions: brings Due performance
      up to par with Due managing the CSN   pin and settings
      - Corrected issues with printDetails() on Due
      - Changed added variables to staticly defined types: ie: uint16_t
      instead of unsigned int
      - I think this will work on all ARM based boards that use the Arduino
      libs
      - Added maskIRQ function - to be used in RF24Network sleep mode
      - Changed csn(int mode) to csn(bool mode)
      - Updated GettingStarted_CallResponse.ino example: Capture start time
      AFTER printing to serial so measurement is more accurate
      e1aaa571