Skip to content

Commit 8064204

Browse files
authored
Merge pull request #289 from BlitzCityDIY/main
Adding support for CAN and RFM Feather
2 parents 1ca0643 + 17f533b commit 8064204

File tree

3 files changed

+33
-1
lines changed

3 files changed

+33
-1
lines changed

adafruit_platformdetect/board.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -648,6 +648,12 @@ def _rp2040_u2if_id(self) -> Optional[str]:
648648
# Feather RP2040 ThinkInk
649649
if product == 0x812C:
650650
return boards.FEATHER_EPD_U2IF
651+
# Feather RP2040 RFM
652+
if product == 0x812E:
653+
return boards.FEATHER_RFM_U2IF
654+
# Feather RP2040 CAN
655+
if product == 0x8130:
656+
return boards.FEATHER_CAN_U2IF
651657
# Will only reach here if a device was added in chip.py but here.
652658
raise RuntimeError("RP2040_U2IF device was added to chip but not board.")
653659

@@ -830,7 +836,9 @@ def lazily_generate_conditions():
830836
yield self.board.GREATFET_ONE
831837
yield self.board.PICO_U2IF
832838
yield self.board.FEATHER_U2IF
839+
yield self.board.FEATHER_CAN_U2IF
833840
yield self.board.FEATHER_EPD_U2IF
841+
yield self.board.FEATHER_RFM_U2IF
834842
yield self.board.ITSYBITY_U2IF
835843
yield self.board.MACROPAD_U2IF
836844
yield self.board.QTPY_U2IF
@@ -907,11 +915,21 @@ def feather_u2if(self) -> bool:
907915
"""Check whether the current board is a Feather RP2040 w/ u2if."""
908916
return self.id == boards.FEATHER_U2IF
909917

918+
@property
919+
def feather_can_u2if(self) -> bool:
920+
"""Check whether the current board is a Feather CAN Bus RP2040 w/ u2if."""
921+
return self.id == boards.FEATHER_CAN_U2IF
922+
910923
@property
911924
def feather_epd_u2if(self) -> bool:
912925
"""Check whether the current board is a Feather ThinkInk RP2040 w/ u2if."""
913926
return self.id == boards.FEATHER_EPD_U2IF
914927

928+
@property
929+
def feather_rfm_u2if(self) -> bool:
930+
"""Check whether the current board is a Feather RFM RP2040 w/ u2if."""
931+
return self.id == boards.FEATHER_RFM_U2IF
932+
915933
@property
916934
def itsybitsy_u2if(self) -> bool:
917935
"""Check whether the current board is a Itsy Bitsy w/ u2if."""

adafruit_platformdetect/chip.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,20 @@ def id(
118118
# QT2040 Trinkey
119119
# MacroPad RP2040
120120
# Feather RP2040 ThinkInk
121+
# Feather RP2040 RFM
122+
# Feather RP2040 CAN Bus
121123
vendor == 0x239A
122-
and product in (0x00F1, 0x00FD, 0x00F7, 0x0109, 0x0107, 0x812C)
124+
and product
125+
in (
126+
0x00F1,
127+
0x00FD,
128+
0x00F7,
129+
0x0109,
130+
0x0107,
131+
0x812C,
132+
0x812E,
133+
0x8130,
134+
)
123135
):
124136
self._chip_id = chips.RP2040_U2IF
125137
return self._chip_id

adafruit_platformdetect/constants/boards.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,9 @@
149149
# https://github.com/execuc/u2if
150150
PICO_U2IF = "PICO_U2IF"
151151
FEATHER_U2IF = "FEATHER_U2IF"
152+
FEATHER_CAN_U2IF = "FEATHER_CAN_U2IF"
152153
FEATHER_EPD_U2IF = "FEATHER_EPD_U2IF"
154+
FEATHER_RFM_U2IF = "FEATHER_RFM_U2IF"
153155
ITSYBITSY_U2IF = "ITSYBITSY_U2IF"
154156
MACROPAD_U2IF = "MACROPAD_U2IF"
155157
QTPY_U2IF = "QTPY_U2IF"

0 commit comments

Comments
 (0)