Supported Controllers
Board | ShieldStandard | Chip | Ram | Flash | Features |
---|---|---|---|---|---|
Lolin S2 Mini | D1Mini | ESP32-S2 | 2MB | 4MB | D1MPC1 |
Lolin S3 Mini | D1Mini | ESP32-S3 | 2MB | 4MB | D1MPC1 |
Lilygo T-OI+ | D1Mini | ESP32-C3 | 400K | 4MB | D1MPC1, battery |
Supported D1 Mini shields
(these require a D1Mini shield compatible controller )
Shield | Designer | Features |
---|---|---|
Cilgerran Castle | Terrain-Tronics | 6x High Power LED and DC Motor driver |
Harlech Castle | Terrain-Tronics | Smart 8xLED Controller |
Caernarfon Castle | Terrain-Tronics | NeoPixel, IR, Qwiic/StemmaQT, triple servo |
Caerphilly Castle | Terrain-Tronics | Carrier board with NeoPixel, IR, Qwiic/StemmaQT |
Supported StemmaQT / Qwiic devices
Device | Designer | Features |
---|---|---|
Harlech Castle XL | Terrain-Tronics | I2C (Qwiic/StemmaQT) 24 LED controller |
AW9523 | Adafruit | I2C GPIO Expander with LED Driver |
TLV493D | Adafruit | 3D Magnetic Sensor |
MPR121 | Adafruit | Capacitive Touch Sensor |
Wii Nunchuk | Adafruit | Wii Nunchuk Controller |
PCA9685 | Adafruit | 16-Channel 12-bit PWM/Servo Driver |
QtRotaryEncoder | Adafruit | I2C Rotary Encoder |
VL53L0X | Adafruit | I2C Time-of-Flight Distance Sensor |
Generic I2C
Device | Features |
---|---|
SSD1306 | OLED display |
Supported Hardware
In order to use all the nifty hardware that provides Inputs and/or Outputs, LCPF needs to know what hardware you are using. This is usually a fairly complex part of an embedded project. LCPF makes this much easier2. For example, if you use a Lolin S2 Mini with a Terrain-Tronics Caernarfon Castle Kit , IR remote, 35 NeoPixel LEDS, and two servo motors, your entire code for device configuration could be as simple as
caernarfon = mainManager.TerrainTronics.addCaernarfon(neoPixelCount=35)
doorMotor = caernarfon.initServo( 1, "doorDrive" )
windowMotor = caernarfon.initServo( 2, "windowMotor" )
remote = caernarfon.addIrRemote()
No pins assignments, no addresses, no board types - LCPF handles all that for you.2 For example, if you use a Lolin S2 Mini with a Terrain-Tronics Caernarfon Castle Kit , configuration is as simple as
caernarfon = mainManager.TerrainTronics.addCaernarfon()
There’s no need what kind of controller you’re running on 3 - LCPF figures that out for you. And since it knows where the various parts of the Caernarfon Castle board are connected, there’s no need to specify pin assignments. So if you are using the IR remote, 35 NeoPixel LEDS, and two servo motors, your entire code for device configuration could be
caernarfon = mainManager.TerrainTronics.addCaernarfon(neoPixelCount=35)
doorMotor = caernarfon.initServo( 1, "doorDrive" )
windowMotor = caernarfon.initServo( 2, "windowMotor" )
remote = caernarfon.addIrRemote()
Footnotes
-
D1MPC = D1 Mini Pin Compatible, accepts Wemos Mini shields (like Terrain-Tronics Castle boards) ↩ ↩2 ↩3
-
IF you stick within the “curated” set of hardware options. However, there are already a few dozen supported devices and the list continues to grow. ↩ ↩2
-
Currently supported controllers include Lolin S2 Mini, Lolin S3 Mini, and the Lilygo T-OI Plus ↩