Espressif

ESP32

Este ejemplo habilitado para Matter funciona como un tipo de dispositivo de bombilla, con capacidades de encendido y apagado.

Configuración inicial

  1. Clona el ESP-IDF de Espressif y revisa la etiqueta v4.4.2:
    mkdir ${HOME}/tools
    cd ${HOME}/tools
    git clone https://github.com/espressif/esp-idf.git
    cd esp-idf
    git checkout v4.4.2
    git submodule update --init
    export IDF_PATH=${HOME}/tools/esp-idf
    ./install.sh
  2. Clona e inicializa el repositorio connectedhomeip:
    git clone https://github.com/project-chip/connectedhomeip.git
    cd connectedhomeip
    git fetch origin v1.0-branch
    git checkout FETCH_HEAD
    git submodule update --init --recursive
    source ./scripts/activate.sh
  3. Inicializa el ejemplo:
    cd examples/all-clusters-app/esp32
    source ${IDF_PATH}/export.sh
    Si ves un error sobre la versión de Bash en este paso para los usuarios de macOS, es posible que se deba a que el Bash preinstalado es demasiado antiguo. Para resolver este problema, cambia a zsh: chsh -s /bin/zsh.
  4. Para establecer el objetivo de IDF, ejecuta set-target en función de tu placa:
    idf.py set-target esp32
  5. Actualiza la configuración de ejemplo:
    idf.py menuconfig
    1. Configura Demo -> Device Type en tu tablero

Compila la imagen y escribe en la memoria flash de la placa

  1. Compila el ejemplo de Matter:
    idf.py build
  2. Conecta el dispositivo mediante USB. Luego, ejecuta el siguiente comando para escribir la aplicación de demostración en la memoria flash del dispositivo:
    idf.py -p /dev/ttyUSB0 flash
    Si es necesario, reemplaza /dev/ttyUSB0 (Linux) por el nombre de dispositivo USB correcto de tu sistema (como /dev/tty.SLAB_USBtoUART o /dev/tty.usbserial en MacOS).
  3. La consola en serie del dispositivo está disponible como un dispositivo USB en el host de Linux. Por lo general, se denomina /dev/ttyUSB0, pero puede ser /dev/ttyUSB1 o superior si ya tienes conectados otros dispositivos en serie USB. El kit ESP32 WROVER expone dos dispositivos tty USB y será el segundo que mostrará los registros del dispositivo.

    Para conectarte a la terminal en serie, usa una herramienta como screen, minicom o tu programa de terminal en serie preferido. Por ejemplo, si el dispositivo está en /dev/ttyUSB0:

    screen /dev/ttyUSB0 115200

  4. La configuración de red persiste en el dispositivo una vez que se completa la puesta en marcha. Para borrarlo, solo ejecuta lo siguiente:

    idf.py -p /dev/ttyUSB0 erase-flash

Próximos pasos

Una vez que se haya compilado correctamente tu ejemplo de Matter, crea un proyecto de desarrollador.