Comments (5)
Yeah, I was just looking at the filter code and realizing that it only worked for full sensors, not binary sensors. Bummer.
I was going to try to plug in some automation that took action on motion detection, and was hoping to avoid as much noise as possible, but I can probably live with it for now.
from esphome-core.
I can't think of much use case for doing a lot of math on binary outputs either; for most of what I want with binaries the filters would just be used to suppress undesired changes to the value.
from esphome-core.
I mean I've used those sensors without any initial waiting period for quite a while without issues.
For the uptime filter: Honestly, it feels like quite a limited use case. It would be easy enough to add, but I think esphomelib already probably has too many filters - having this many just confuses people.
If you find another use case, or if you can convince me that this use-case is quite common, please do say so. In the meantime, this should work fine:
main.cpp
:
using namespace esphomelib;
class UptimeFilter : public sensor::Filter {
public:
UptimeFilter(uint32_t uptime) : uptime_(uptime) {}
optional<float> new_value(float value) override {
if (millis() >= uptime_)
return value;
return {};
}
uint32_t uptime_;
};
void setup() {
// ...
// =========== AUTO GENERATED CODE END ============
pir_sensor.add_filter(new UptimeSensor(60*1000));
App.setup();
}
(assuming your PIR sensor is a sensor, not a binary sensor; filters for binary sensors do not exist yet, but will exist soon-ish)
from esphome-core.
Okay. Regarding binary sensor filters: Do you happen to know if there are popular filters apart from the basic "debounce" filter
I was going to make my life easy and just add that one filter (and potentially a "debounce-last" or whatever it's called), but now with this feature request I'm thinking if I should just create a full modular binary sensor filter engine like with the sensors.
from esphome-core.
Should be really easy now with the uptime sensor. A simple lambda filter should do the trick :)
from esphome-core.
Related Issues (20)
- Auto-load esphome component upon discovery by Home Assistant HOT 10
- esp32_ble_tracker scan_interval not used correctly HOT 1
- Firmware seems to have watchdog issues for esp32_ble_tracker HOT 1
- PMSx003 does not work
- MQ-2 Sensor. HOT 5
- [RGB Light Platform] Remember brightness and color after restart HOT 5
- Error in HA since 0.86 HOT 1
- DO NOT POST ISSUES HERE
- ESP32 goes to boot loops with option exrire_after HOT 1
- Error OTA update ESP8266 12e HOT 2
- MIC sensor, status fast change HOT 1
- esphomeyaml showing terminated process HOT 1
- esp32 access point not enabled HOT 1
- Update Failed: ERROR[8]: Flash config wrong real: 4194304 IDE: 16777216 HOT 1
- Returning NAN when using id.value HOT 1
- esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header HOT 1
- Ok, now I understand, so you want to have all three units show up as sensor at the same time. HOT 2
- witty cloud with LDR and RGB HOT 2
- Cannot connect to hidden SSID HOT 1
- ERROR Error binary size: Error: ESP has been flashed with wrong flash size. Please choose the correct 'board' option (esp01_1m always works) and then flash over USB. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esphome-core.