diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml
new file mode 100644
index 0000000..dbd8145
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug-report.yml
@@ -0,0 +1,115 @@
+name: Report a problem
+description: Create a report to let us help you
+body:
+
+ # This stuff will be rendered when the user is creating the issue.
+ # It is not included in the issue's description when the user submits the issue
+ - type: markdown
+ attributes:
+ value: |-
+ Please read [about common issues](https://github.com/nRF24/RF24/blob/master/COMMON_ISSUES.md) first.
+ It addresses the most common problems that people have (whether they know it or not).
+
+ > [!caution]
+ > These issues/tickets are intended **only for problems related to the RF24 library** source code.
+ > Please use other forums/communities to ask questions that specific to _your_ source code.
+ > - [Arduino Forums](https://forum.arduino.cc/)
+ > - [PlatformIO forums](https://community.platformio.org/)
+
+ We also host exhaustive [library documentation](https://nRF24.github.io/RF24).
+ Please check the [API docs](https://nrf24.github.io/RF24/classRF24.html)
+ and/or [platform-specific pages](https://nrf24.github.io/RF24/pages.html)
+ to see if your problem is described or addressed there.
+
+ Python users should migrate to using our [pyRF24](https://github.com/nRF24/pyRF24) python package.
+
+ The pyRF24 package has numerous advantages over the older/individual python wrapper(s)
+
+ - [x] [drop-in compatible](https://nrf24.github.io/pyRF24/#migrating-to-pyrf24)
+ - [x] available via [`pip install pyrf24`](https://pypi.org/project/pyrf24/)
+ - [x] no need to build from source and does not require the C++ libraries installed
+ - [x] includes wrappers for RF24, RF24Network, RF24Mesh libraries and a fake BLE implementation
+ - [x] includes typing stubs for type checking tools like mypy
+ - [x] has [dedicated documentation](https://nrf24.github.io/pyRF24) and supports Python's builtin `help()` function
+
+
+
+ - type: input
+ id: module
+ attributes:
+ label: What radio module do you use?
+ description: >-
+ Please tell us what type of radio(s) you are using.
+ We are especially interested if you are using a PA/LNA variant.
+ placeholder: nRF24L01+ PA/LNA, nRF24L01+
+ validations:
+ required: true
+
+ - type: input
+ id: platform
+ attributes:
+ label: What driver board(s) do you use?
+ description: >-
+ Please tell us what board(s) you are using to drive the radio.
+ placeholder: Arduino UNO, RPi3, RPi Pico
+ validations:
+ required: true
+
+ - type: markdown
+ attributes:
+ value: |-
+ > [!warning]
+ > Any 64-bit Linux OS requires installing RF24 libraries with
+ > [our CMake instructions](https://nrf24.github.io/RF24/md_docs_2using__cmake.html).
+
+ - type: textarea
+ id: linux-os
+ attributes:
+ label: If using Linux, what OS are you using?
+ description: |-
+ This is only needed if you are using a Linux system to drive the radio.
+
+ Please copy and paste the output for the following command:
+
+ ```text
+ uname -srm && lsb_release -a
+ ```
+ render: text
+
+ - type: textarea
+ id: user-issue
+ attributes:
+ label: Describe your problem
+ description: Please use as much detail as possible.
+ placeholder: Something seems broken because ...
+ validation:
+ required: true
+
+ - type: markdown
+ id: how-to-md
+ attributes:
+ value: |-
+ GitHub supports their own flavor of MarkDown syntax.
+ Learn more in [GitHub's documentation](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax).
+
+ - type: textarea
+ id: rx-code
+ attributes:
+ label: What is the RX code?
+ description: >-
+ Use this area to show your relevant source code for RX behavior.
+ value: |-
+ #include
+ // ...
+ render: cpp
+
+ - type: textarea
+ id: tx-code
+ attributes:
+ label: What is the TX code?
+ description: >-
+ Use this area to show your relevant source code for TX behavior.
+ value: |-
+ #include
+ // ...
+ render: cpp
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000..f8bbc5d
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1,25 @@
+# this setting will force users to use the provided issue templates
+blank_issues_enabled: true
+# This setting may be changed in the future if the templates are not being used!
+
+# if the templates provided don't fit the subject of the user feedback,
+# here we can give links to other forms of user feedback
+contact_links:
+ - name: Arduino Forums
+ url: https://forum.arduino.cc/
+ about: A place for questions not specific to RF24 library (for Arduino users)
+ - name: PlatformIO Forums
+ url: https://community.platformio.org/
+ about: A place for questions not specific to RF24 library (for PlatformIO users)
+ - name: Common nRF24L01 problems
+ url: https://nrf24.github.io/RF24/md_COMMON__ISSUES.html
+ about: We have documented common issues for user convenience and quick solutions
+ - name: RF24 API documentation
+ url: https://nrf24.github.io/RF24/classRF24.html
+ about: Our exhaustive documentation helps describe expected behavior
+ # This link is only useful if blank issues templates are disabled (see top of this file)
+ # Uncomment this list item and disable blank issue templates
+ # to allow only maintainers the ability to open a blank issue
+ # - name: Maintainers' note
+ # url: https://github.com/nRF24/RF24/issues/new
+ # about: Start a discussion for maintainers only
diff --git a/.github/ISSUE_TEMPLATE/feature-request.yml b/.github/ISSUE_TEMPLATE/feature-request.yml
new file mode 100644
index 0000000..50e236d
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature-request.yml
@@ -0,0 +1,37 @@
+name: Feature request
+description: Suggest an idea for this project
+body:
+ - type: textarea
+ id: behavior
+ attributes:
+ label: Describe the behavior you would like
+ description: >-
+ Use this area to describe what behavior you desire.
+ Please be clear and concise as possible.
+ placeholder: You can use markdown syntax here
+ validations:
+ required: true
+
+ - type: textarea
+ id: proposal
+ attributes:
+ label: Propose an implementation or solution
+ description: >-
+ How do you imagine this will be implemented in code?
+ placeholder: You can use markdown syntax here
+
+ - type: textarea
+ id: alternative
+ attributes:
+ label: Describe alternatives you have considered
+ description: >-
+ Were you able to achieve the desired behavior in some other/inconvenient way?
+ placeholder: You can use markdown syntax here
+
+ - type: textarea
+ id: added-context
+ attributes:
+ label: Additional context
+ description: >-
+ If there is anything that might be special or specific to your usage, please let us know.
+ placeholder: You can use markdown syntax here
diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml
new file mode 100644
index 0000000..dd43dcc
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/question.yml
@@ -0,0 +1,53 @@
+name: Question
+description: Have a question?
+title: "[Question]: "
+labels: ["question"]
+body:
+
+ # This stuff will be rendered when the user is creating the issue.
+ # It is not included in the issue's description when the user submits the issue
+ - type: markdown
+ attributes:
+ value: |-
+ Please read [about common issues](https://github.com/nRF24/RF24/blob/master/COMMON_ISSUES.md) first.
+ It addresses the most common problems that people have (whether they know it or not).
+
+ > [!caution]
+ > These issues/tickets are intended **only for problems related to the RF24 library** source code.
+ > Please use other forums/communities to ask questions that related to your source code.
+ > - [Arduino Forums](https://forum.arduino.cc/)
+ > - [PlatformIO forums](https://community.platformio.org/)
+
+ We also host exhaustive [library documentation](https://nRF24.github.io/RF24).
+ Please check the [API docs](https://nrf24.github.io/RF24/classRF24.html)
+ and/or [platform-specific pages](https://nrf24.github.io/RF24/pages.html)
+ to see if your question is addressed there.
+
+ Python users should migrate to using our [pyRF24](https://github.com/nRF24/pyRF24) python package.
+
+ The pyRF24 package has numerous advantages over the older/individual python wrapper(s)
+
+ - [x] [drop-in compatible](https://nrf24.github.io/pyRF24/#migrating-to-pyrf24)
+ - [x] available via [`pip install pyrf24`](https://pypi.org/project/pyrf24/)
+ - [x] no need to build from source, and does not require the C++ libraries installed
+ - [x] includes wrappers for RF24, RF24Network, RF24Mesh libraries and a fake BLE implementation
+ - [x] includes typing stubs for type checking tools like mypy
+ - [x] has [dedicated documentation](https://nrf24.github.io/pyRF24) and supports Python's builtin `help()` function
+
+
+
+ - type: textarea
+ id: user-question
+ attributes:
+ # `label` is a required field here. I'm guessing that it cannot be an empty string.
+ label: What would you like to know?
+ placeholder: You can use markdown syntax here
+ validation:
+ required: true
+
+ - type: markdown
+ id: how-to-md
+ attributes:
+ value: |-
+ GitHub supports their own flavor of MarkDown syntax.
+ Learn more in [GitHub's documentation](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax).