zephyr/samples/drivers/led_xec
Benjamin Cabé f6a4217a88 doc: driver: samples: Update driver samples to use new Sphinx extension
Migrated existing driver samples to use the new code-sample directive
and role.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2023-09-22 09:21:43 +02:00
..
boards
src samples, tests, boards: Switch main return type from void to int 2023-04-14 07:49:41 +09:00
CMakeLists.txt samples and tests: Add REQUIRED to Zephyr find_package call 2023-03-02 09:58:27 +01:00
prj.conf
README.rst doc: driver: samples: Update driver samples to use new Sphinx extension 2023-09-22 09:21:43 +02:00
sample.yaml samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00

.. zephyr:code-sample:: led-xec
   :name: Breathing-blinking LED (BBLED)
   :relevant-api: led_interface

   Control a BBLED (Breathing-Blinking LED) using Microchip XEC driver.

Overview
********

This sample allows to test the Microchip led-xec driver which uses the
breathing-blinking LED (BBLED) controllers. The SoC design is fixed
allowing each BBLED control over one specific GPIO.

MEC15xx and MEC172x:

- BBLED controller 0 uses GPIO 0156.
- BBLED controller 1 uses GPIO 0157.
- BBLED controller 2 uses GPIO 0153.

MEC172x has a fourth instance of BBLED:

- BBLED controller 3 uses GPIO 0035

Test pattern
============

For each LEDs (one after the other):

- Turning on
- Turning off
- Blinking on: 0.1 sec, off: 0.1 sec
- Blinking on: 1 sec, off: 1 sec

Board Jumpers
*************

mec172xevb_assy6906 evaluation board
====================================

- BBLED0: GPIO 0156.
       - Connect GPIO 0156 to board LED4 by placing a wire from JP71-11 to J47-3.
       - Make sure there are no jumpers on JP54 1-2 and JP21 4-5

- BBLED1: GPIO 0157.
       - Connect GPIO 0156 to board LED5 by placing a wire from JP71-12 to J48-3.
       - Make sure there are no jumpers on JP54 3-4 and JP21 16-17

- BBLED2: GPIO 0153.
       - Connect GPIO 0153 to board LED7 by placing a wire from JP71-5 to JP146-5.

         JP146-5 is connected to MEC172x VCI_OUT1 without a jumper. Force VCI_OUT1
         high by forcing VCI_IN1 high: install jumper on J55 3-4 which pulls VCI_IN1
         to the VBAT rail via a 100K pull-up. Requires VBAT power rail is connected
         to VTR or some other power source.

- BBLED3: GPIO 0035.
       - Connect GPIO 0035 to board LED7 by placing a wire from JP67-19 to JP146-1.
       - Make sure there is no jumper on JP79 17-18.

         JP146-1 is connected to MEC172x VCI_OUT2 without a jumper. Force VCI_OUT2
         high by forcing VCI_IN2 high: install a jumper on J55 5-6 which pulls VCI_IN2
         to the VBAT rail via a 100K pull-up. Requires VBAT power rail is connected
         to VTR or some other power source.

mec15xxevb_assy6853 evaluation board
====================================

- BBLED0: GPIO 0156.
       - Add jumper on JP41 1-2 to connect GPIO 0156 to board LED2
       - Remove jumper on JP31 13-14

- BBLED1: GPIO 0157.
       - Add jumper on JP41 3-4 to connect GPIO 0157 to board LED3
       - Remove jumper on JP31 15-16

- BBLED2: GPIO 0153.
       - Add jumper on JP41 3-4 to connect GPIO 0153 to board LED4
       - Remove jumper on JP31 17-18

Building and Running
********************

This sample can be built and executed on all the boards with the LEDs connected.
The LEDs must be correctly described in the DTS. Each breathing-blinking LED
controller is fixed by chip design to connect to one GPIO. The bbled node must
have its PINCTRL properties set to the correct GPIO.