Skip to content

Commit 885a0ca

Browse files
MiaojianyuYuanMingfu-star
authored andcommitted
feat: add component for power metering chip
1 parent f5ca5b5 commit 885a0ca

34 files changed

+1857
-0
lines changed

.github/workflows/upload_component.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ jobs:
6363
components/motor/esp_simplefoc;
6464
components/motor/servo;
6565
components/openai;
66+
components/sensors/power_measure;
6667
components/sensors/gesture/apds9960;
6768
components/sensors/humiture/aht20;
6869
components/sensors/humiture/hdc2010;

.gitlab/ci/build.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -463,6 +463,14 @@ build_example_get_started_knob_power_save:
463463
variables:
464464
EXAMPLE_DIR: examples/get-started/knob_power_save
465465

466+
build_example_sensors_power_measure:
467+
extends:
468+
- .build_examples_template
469+
- .rules:build:example_sensors_power_measure
470+
- .build_idf_active_release_version
471+
variables:
472+
EXAMPLE_DIR: examples/sensors/power_measure
473+
466474
build_example_gprof_gprof_simple:
467475
extends:
468476
- .build_examples_template
@@ -1221,6 +1229,17 @@ build_components_openai_test_apps:
12211229
variables:
12221230
EXAMPLE_DIR: components/openai/test_apps
12231231

1232+
build_components_sensors_power_measure_test_apps:
1233+
extends:
1234+
- .build_examples_template
1235+
- .rules:build:components_sensors_power_measure_test_apps
1236+
parallel:
1237+
matrix:
1238+
- IMAGE: espressif/idf:release-v5.0
1239+
- IMAGE: espressif/idf:release-v4.4
1240+
variables:
1241+
EXAMPLE_DIR: components/sensors/power_measure/test_apps
1242+
12241243
build_components_sensors_gesture_apds9960_test_apps:
12251244
extends:
12261245
- .build_examples_template

.gitlab/ci/rules.yml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,10 @@
197197
- "components/openai/**/*"
198198
- "tools/cmake_utilities/package_manager.cmake"
199199

200+
.patterns-components_sensors_power_measure: &patterns-components_sensors_power_measure
201+
- "components/sensors/power_measure/**/*"
202+
- "components/tools/cmake_utilities/package_manager.cmake"
203+
200204
.patterns-components_sensors_gesture_apds9960: &patterns-components_sensors_gesture_apds9960
201205
- "components/sensors/gesture/apds9960/**/*"
202206
- "tools/cmake_utilities/package_manager.cmake"
@@ -516,6 +520,9 @@
516520
.patterns-example_sensors_ntc_temperature_sensor: &patterns-example_sensors_ntc_temperature_sensor
517521
- "examples/sensors/ntc_temperature_sensor/**/*"
518522

523+
.patterns-example_sensors_power_measure: &patterns-example_sensors_power_measure
524+
- "examples/sensors/power_measure/**/*"
525+
519526
.patterns-example_usb_device_usb_uart_bridge: &patterns-example_usb_device_usb_uart_bridge
520527
- "examples/usb/device/usb_uart_bridge/**/*"
521528

@@ -956,6 +963,15 @@
956963
- <<: *if-dev-push
957964
changes: *patterns-example_get_started_knob_power_save
958965

966+
.rules:build:example_sensors_power_measure:
967+
rules:
968+
- <<: *if-protected
969+
- <<: *if-label-build
970+
- <<: *if-dev-push
971+
changes: *patterns-components_sensors_power_measure
972+
- <<: *if-dev-push
973+
changes: *patterns-example_sensors_power_measure
974+
959975
.rules:build:example_gprof_gprof_simple:
960976
rules:
961977
- <<: *if-protected
@@ -1541,6 +1557,17 @@
15411557
- <<: *if-dev-push
15421558
changes: *patterns-components_button
15431559

1560+
.rules:build:components_sensors_power_measure_test_apps:
1561+
rules:
1562+
- <<: *if-protected
1563+
- <<: *if-label-build
1564+
- <<: *if-label-target_test
1565+
- <<: *if-trigger-job
1566+
- <<: *if-dev-push
1567+
changes: *patterns-build_system
1568+
- <<: *if-dev-push
1569+
changes: *patterns-components_sensors_power_measure
1570+
15441571
.rules:build:components_display_digital_tube_ch450_test:
15451572
rules:
15461573
- <<: *if-protected

.gitlab/ci/target_test.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,29 @@ components_test_openai:
311311
TEST_TARGET: esp32s3
312312
TEST_FOLDER: components/openai
313313

314+
components_test_power_measure:
315+
extends:
316+
- .pytest_template
317+
- .rules:build:components_sensors_power_measure_test_apps
318+
needs:
319+
- job: "build_components_sensors_power_measure_test_apps"
320+
artifacts: true
321+
optional: false
322+
parallel:
323+
matrix:
324+
- IDF_TARGET: esp32c3
325+
IDF_VERSION: "4.4"
326+
- IDF_TARGET: esp32c3
327+
IDF_VERSION: "5.0"
328+
tags:
329+
- esp32c3
330+
- generic
331+
image: $DOCKER_TARGET_TEST_v5_1_ENV_IMAGE
332+
variables:
333+
TEST_TARGET: esp32c3
334+
TEST_FOLDER: components/sensors/power_measure
335+
TEST_ENV: generic
336+
314337
components_test_esp_lcd_axs15231b:
315338
extends:
316339
- .pytest_template

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@ The registered components in ESP-IoT-Solution are listed below:
116116
| [mvh3004d](https://components.espressif.com/components/espressif/mvh3004d) | [![Component Registry](https://components.espressif.com/components/espressif/mvh3004d/badge.svg)](https://components.espressif.com/components/espressif/mvh3004d) |
117117
| [ntc_driver](https://components.espressif.com/components/espressif/ntc_driver) | [![Component Registry](https://components.espressif.com/components/espressif/ntc_driver/badge.svg)](https://components.espressif.com/components/espressif/ntc_driver) |
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) |
119+
| [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) |
119120
| [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) |
120121
| [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) |
121122
| [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) |

README_CN.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@ ESP-IoT-Solution 中注册的组件如下:
116116
| [mvh3004d](https://components.espressif.com/components/espressif/mvh3004d) | [![Component Registry](https://components.espressif.com/components/espressif/mvh3004d/badge.svg)](https://components.espressif.com/components/espressif/mvh3004d) |
117117
| [ntc_driver](https://components.espressif.com/components/espressif/ntc_driver) | [![Component Registry](https://components.espressif.com/components/espressif/ntc_driver/badge.svg)](https://components.espressif.com/components/espressif/ntc_driver) |
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) |
119+
| [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) |
119120
| [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) |
120121
| [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) |
121122
| [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) |

components/.build-rules.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@ components/knob/test_apps:
3838
enable:
3939
- if: INCLUDE_DEFAULT == 1
4040

41+
components/sensors/power_measure/test_apps:
42+
enable:
43+
- if: INCLUDE_DEFAULT == 1
44+
4145
components/led/led_indicator/test_apps:
4246
enable:
4347
- if: INCLUDE_DEFAULT == 1
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
## v0.1.0 - 2024-11-5
2+
3+
### Enhancements:
4+
5+
* Initial version
6+
* Support BL0937 chip to measure voltage, current, energy
7+
8+
## v0.1.1 - 2024-12-10
9+
10+
### Enhancements:
11+
12+
* Modified the formatting of the document
13+
* Added more detailed documentation
14+
* Optimised some code
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
idf_component_register(SRC_DIRS "."
2+
INCLUDE_DIRS "include"
3+
PRIV_INCLUDE_DIRS "priv_include"
4+
REQUIRES esp_timer driver esp_event
5+
)
6+
7+
include(package_manager)
8+
cu_pkg_define_version(${CMAKE_CURRENT_LIST_DIR})
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
menu "power_measure"
2+
config BL0937_IRAM_OPTIMIZED
3+
bool "Enable IRAM optimization for BL0937"
4+
default n
5+
help
6+
Enable IRAM optimization for BL0937
7+
endmenu

0 commit comments

Comments
 (0)