91 uint32_t interrupts_a = 0;
92 uint32_t interrupts_b = 0;
105 ADE_PUBLISH(power_factor_a, (int16_t) val_16, (0x7FFF / 100.0f));
107 ADE_PUBLISH(power_factor_b, (int16_t) val_16, (0x7FFF / 100.0f));
109 float pf = ADE_POWER_FACTOR;
111 const uint32_t now =
millis();
113 this->last_update_ = now;
115 pf = ADE_WATTSEC_POWER_FACTOR * (diff < 10 ? 10 : diff) / 1000;
116 ESP_LOGVV(TAG,
"ADE7953::update() diff=%" PRIu32
" pf=%f", diff, pf);
122 ADE_PUBLISH(apparent_power_a, (int32_t)
val, pf);
124 ADE_PUBLISH(apparent_power_b, (int32_t)
val, pf);
129 ADE_PUBLISH(active_power_a, (int32_t)
val, pf);
131 ADE_PUBLISH(active_power_b, (int32_t)
val, pf);
136 ADE_PUBLISH(reactive_power_a, (int32_t)
val, pf);
138 ADE_PUBLISH(reactive_power_b, (int32_t)
val, pf);
142 ADE_PUBLISH(current_a, (uint32_t)
val, 100000.0f);
144 ADE_PUBLISH(current_b, (uint32_t)
val, 100000.0f);
148 ADE_PUBLISH(voltage, (uint32_t)
val, 26000.0f);
152 ADE_PUBLISH(
frequency, 223750.0f, 1 + val_16);