No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Hola mundo con ESP-IDF

13/30
Recursos

Aportes 8

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Si les da un error al cargar nuevamente el programa y la placa est谩 conectada. En mi caso funcion贸 presionar el bot贸n 鈥淏OOT鈥 despu茅s de aplicar el comando:

idf.py -p (COM) flash

Linux

Para identificar el puerto usado use:

 $ ll /dev/ttyU*

Me marcaba el siguiente error cuando intent茅 flashear el ESP32:

A fatal error occurred: Could not open /dev/ttyUSB0, the port doesn鈥檛 exist

Lo solucion茅 con:

$ sudo adduser <username> dialout
$ sudo chmod a+rw /dev/ttyUSB0

En donde <username> es el usuario actual de Linux y ttyUSB0 es el puerto que le asign贸 a mi placa.

pongo el codigo el ejercicio:

#include <stdio.h>
#include "esp_chip_info.h"

void app_main(void)
{   esp_chip_info_t chip_info;
    esp_chip_info(&chip_info);
    printf("Este es un chip tipo %s, y tiene %d cores!\n",
    CONFIG_IDF_TARGET,
    chip_info.cores
    );

}

vuelvo a aclarar que en mi caso ( ESP32 nodemcu) para poder poner el modulo en mode download, tuve que desenergizar la placa y conectarla al usb teniendo presionado el boton 100 en serigrafia, poder poder ver el print: idf.py -p /dev/ttyUSB0 monitor

Sugiero estas dos lecturas si manejan la version s2 mini: <https://docs.espressif.com/projects/esp-idf/en/v4.3/esp32s2/api-guides/usb-console.html> <https://github.com/espressif/esp-idf/issues/11035#>
Para aquellos que tienen la version s2 mini, les recomiendo estas lecturas <https://docs.espressif.com/projects/esp-idf/en/v4.3/esp32s2/api-guides/usb-console.html> <https://github.com/espressif/esp-idf/issues/11035>
Hola buenas tardes! realice todos los pasos sin problema, pero cuando le doy a idf.py monitor no logro ver lo planteado en el printf. Cabe descatar que hice el build sin problema, y al momento de flash tampoco hubo novedad ![]()![]()

Utilice toda la definicion en la libreria: miscellaneous system apis

#include <stdio.h>
#include "esp_chip_info.h"

esp_chip_info_t chip_info;

char* model_chip;
long features_chip;

char* get_model_name(int model)
{
    char* model_name;
    switch (model)
    {
        case CHIP_ESP32: 
            model_name = "ESP32";
            break;
        case CHIP_ESP32S2: 
            model_name = "ESP32-S2";
            break;
        case CHIP_ESP32S3: 
            model_name = "ESP32-S3";
            break;  
        case CHIP_ESP32C2: 
            model_name = "ESP32-C2";
            break;
        case CHIP_ESP32C3: 
            model_name = "ESP32-C3";
            break;
        case CHIP_ESP32C6: 
            model_name = "ESP32-C6";
            break; 
        case CHIP_ESP32H2: 
            model_name = "ESP32-H2";
            break;
        //case CHIP_ESP32P4:  El compilador no lo reconoce
        case 18: 
            model_name = "ESP32-P4";
            break;
        case CHIP_POSIX_LINUX: 
            model_name = "The code is running on POSIX/Linux simulator";
            break;                             
        default:
            model_name = "?????";   
    }

    return model_name;
}

void app_main(void)
{
   esp_chip_info(&chip_info);
   model_chip = get_model_name(chip_info.model);
   features_chip = chip_info.features;

   printf("Hola mundo desde isp-idf\n");


   printf("model %s revision %d cores %d \n", 
       model_chip,
       chip_info.revision,
       chip_info.cores
   );

   printf("Features:");
   if (features_chip & CHIP_FEATURE_EMB_FLASH) printf("Chip has embedded flash memory\n");
   if (features_chip & CHIP_FEATURE_WIFI_BGN) printf("Chip has 2.4GHz WiFi\n");
   if (features_chip & CHIP_FEATURE_BLE) printf("Chip has Bluetooth LE\n");
   if (features_chip & CHIP_FEATURE_BT) printf("Chip has Bluettoth Classic\n");
   if (features_chip & CHIP_FEATURE_IEEE802154) printf("Chip has IEEE802154\n");
   if (features_chip &  CHIP_FEATURE_EMB_PSRAM) printf("Chip has embedded psram\n");

   /*
   //Esto Aparece en los miscellaneous system apis
   
   //features
   printf("%ld Chip has embedded flash memory\n", CHIP_FEATURE_EMB_FLASH);
   printf("%ld Chip has 2.4GHz WiFi\n",           CHIP_FEATURE_WIFI_BGN);
   printf("%ld Chip has Bluetooth LE\n",          CHIP_FEATURE_BLE);
   printf("%ld Chip has Bluettoth Classic\n",     CHIP_FEATURE_BT);
   printf("%ld Chip has IEEE802154\n",            CHIP_FEATURE_IEEE802154);
   printf("%ld Chip has embedded psram\n",        CHIP_FEATURE_EMB_PSRAM);

   //models
   printf("%d ESP32\n",                                        CHIP_ESP32);
   printf("%d ESP32-S2\n",                                     CHIP_ESP32S2);
   printf("%d ESP32-S3\n",                                     CHIP_ESP32S3);
   printf("%d ESP32-C3\n",                                     CHIP_ESP32C3);
   printf("%d ESP32-C2\n",                                     CHIP_ESP32C2);
   printf("%d ESP32-C6\n",                                     CHIP_ESP32C6);
   printf("%d ESP32-H2\n",                                     CHIP_ESP32H2);
   //printf("%d ESP32-P4\n",                                     CHIP_ESP32P4);
   //cuando compilo con esta constante no la reconoce
   printf("%d The code is running on POSIX/Linux simulator\n", CHIP_POSIX_LINUX);
   */


}

To exit from IDF monitor please use "Ctrl+]". Alternatively, you can use Ctrl-T Ctrl-X to exit.