-
1.0.0 Stable
released this
2025-09-13 11:00:56 +02:00 | 0 commits to main since this release🚀 Highlights
- Added single-channel and multi-channel modes with ready-to-use examples.
- Introduced run limit support with NVS persistence.
- Modularized listener notification system with queue-based dispatch.
- Improved tilt handling: fixed STOP/REVERSE issues, added upper limit checks.
- Enhanced NVS module with background task for async writes and better flash wear management.
- Added new public APIs:
relay_chn_tilt_get_default_sensitivityrelay_chn_state_to_str*_alland*_all_withfunctions
- Optimized event loop, timer callbacks, and memory usage.
- Expanded and refactored unit tests for higher coverage.
⚠️ Breaking Changes
- Config parameters: All renamed to their original
CONFIG_*form. - Run limit API:
time_sec→limit_sec. - Channel selection:
RELAY_CHN_ID_ALLreplaced with new*_allfunctions. - State string API:
relay_chn_state_strrenamed torelay_chn_state_to_strand made public. - STOP & TILT logic: behavior updated — STOP no longer issued when idle; STOP/TILT validated and prioritized.
- NVS operations: now handled asynchronously in a background task.
📖 Migration Guide
- Update configs to use
CONFIG_*parameters. - Replace old API usage (
time_sec,RELAY_CHN_ID_ALL,relay_chn_state_str) with new equivalents. - Review application STOP/TILT handling — logic may differ.
- Adapt listener handling to the new notification module.
- If relying on synchronous NVS writes, adjust for async model.
Downloads
-
0.5.0 Stable
released this
2025-07-23 17:01:50 +02:00 | 79 commits to main since this releaseSwitched to ESP component based project tree structure, fixed some bugs and added more unit tests to cover more code.
The project tree structure has been reorganised to align with Espressif's patterns. Test cases have been categorised for better maintainability and modularity, and more test cases have been implemented to prepare for automated testing in CI/CD pipelines.
The one large test file (test_relay_chn.c) has broken down into categories each category having its own test file. A utility shell script has also been implemented for building tests and testing in qemu. add more tests to increase coverage and break down tests into categories.
All related tickets for this PR:
- Added more unit tests - refs #1030.
- Switched to Espressif's project tree based structure - refs #1033
- Fixed
RELAY_CHN_ID_ALLissue inget_state*functions - refs #1037 - Implemented missing destroy function - refs #1048
- Fixed listener memory allocation bug - refs #1049
- Fixed missing
NULLhandling inrelay_chn_create- refs #1050 - Added test cases for direction flipping - refs #1051
- Added test cases for
RELAY_CHN_ID_ALL- refs #1052 - Broke down test cases into categories - refs #1054
- Added missing test cases for tilt API - refs #1056
- Fixed imbalanced tilt count control logic - refs #1057
Downloads
-
0.3.2 Stable
released this
2025-04-03 15:31:53 +02:00 | 115 commits to main since this releaseSmall bug fixes.
Downloads
-
relay_chn v0.3.1 Stable
released this
2025-03-21 15:11:21 +01:00 | 117 commits to main since this releaseDownloads
-
relay_chn v0.3.0 Stable
released this
2025-03-03 11:58:25 +01:00 | -1 commits to release-0.3.0 since this releaseWhat's Changed
- Improved tilting algorithm and code structure. See commit
0e68c1f627for more info. - Added reverse tilting capability with limit. See commit
46f7c28829for more info. - Fixed a bug in the sensitvity setter and getter functions.
- Fixed unclosed code fence in the README file.
- Fixed #17
- Fixed #18
Downloads
- Improved tilting algorithm and code structure. See commit
-
relay_chn v0.2.1 Stable
released this
2025-02-22 09:31:20 +01:00 | 128 commits to main since this releaseThis release contains fixes for the following issues:
Downloads
-
relay_chn v0.1.1 Stable
released this
2025-02-21 15:59:13 +01:00 | 0 commits to v0.1 since this releaseMany bug fixes and improvements.
This version features only basic relay channel driving such as; forward, reverse and stop.
Downloads
-
relay_chn v0.2.0 Stable
released this
2025-02-21 12:50:32 +01:00 | 134 commits to main since this release-
Add tilt feature.
-
Fix the following bugs:
- warning: comparison is always true due to limited range of data type.
- Remove unnecessary esp_timer checks.
- The scheduled FREE command disrupts the current command.
- Fatal pin mapping issue.
-
Make code optimizations and improvements:
- Optimize event loop queue size depending on channel count.
- Change the channels' starting state to FREE.
- Remove the unnecessary relay_chn_invalidate_inertia_timer function.
- Change the relay_chn_start_inertia_timer function as relay_chn_start_esp_timer_once and modify the function so that it be a generic esp timer start function.
- Optimize the if statement that checks the last run cmd in the relay_chn_execute_stop.
-
Fixes #1
-
Fixes #3
-
Fixes #4
-
Fixes #5
-
Closes #2
Downloads
-
-
relay_chn v0.1.0 Stable
released this
2025-02-14 15:10:09 +01:00 | 137 commits to main since this releaseFeatures
- Controls multiple relay channel pairs (up to 8 channels)
- Built-in direction change inertia protection
- Automatic command sequencing and timing
- Event-driven architecture for reliable operation
- Forward/Reverse direction control
- Direction flipping capability
- State monitoring and reporting
Downloads