Repository navigation
Add Cardputer ADV 3-in-1 RF profile with keyboard handoff - #2951
Draft
JoseAlfonsoPC wants to merge 1 commit into
Draft
JoseAlfonsoPC wants to merge 1 commit into
JoseAlfonsoPC wants to merge 1 commit into
Conversation
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed Changes
Adds a dedicated
m5stack-cardputer-adv-3in1PlatformIO profile for Cardputer ADV with CC1101, nRF24L01 and SX1262 on the specified shared SPI pins. The profile restores the fixed radio pinout when persisted settings are loaded and selects the existing SX1262 support with BUSY on GPIO6. It hands GPIO8/9 from the TCA8418 keyboard I2C bus to nRF24 CE/CS on entry, then powers down the radio and restores keyboard I2C on exit. It reuses Bruce's SPI bus manager and preserves the existing radio menus.Types of Changes
New board profile, keyboard/radio pin handoff, pin persistence fix, documentation and regression checks.
Verification
Clean PlatformIO build:
pio run -e m5stack-cardputer-adv-3in1— SUCCESS. The merged binary is 4,171,072 bytes. Existing CC1101, NRF24 and LoRa menu registrations remain present.Testing
python -m unittest discover -s tests -p 'test_cardputer_adv_3in1.py'— 4 source-level checks passed. No hardware was flashed, and no radio operation or keyboard recovery has been verified on a physical board.Linked Issues
None.
User-Facing Change
Further Comments
Electrical limitation: This module connects GPIO8/9 directly to both the TCA8418 keyboard (SDA/SCL) and nRF24 (CE/CS), with no mux or isolator. While I2C is active, SCL can pull nRF24 CS low and SDA changes CE. The firmware handoff cannot guarantee electrical CS exclusion or reliable RF operation under this wiring. Physical isolation of the nRF24 CE/CS lines is needed before those guarantees can be made. While nRF24 owns the pins, GPIO0 exits the active function; keyboard navigation is unavailable during that interval.
Physical checks still pending: measure GPIO8/9 and radio CS lines during I2C/SPI activity; verify keyboard restoration and effective pinout after cold boot, reboot, deep sleep and repeated nRF24 entry/exit; test CC1101 and SX1262 RX/TX; and, after adding isolation, test nRF24 RX/TX and keyboard behavior.