Add shield definition for the MikroElektronika Flash 6 Click shield,
an mikroBUS compatible evaluation module for the Winbond W25Q128JV
(128M-bit) SPI Serial NOR Flash chip.
Tested with the command mentioned on the index.rst page.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Adjust GLCDC panel timing parameters for
rtklcdpar1s00001be display shield and add missing config for lvgl when
used with DAVE2D
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
Introduce a low-power framework for HL78xx: new states, events, Kconfig
options, URC handlers, GPIO control, and an optional power-down timer.
Includes DTS pins for WAKE/GPIO6/VGPIO and a public wake API.
Board/DTS:
- swir_hl78xx_ev_kit.overlay:
- Add mdm-vgpio, mdm-gpio6, and mdm-wake GPIOs.
Kconfig:
- Add MODEM_HL78XX_POWER_DOWN when eDRX/PSM are both disabled.
- Add choice for power-down policy:
- MODEM_HL78XX_USE_DELAY_BASED_POWER_DOWN (+ delay seconds).
- MODEM_HL78XX_USE_ACTIVE_TIME_BASED_POWER_DOWN (+ active time).
- Tune eDRX defaults and add PTW value knob.
- Adjust PSM defaults (e.g., TAU default 15 minutes).
- Gate legacy sleep-delay settings when power-down is disabled.
Driver core (hl78xx.c/.h):
- New states:
- RUN_PMC_CONFIG_SCRIPT (apply PSM/eDRX/power-down).
- SLEEP (bus closed, UART suspended, wake via RESUME).
- New events (when low-power enabled):
- DEVICE_ASLEEP, DEVICE_AWAKE, LTE_PSMEV_UPDATE.
- +CEREG handler:
- Feed power timers, handle GNSS interplay, release socket comms
after register when low-power is active.
- +PSMEV handler:
- Track ENTER/EXIT, toggle WAKE pin, dispatch sleep/awake events.
- +KCELLMEAS handler:
- Update RSRP, mark registered on valid signal, release comms.
- Carrier-on / await-registered:
- Distinguish PSM entry vs coverage loss, route to SLEEP or retry.
- Avoid iface status run during initial PSM edge cases.
- Sleep state handlers:
- On enter: WAKE=0, release chat, close pipe, suspend UART, give sem.
- On bus closed: decide GNSS pre/post-PSM behavior.
- On resume: WAKE=1, resume UART, reopen pipe, proceed to GNSS or LTE.
- State-table safety:
- Use MODEM_HL78XX_STATE_COUNT for bounds checks.
- Log improvements and explicit state transition trace.
APIs (hl78xx_apis.c / include):
- Add hl78xx_wakeup_modem() to resume from SLEEP (PSM).
Chat/URC (hl78xx_chat.c/.h):
- Enable +KPSMEV URC and +KCELLMEAS URC when low-power is on.
- Provide disable-PMC script when low-power is off.
Config helpers (hl78xx_cfg.c/.h):
- Add PMC enabling and settings application:
- hl78xx_enable_pmc(), hl78xx_psm_settings(), hl78xx_edrx_settings().
- Power-down timer (when enabled):
- Init/cancel/query and feed functions via k_work_delayable.
- Feed timer on dynamic TX path to extend on activity.
- Add hl78xx_is_rsrp_valid() helper.
- Respect CONFIG_MODEM_LOG_LEVEL in cfg TU logging.
Misc:
- Expose hl78xx_release_socket_comms() for post-register gating.
- Guard init-fail path to require WAKE pin when low-power is on.
- Add RUN_PMC_CONFIG_SCRIPT transitions after RAT config.
Why:
- Reduce energy by using PSM/eDRX and a clean SLEEP state with bus and
UART suspended. Optionally power down the modem when DRX features are
disabled. Provide explicit wake and robust PSM detection.
Impact / migration:
- DTS must define WAKE/GPIO6/VGPIO if low-power is enabled.
- New state/event enums added; state table now uses *_STATE_COUNT.
- +KCELLMEAS URC is enabled unless GNSS blocks it (see comments).
- External users can call hl78xx_wakeup_modem() to resume from PSM.
- Power-down policy and delays are configurable via Kconfig.
Testing notes:
- Verified PSMENTER drives WAKE low and transitions to SLEEP.
- Verified RESUME re-opens UART, waits settle time, then proceeds.
- Confirmed GNSS pre/post-PSM flows per config.
- Checked power-down timer feeds on data activity and triggers OFF.
Signed-off-by: Zafer SEN <zafersn93@gmail.com>
Add a mikroBUS shield definition for the MikroElektronika LTE IoT 7
Click board.
The shield instantiates a u-blox SARA-R4 modem on the mikroBUS UART
and maps required modem control signals through mikroBUS header pins
for Zephyr modem use.
Signed-off-by: Bobo Bäck Engström <bobo@id8-engineering.io>
Add a shield for the Raspberry Pi Camera Module 2, featuring the IMX219
sensor. This module is suitable for bot the "normal" and "No IR" (no
infra-red) variants and uses the rasapberry pi connector.
Signed-off-by: Josuah Demangeon <me@josuah.net>
Co-authored-by: Alain Volmat <alain.volmat@foss.st.com>
Introduce a node alias called csi_capture_port in order to allow
having non ST shield using the chosen csi_capture_port to indicate
the camera interface.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Add shield definition for the MikroElektronika EEPROM 13 Click shield,
an mikroBUS compatible evaluation module for the STMicroelectronics
M24M01E (1M-bit) I2C Serial EEPROM chip.
Tested with the command mentioned on the index.rst page.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Adds support for the Modulino Latch Relay I2C/QWIIC board.
Adds an example which turns a connected relay on/off periodically.
Signed-off-by: Tamas Jozsi <tamas.jozsi@silabs.com>
Add nRF7002EB2 with 54LM20 Series platforms to twister, 54L15 is not
added due to its low RAM.
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
This is primarily intended for providing Wi-Fi capabilities for the
nRF54L Series hosts using SPI.
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Signed-off-by: Bansidhar Mangalwedhekar <bansidhar.mangalwedhekar@nordicsemi.no>
Add a mikroBUS shield definition for the MikroElektronika RS485
Isolator 5 Click board.
The shield instantiates the RS485 transceiver on the mikroBUS UART
with the required DE/RE control pins exposed for Zephyr RS485 use.
Signed-off-by: Bobo Bäck Engström <bobo@id8-engineering.io>
Add board support for the Microchip RNBD451 shield.
This shield is compatible with a development board that includes a
mikroBUS socket.
Signed-off-by: James Liu <James.Liu2@microchip.com>
Without the special CAN transceiver node to the MCP25625 Click, the STBY
pin will be pulled high from the internal pull-up resistor in the MCP2562
CAN transceiver, causing the CAN transceiver to stay in stand-by mode,
preventing any CAN bus traffic from taking place.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Rearrange the devicetree overlays for the MikroElektronika MCP251x
shields to better align with node and property order used in the
rest of the tree.
Use "can" as devicetree node name as recommended in the Devicetree
specification.
Signed-off-by: Stephan Linz <linz@li-pro.net>
One status = "okay" entry was too much. Frequencies are now also specified
with the corresponding macros, as in other nodes.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Rearrange the devicetree overlays for the MCP2515 shields to better align
with node and property order used in the rest of the tree.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Rearrange the devicetree overlays for the MikroElektronika CAN FD 6
shield to better align with node and property order used in the rest
of the tree.
Use "can" as devicetree node name as recommended in the Devicetree
specification.
Signed-off-by: Stephan Linz <linz@li-pro.net>
Add missing CAN transceivers to the MikroElektronika MCP251xFD shield
overlays.
Without the CAN transceiver added to the MCP251863 Click, the STBY pin will
be pulled high from the internal pull-up resistor in the AT6563 CAN
transceiver, causing the CAN transciever to stay in stand-by mode,
preventing any CAN bus traffic from taking place.
On the two other shields, the default solder jumpers tie the STBY_I signal
to GND, causing the CAN transceivers to always be enabled.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
Rearrange the devicetree overlays for the MikroElektronika MCP251xFD
shields to better align with node and property order used in the rest of
the tree.
Use "can" as devicetree node name as recommended in the Devicetree
specification.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
Add a mikroBUS shield definition for the MikroElektronika Temp & Hum
Click board.
The shield instantiates an ST HTS221 temperature and humidity sensor
on the mikroBUS I2C bus using the existing Zephyr sensor driver.
Signed-off-by: Bobo Bäck Engström <bobo@id8-engineering.io>
LVGL BITS_PER_PIXEL and COLOR_DEPTH are closely linked to how the LTDC
is configured on the platform. Move all all STM32 common LVGL
configuration into the common stm32 Kconfig.defconfig.
CONFIG_LV_DPI_DEF and CONFIG_INPUT are application related.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
LVGL Kconfig already set the LV_Z_BITS_PER_PIXEL config based
on the LV_COLOR_DEPTH so avoid setting LV_Z_BITS_PER_PIXEL
for boards / shields when the LV_COLOR_DEPTH is also set.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
The LTDC pixel format and HEAP size is a matter of the application
rather than the configuration of the shield.
The LTDC has already a default RGB565 configuration hence such conf
is not more necessary, moreover sample display heap rework make the
CONFIG_HEAP_MEM_POOL_SIZE setting no more necessary.
cf "samples: display: define HEAP_MEM_POOL_ADD_SIZE_ for display buffer"
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
The RGB565 format should be suffisant as default format of LTDC
when using this shield and allows to keep the default framebuffer
memory usage low.
Application requiring RGB888 or ARGB8888 input format can later
on update the LTDC input format when really necessary.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
The RGB565 format should be suffisant as default format of LTDC
when using this shield and allows to keep the default framebuffer
memory usage low.
Application requiring RGB888 or ARGB8888 input format can later
on update the LTDC input format when really necessary.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
stepper-ctrl is used as suffix for motion control drivers
stepper-driver is used as suffix for stepper drivers in mfd devices
Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
Configure the nWKRQ pin for open-drain with an internal pull-up resistor,
already enabled on the device-state-gpios GPIO, to the VIO rail.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
Configure the nWKRQ pin for open-drain with an external pull-up resistor,
present on the board, to the VIO rail.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
When the TCAN4550 nWKRQ pin is configured for VIO, the pin is an open drain
output and requires an external pull-up resistor to the VIO rail.
Since the TCAN4550 EVM does not have such a pull-up, enable it on the GPIO
to which the nWKRQ pin is connected.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
As some boards were updated to use `zephyr:board` instead of a mere marker,
old `:ref:` references have become invalid in some shields' documentation.
Fix it by using `:zephyr:board:` in these shields' docs.
Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
BOE manufactures the display panel. But G1120B0MIPI is an NXP part
number, designed specifically for NXP evaluation boards, and sold by
NXP. And the Zephyr shield is supported and maintained by NXP.
Signed-off-by: Derek Snell <derek.snell@nxp.com>
Adds support for the Seeed Studio XIAO CAN Bus shield. This shield is
similar to the other shields but designed for the Seeed Studio XIAO
hardware interface. The shield conflicts with the XIAO serial interface
on D6 and D7 that must be used for SPI CS and the MCP2515 INT. The shield
resolves this conflict by disabling the XIAO serial function (see
documentation and DTS overlays).
Successfully evaluated with the following compatible boards:
- Seeeduino XIAO (a.k.a. Seeed Studio XIAO SAMD21)
- Seeed Studio XIAO BLE (Sense), a.k.a. XIAO nRF52840 (Sense)
- Seeed Studio XIAO RP2040
Potentially usable with the following compatible boards:
- Seeed Studio XIAO ESP32-S3 (Sense)
- Seeed Studio XIAO ESP32-C3
- Seeed Studio XIAO ESP32-C6
- Seeed Studio XIAO MG24
- Seeed Studio XIAO nRF54L15
- Seeed Studio XIAO RA4M1
Signed-off-by: Stephan Linz <linz@li-pro.net>
Apply chnages from dts-linter 0.3.9.
Improve compliance with DTS Coding Style which says that:
4) Hex values in properties, e.g. “reg”, shall use lowercase hex.
The address part can be padded with leading zeros.
Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
Copyright sign, trademark sign, registered trademark sign, ... and other
non-ASCII characters are OK to use in the documentation source files.
Replace them with the corresponding Unicode characters.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Now that the LTDC driver is taking care of flushing the cache
on display_write call, there is no need to have the framebuffer
memory cache disabled.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
According to STM32F411xC/E refman(RM0383) and the clock tree, there
is no PLLI2SQ output.
Remove the div-q property to fix build error.
Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
NET_CONFIG_NEED_IPV6 is by default
already not enabled, so we don't need
to add that default again in a shield.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
In the central search mask of the board and shield catalog, panels
with the corresponding images are only rendered correctly if the
file name of the corresponding image also follows the entry in the
shield.yml file. This has now been corrected.
Signed-off-by: Stephan Linz <linz@li-pro.net>
In the central search mask of the board and shield catalog, panels
with the corresponding images are only rendered correctly if the
file name of the corresponding image also follows the entry in the
shield.yml file. This has now been corrected.
Signed-off-by: Stephan Linz <linz@li-pro.net>