Tactility/Devices/cl32-v04/cl32-v04.dts
Ken Van Hoeylandt b9a96ca26d
UX improvements (#686)
- Introduce "side" mode for system bar, versus classic statusbar on top with launcher bar below
- Automatic system bar mode detection with override by Kconfig/device.properties and secondary override by user via Appereance settings app
- Open a quick-settings menu from the status bar for available Wi-Fi, Bluetooth, GPS, and power controls.
- Apps can display overlays with backdrop or Escape-key dismissal.
- Added focus-container support and improved keyboard navigation, including Fn+Enter on Cardputer devices.
- Power-off controls are available on supported device cards.
- Updated status-bar layouts, simulator display dimensions, and toolbar navigation styling.
- I²C scanning now supports selecting individual buses to rescan.
- SD-card mount status is no longer shown in the status bar.
2026-10-11 00:32:27 +02:00

121 lines
2.7 KiB
Plaintext

/dts-v1/;
#include <tactility/bindings/root.h>
#include <tactility/bindings/esp32_ble.h>
#include <tactility/bindings/esp32_gpio.h>
#include <tactility/bindings/esp32_grove.h>
#include <tactility/bindings/esp32_i2c_master.h>
#include <tactility/bindings/esp32_spi.h>
#include <tactility/bindings/esp32_usbdevice.h>
#include <tactility/bindings/esp32_sdspi.h>
#include <tactility/bindings/esp32_wifi.h>
#include <bindings/bm8563.h>
#include <bindings/cl32_v4_light.h>
#include <bindings/cl32_v4_keyboard.h>
#include <bindings/cl32_v4_power.h>
#include <bindings/st7305.h>
/ {
compatible = "root";
model = "CL-32";
gpio0 {
compatible = "espressif,esp32-gpio";
gpio-count = <49>;
};
wifi0 {
compatible = "espressif,esp32-wifi";
};
usbdevice0 {
compatible = "espressif,esp32-usbdevice";
usbdevicemsc0 {
compatible = "espressif,esp32-usbdevice-msc";
};
};
ble0 {
compatible = "espressif,esp32-ble";
};
// Top Stemma/Qwiic port 1 shares this bus with the RTC (SDA: pin 1 <-> SCL: pin 2). External
// I2C devices on that port are reachable via i2c0.
i2c0 {
compatible = "espressif,esp32-i2c-master";
port = <I2C_NUM_0>;
clock-frequency = <100000>;
pin-sda = <&gpio0 1 GPIO_FLAG_PULL_UP>;
pin-scl = <&gpio0 2 GPIO_FLAG_PULL_UP>;
rtc: bm8563 {
compatible = "belling,bm8563";
reg = <0x51>;
};
// The core chip provides both the keyboard and the power functions
keyboard {
compatible = "cl32-v4-keyboard";
reg = <0x08>;
};
power {
compatible = "cl32-v4-power";
reg = <0x08>;
};
back_light {
compatible = "cl32-v4-light";
reg = <0x08>;
brightness-register = <0x0F>;
timeout-register = <0x10>;
};
front_light {
compatible = "cl32-v4-light";
status = "disabled"; // Will be in future hardware
reg = <0x08>;
brightness-register = <0x11>;
timeout-register = <0x12>;
};
};
port_b: grove1 {
compatible = "espressif,esp32-grove";
defaultMode = <GROVE_MODE_I2C>;
pinSdaTx = <&gpio0 47 GPIO_FLAG_NONE>;
pinSclRx = <&gpio0 48 GPIO_FLAG_NONE>;
uartPort = <UART_NUM_1>;
i2cPort = <I2C_NUM_1>;
i2cClockFrequency = <100000>;
};
spi1 {
compatible = "espressif,esp32-spi";
host = <SPI2_HOST>;
cs-gpios = <&gpio0 7 GPIO_FLAG_NONE>,
<&gpio0 6 GPIO_FLAG_NONE>;
pin-mosi = <&gpio0 10 GPIO_FLAG_NONE>;
pin-miso = <&gpio0 11 GPIO_FLAG_NONE>;
pin-sclk = <&gpio0 9 GPIO_FLAG_NONE>;
max-transfer-size = <4096>;
sdcard@0 {
compatible = "espressif,esp32-sdspi";
frequency-khz = <20000>;
};
display@1 {
compatible = "sitronix,st7305";
pin-dc = <&gpio0 13 GPIO_FLAG_NONE>;
pin-reset = <&gpio0 12 GPIO_FLAG_NONE>;
pixel-clock-hz = <80000000>;
mirror-x;
mirror-y;
backlight = <&back_light>;
};
};
};