Skip to content

Commit 350117f

Browse files
committed
Merge branch 'feat/sensor_hub_update' into 'master'
feat(sensor_hub): make sensor_hub a separate component Closes AEG-2059 See merge request ae_group/esp-iot-solution!1165
2 parents 1f4206c + c6015b0 commit 350117f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+1882
-1474
lines changed

.github/workflows/upload_component.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ jobs:
7676
components/sensors/power_monitor/ina236;
7777
components/sensors/pressure/bme280;
7878
components/sensors/radar/at581x;
79+
components/sensors/sensor_hub;
7980
components/spi_bus;
8081
components/touch/touch_proximity_sensor;
8182
components/usb/esp_msc_ota;

.gitlab/ci/build.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1327,6 +1327,14 @@ build_components_sensors_radar_at581x_test_apps:
13271327
variables:
13281328
EXAMPLE_DIR: components/sensors/radar/at581x/test_apps
13291329

1330+
build_components_sensor_hub_test_apps:
1331+
extends:
1332+
- .build_examples_template
1333+
- .rules:build:components_sensors_sensor_hub_test_apps
1334+
- .build_idf_active_release_version
1335+
variables:
1336+
EXAMPLE_DIR: components/sensors/sensor_hub/test_apps
1337+
13301338
build_components_spi_bus_test_apps:
13311339
extends:
13321340
- .build_examples_template

.gitlab/ci/rules.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,7 @@
252252

253253
.patterns-components_sensors_sensor_hub: &patterns-components_sensors_sensor_hub
254254
- "components/sensors/sensor_hub/**/*"
255+
- "tools/cmake_utilities/package_manager.cmake"
255256

256257
.patterns-components_spi_bus: &patterns-components_spi_bus
257258
- "components/spi_bus/**/*"
@@ -2121,7 +2122,7 @@
21212122
- <<: *if-dev-push
21222123
changes: *patterns-components_sensors_pressure_bme280
21232124

2124-
.rules:build:components_sensors_sensor_hub_test:
2125+
.rules:build:components_sensors_sensor_hub_test_apps:
21252126
rules:
21262127
- <<: *if-protected
21272128
- <<: *if-label-build

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ The registered components in ESP-IoT-Solution are listed below:
118118
| [openai](https://components.espressif.com/components/espressif/openai) | [![Component Registry](https://components.espressif.com/components/espressif/openai/badge.svg)](https://components.espressif.com/components/espressif/openai) |
119119
| [power_measure](https://components.espressif.com/components/espressif/power_measure) | [![Component Registry](https://components.espressif.com/components/espressif/power_measure/badge.svg)](https://components.espressif.com/components/espressif/power_measure) |
120120
| [pwm_audio](https://components.espressif.com/components/espressif/pwm_audio) | [![Component Registry](https://components.espressif.com/components/espressif/pwm_audio/badge.svg)](https://components.espressif.com/components/espressif/pwm_audio) |
121+
| [sensor_hub](https://components.espressif.com/components/espressif/sensor_hub) | [![Component Registry](https://components.espressif.com/components/espressif/sensor_hub/badge.svg)](https://components.espressif.com/components/espressif/sensor_hub) |
121122
| [servo](https://components.espressif.com/components/espressif/servo) | [![Component Registry](https://components.espressif.com/components/espressif/servo/badge.svg)](https://components.espressif.com/components/espressif/servo) |
122123
| [sht3x](https://components.espressif.com/components/espressif/sht3x) | [![Component Registry](https://components.espressif.com/components/espressif/sht3x/badge.svg)](https://components.espressif.com/components/espressif/sht3x) |
123124
| [spi_bus](https://components.espressif.com/components/espressif/spi_bus) | [![Component Registry](https://components.espressif.com/components/espressif/spi_bus/badge.svg)](https://components.espressif.com/components/espressif/spi_bus) |

README_CN.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ ESP-IoT-Solution 中注册的组件如下:
118118
| [openai](https://components.espressif.com/components/espressif/openai) | [![Component Registry](https://components.espressif.com/components/espressif/openai/badge.svg)](https://components.espressif.com/components/espressif/openai) |
119119
| [power_measure](https://components.espressif.com/components/espressif/power_measure) | [![Component Registry](https://components.espressif.com/components/espressif/power_measure/badge.svg)](https://components.espressif.com/components/espressif/power_measure) |
120120
| [pwm_audio](https://components.espressif.com/components/espressif/pwm_audio) | [![Component Registry](https://components.espressif.com/components/espressif/pwm_audio/badge.svg)](https://components.espressif.com/components/espressif/pwm_audio) |
121+
| [sensor_hub](https://components.espressif.com/components/espressif/sensor_hub) | [![Component Registry](https://components.espressif.com/components/espressif/sensor_hub/badge.svg)](https://components.espressif.com/components/espressif/sensor_hub) |
121122
| [servo](https://components.espressif.com/components/espressif/servo) | [![Component Registry](https://components.espressif.com/components/espressif/servo/badge.svg)](https://components.espressif.com/components/espressif/servo) |
122123
| [sht3x](https://components.espressif.com/components/espressif/sht3x) | [![Component Registry](https://components.espressif.com/components/espressif/sht3x/badge.svg)](https://components.espressif.com/components/espressif/sht3x) |
123124
| [spi_bus](https://components.espressif.com/components/espressif/spi_bus) | [![Component Registry](https://components.espressif.com/components/espressif/spi_bus/badge.svg)](https://components.espressif.com/components/espressif/spi_bus) |

components/sensors/humiture/hdc2010/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# ChangeLog
22

3+
## v0.2.0 - 2024-12-19
4+
5+
### Enhancements:
6+
7+
* Update the method of driver registration to the `sensor_hub`
8+
39
## v0.1.1 - 2024-12-11
410

511
### Bug Fixes:
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
idf_component_register(SRCS "hdc2010.c"
22
INCLUDE_DIRS include)
33

4+
if(CONFIG_SENSOR_INCLUDED_HUMITURE)
5+
target_link_libraries(${COMPONENT_LIB} INTERFACE "-u humiture_hdc2010_init")
6+
endif()
7+
48
include(package_manager)
59
cu_pkg_define_version(${CMAKE_CURRENT_LIST_DIR})

components/sensors/humiture/hdc2010/hdc2010.c

Lines changed: 80 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
2+
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -8,6 +8,7 @@
88
#include "i2c_bus.h"
99
#include "esp_log.h"
1010
#include "hdc2010.h"
11+
#include "iot_sensor_hub.h"
1112

1213
#define WRITE_BIT I2C_MASTER_WRITE /*!< I2C master write */
1314
#define READ_BIT I2C_MASTER_READ /*!< I2C master read */
@@ -289,3 +290,81 @@ esp_err_t hdc2010_default_init(hdc2010_handle_t sensor)
289290

290291
return ESP_OK;
291292
}
293+
294+
#ifdef CONFIG_SENSOR_INCLUDED_HUMITURE
295+
296+
static hdc2010_handle_t hdc2010 = NULL;
297+
static bool is_init = false;
298+
299+
esp_err_t humiture_hdc2010_init(i2c_bus_handle_t i2c_bus, uint8_t addr)
300+
{
301+
if (is_init || !i2c_bus) {
302+
return ESP_FAIL;
303+
}
304+
305+
hdc2010 = hdc2010_create(i2c_bus, addr);
306+
307+
if (!hdc2010) {
308+
return ESP_FAIL;
309+
}
310+
311+
is_init = true;
312+
return ESP_OK;
313+
}
314+
315+
esp_err_t humiture_hdc2010_deinit(void)
316+
{
317+
if (!is_init) {
318+
return ESP_FAIL;
319+
}
320+
321+
esp_err_t ret = hdc2010_delete(&hdc2010);
322+
323+
if (ret != ESP_OK) {
324+
return ESP_FAIL;
325+
}
326+
327+
is_init = false;
328+
return ESP_OK;
329+
}
330+
331+
esp_err_t humiture_hdc2010_test(void)
332+
{
333+
if (!is_init) {
334+
return ESP_FAIL;
335+
}
336+
337+
return ESP_OK;
338+
}
339+
340+
esp_err_t humiture_hdc2010_acquire_humidity(float *h)
341+
{
342+
if (!is_init) {
343+
return ESP_FAIL;
344+
}
345+
346+
*h = hdc2010_get_humidity(hdc2010);
347+
return ESP_OK;
348+
}
349+
350+
esp_err_t humiture_hdc2010_acquire_temperature(float *t)
351+
{
352+
if (!is_init) {
353+
return ESP_FAIL;
354+
}
355+
356+
*t = hdc2010_get_temperature(hdc2010);
357+
return ESP_OK;
358+
}
359+
360+
static humiture_impl_t hdc2010_impl = {
361+
.init = humiture_hdc2010_init,
362+
.deinit = humiture_hdc2010_deinit,
363+
.test = humiture_hdc2010_test,
364+
.acquire_humidity = humiture_hdc2010_acquire_humidity,
365+
.acquire_temperature = humiture_hdc2010_acquire_temperature,
366+
};
367+
368+
SENSOR_HUB_DETECT_FN(HUMITURE_ID, hdc2010, &hdc2010_impl);
369+
370+
#endif

components/sensors/humiture/hdc2010/idf_component.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version: "0.1.1"
1+
version: "0.2.0"
22
description: I2C driver for HDC2010 humiture sensor
33
url: https://github.com/espressif/esp-iot-solution/tree/master/components/sensors/humiture/hdc2010
44
repository: https://github.com/espressif/esp-iot-solution.git
@@ -8,5 +8,8 @@ dependencies:
88
i2c_bus:
99
public: true
1010
override_path: "../../../i2c_bus"
11+
sensor_hub:
12+
public: true
13+
override_path: "../../../sensors/sensor_hub"
1114
idf: '>=4.4'
1215
cmake_utilities: "0.*"

components/sensors/humiture/mvh3004d/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# ChangeLog
22

3+
## v0.2.0 - 2024-12-19
4+
5+
### Enhancements:
6+
7+
* Update the method of driver registration to the `sensor_hub`
8+
39
## v0.1.0 - 2024-11-5
410

511
### Enhancements:

0 commit comments

Comments
 (0)