1. 06 Apr, 2024 1 commit
    • Brendan's avatar
      disable auto-detect driver and default to SPIDEV (#973) · c200b7cc
      Brendan authored
      in preparation for #971
      
      - affects CMake and configure scripts
      - adds warnings to docs with reference to #971
      - removes docs' note about pigpio needed for IRQ support
      - fix cross-links in docs (probably a doxygen v1.10.0 difference)
      
      * set doxygen favicon
      * don't override user input about RF24_DRIVER in cmake
        when not using an env var to set RF24_DRIVER
      c200b7cc
  2. 01 Apr, 2024 2 commits
  3. 31 Mar, 2024 1 commit
    • Brendan's avatar
      wrap MRAA lib's `Gpio::isr()` for IRQ support (#970) · c0cff532
      Brendan authored
      I also removed MRAA exclusion from examples build. Previously, interruptConfigure.cpp was not built for MRAA driver.
      
      * update example's IRQ_PIN value
      * don't arbitrarily link example binaries to pigpio
      * improve MRAA exception messages
      c0cff532
  4. 26 Mar, 2024 1 commit
    • Brendan's avatar
      update python wrapper/examples/doc (#967) · 7441eefb
      Brendan authored
      - expose selected `RF24_DRIVER` in the python wrapper (for programmatically specifying the right pins)
      - update for the python examples
         - interrupt_configure.py usees gpiod instead of RPi.GPIO
         - removed argparse from examples for simplicity
         - use the appropriate pin numbers for the selected `RF24_DRIVER`
      - revised the python wrapper's install doc
      7441eefb
  5. 23 Mar, 2024 2 commits
  6. 22 Mar, 2024 1 commit
  7. 19 Mar, 2024 2 commits
    • Brendan's avatar
      cache gpio chip detection when properly initialized (#962) · a5a20872
      Brendan authored
      This will prevent falling back to `/dev/gpiochip0` when `/dev/gpiochipX` was previously opened successfully.
      
      This is designed to alert users when multiple processes are simultaneously using `/dev/gpiochipX`, but it should only happen if either
      1. another process is spamming/hogging the gpiochipX.
      2. the rare occurrence when RF24 needs to open gpiochipX while it is still used by another process.
      a5a20872
    • Brendan's avatar
      IRQ support using Linux kernel Character Device + Posix threads (#961) · c6c0191a
      Brendan authored
      * use pthread with Linux kernel's char-dev API
      * [example] change IRQ_PIN number
      * Add timeout to interrupt example
      * read() kernel event buffer and track event sequence number
      * code cleanup (in all Linux driver files)
      * switch RPi driver to char-dev IRQ
      * wrap wiringPiIsr() into attachInterrupt()
      * adjust build systems to not rely on pigpio for IRQ support
      * use IRQException instead of GPIOException
      * make defined RF24_LINUX_GPIO_CHIP more agnostic of selected driver (applied to RPi and SPIDEV drivers)
      * fix compiling wiringPi with examples using old makefile
      * add C linkage instead of declaring extern functions
      * reviewed wiringPi/spi wrapper
      * move gpiochipX init out of cache c'tors
      * add wiringPi pin number for CE_PIN to linux examples
      
      ---------
      Co-authored-by: default avatarTMRh20 <tmrh20@gmail.com>
      Co-authored-by: default avatargithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      c6c0191a
  8. 13 Mar, 2024 1 commit
  9. 12 Mar, 2024 1 commit
  10. 11 Mar, 2024 2 commits
  11. 04 Mar, 2024 1 commit
  12. 03 Mar, 2024 1 commit
  13. 02 Mar, 2024 4 commits
  14. 25 Feb, 2024 1 commit
  15. 24 Feb, 2024 1 commit
    • TMRh20's avatar
      Update COMMON_ISSUES re: write() function (#947) · 881473a5
      TMRh20 authored
      * Update COMMON_ISSUES re: write() functions
      
      - Update comment regarding troubleshooting and CE Pin
      - Add info on the different write() functions
      
      #816 #877
      
      * Formatting & IRQ info
      881473a5
  16. 20 Feb, 2024 1 commit
  17. 18 Feb, 2024 1 commit
  18. 17 Feb, 2024 2 commits
  19. 27 Sep, 2023 1 commit
  20. 02 Sep, 2023 1 commit
  21. 28 Aug, 2023 1 commit
  22. 25 Aug, 2023 1 commit
  23. 06 Jun, 2023 1 commit
  24. 03 Jun, 2023 1 commit
  25. 21 May, 2023 1 commit
  26. 22 Apr, 2023 1 commit
    • Brendan's avatar
      Alias gpio pin datatype (#898) · 31e8e416
      Brendan authored
      * typedef gpio pin numbers
      
      * adjust docs for new datatype def
      
      * reformat RF24.h; add missing semicolons
      
      includes a follow up from
      https://github.com/nRF24/RF24/commit/557d165c12e72329b7573b380eb1e7f132cfbfe6
      in which a useless RF24::spi member was declared for RP2040 platform.
      
      * add RF24_PIN_INVALID macro
      
      This will fix RF24::isValid() and
      prevents overflow from using the old 0xFFFF value in the RF24 overloaded c'tor that accepts no args.
      
      It also helps to avoid "magic numbers" as was previously used.
      
      * replace magic numbers to c'tor in examples
      
      * avoid max pin val conflicting w/ RF24_PIN_INVALID
      31e8e416
  27. 29 Mar, 2023 1 commit
  28. 11 Mar, 2023 1 commit
  29. 03 Mar, 2023 1 commit
    • Brendan's avatar
      resolves #899 · 557d165c
      Brendan authored
      a regression from #892 about
      using the default instance of the SPI wrapping class for PicoSDK
      557d165c
  30. 12 Feb, 2023 1 commit
  31. 23 Jan, 2023 1 commit
  32. 09 Jan, 2023 1 commit
    • Brendan's avatar
      Doc tweaks and reusable CI (#887) · e490a5a2
      Brendan authored
      * minor docs tweaks
        - show Table of Contents in Doxygen's Main/Related Pages
        - update sphinx customized CSS and conf.py
      * update doxygen config (requires v1.9.5+)
      * move docs-related files into docs folder
      * make all CI reusable workflow callers
      e490a5a2