ESP32H2 Hardware Design, Matter Communication Error

ethan1111
Posts: 6
Joined: Thu Feb 01, 2024 8:00 am

ESP32H2 Hardware Design, Matter Communication Error

Postby ethan1111 » Fri Mar 01, 2024 5:45 am

Dear experts, I have two questions. Please help me, thank you.

I don't know how to add images, I'm sorry.

I use ESP32h2 to implement matter communication. ESP32h2 comes with a shielding cover, and when only using the smallest system of ESP32h2, it can achieve matter connection and control;

However, when the esp32h2 minimum system approaches the metal, it will not be able to communicate with the material and will prompt:
E (1267) OPENTHREAD: Failed to send to Thread netif: packet queue full
E (1267) OPENTHREAD: Failed to send to Thread netif: packet queue full
E (1277) OPENTHREAD: Failed to send to Thread netif: packet queue full
E (1277) OPENTHREAD: Failed to send to Thread netif: packet queue full
E (1287) OPENTHREAD: Failed to send to Thread netif: packet queue full
When the minimum system board of ESP32h2 is close to the transformer, the communication function of the inductor and other components will also fail, and the prompt will be the same as above。

My ESP32h2 small card needs to be connected to a switch power board. The ESP32h2 I purchased comes with a shielding cover. What should I do to solve this problem?

There is another question, ADC sampling. When IO3 is grounded, will the read ADC value still be 860?
And, I am unable to register for software calibration:
esp32h2的esp_adc say:
//Now no scheme supported
#pragma once

/**
* @file adc_cali_schemes.h
*
* @brief Supported calibration schemes
*/

//Now no scheme supported


Init:
adc_continuous_handle_t handle = NULL;

adc_continuous_handle_cfg_t adc_config = {
.max_store_buf_size = 256,
.conv_frame_size = EXAMPLE_READ_LEN,
};
ESP_ERROR_CHECK(adc_continuous_new_handle(&adc_config, &handle));

adc_continuous_config_t dig_cfg = {
.sample_freq_hz = 900,
.conv_mode = EXAMPLE_ADC_CONV_MODE,
.format = EXAMPLE_ADC_OUTPUT_TYPE,
};


adc_digi_pattern_config_t adc_pattern[SOC_ADC_PATT_LEN_MAX] = {0};
dig_cfg.pattern_num = channel_num;
for (int i = 0; i < channel_num; i++) {
adc_pattern.atten = EXAMPLE_ADC_ATTEN;
adc_pattern.channel = channel & 0x7;
adc_pattern.unit = EXAMPLE_ADC_UNIT;
adc_pattern.bit_width = EXAMPLE_ADC_BIT_WIDTH;

ESP_LOGI(PYD, "adc_pattern[%d].atten is :%"PRIx8, i, adc_pattern.atten);
ESP_LOGI(PYD, "adc_pattern[%d].channel is :%"PRIx8, i, adc_pattern.channel);
ESP_LOGI(PYD, "adc_pattern[%d].unit is :%"PRIx8, i, adc_pattern.unit);
}
dig_cfg.adc_pattern = adc_pattern;
ESP_ERROR_CHECK(adc_continuous_config(handle, &dig_cfg));

Who is online

Users browsing this forum: No registered users and 66 guests