Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Little help required on PFC8574 implementation #363

Closed
stefanbode opened this issue Apr 19, 2017 · 1 comment
Closed

Little help required on PFC8574 implementation #363

stefanbode opened this issue Apr 19, 2017 · 1 comment

Comments

@stefanbode
Copy link
Contributor

Hi experts,

I'm just far in adding support for the I2C DIO module to Sonoff-Tasmoto. Some questions are open to getting it initally released in my fork.

  • The power state seems to be binary-coded into "power" copied from sysCfg.power. This limits it to max 8 relays because the type is uint8_t. (Correct YES/NO?) To avoid major changes the PFC addOn will not support more than 8 relays in total.
  • There is a syntax quite often used with ? and : like "digitalWrite(pin[GPIO_REL1 +i], rel_inverted[i] ? !state : state);" Can someone explain how this is working. Never seen before.
  • Where in the code after booting the relays will be initialized and set? I assume. sonoff.ino ~line 2200 with "if (sysCfg.savestate) setRelay(power);" depending on poweronstate
@davidelang
Copy link
Collaborator

davidelang commented Apr 19, 2017 via email

Jason2866 added a commit that referenced this issue Aug 16, 2023
* Improvements to thermostat debug output (#19279)

* add: update DEBUG_THERMOSTAT to only control the virtual switch

Also, debug output is still generated but end user can control this debug level 3

* add: debug output of main controller parameters when thermostat enabled

Also, add units for debug outputs added to make them more intelligible

* Update xdrv_39_thermostat.ino

* add: debug message when sensor is detected as not alive

fix: display thermostat number in debug messages

* add: log message prefix string for thermostat

* Update xdrv_39_thermostat.ino

fix: typos in comments
add: debug messages

* add: debug prefix for thermostat

* add: debug prefix added to output lines

* fix: comment typos and small grammatical changes for clarity

* add: debug prefix 'THE' added to debug output

* add section safeboot_flags in platform_tasmota32.ini (#19281)

This will make it easier to ignore a bunch of libraries in order to speed up builds without polluting the ENV sections too much.

Usage:
[env:my_safeboot_env]
lib_ignore              = ${safeboot_flags.lib_ignore}

* use common safeboot flags (#19282)

* fix IRAM_ATTR specified both in function declaration and definition (#19286)

* Improvements to PID controller driver (#19285)

* add: update DEBUG_THERMOSTAT to only control the virtual switch

Also, debug output is still generated but end user can control this debug level 3

* add: debug output of main controller parameters when thermostat enabled

Also, add units for debug outputs added to make them more intelligible

* Update xdrv_39_thermostat.ino

* add: debug message when sensor is detected as not alive

fix: display thermostat number in debug messages

* add: log message prefix string for thermostat

* Update xdrv_39_thermostat.ino

fix: typos in comments
add: debug messages

* add: debug prefix for thermostat

* add: debug prefix added to output lines

* fix: comment typos and small grammatical changes for clarity

* add: debug prefix 'THE' added to debug output

* add:  display PID status and key info on web output

* fix: remove extraneous comments that included unused code fragments

* add: local sensor handling improvements

add: define a local sensor name
add: define the local sensor measurement parameter
add: limit sensor not seen error message to every 60 seconds to avoid flooding the logs
add: include interval since which sensor data was last updated
fix: properly update the maximum interval time so missing sensor data is properly alerted

* Update xdrv_49_pid.ino

* Typo architceture → architecture (#19288)

* avoid unnecessary compiling of specific libraries in lib32_div for most builds (#19293)

* ESP32: pass flashmode at build time to macro definition (#19299)

* pass flashmode at build time to macro definition

* fix 8266 builds

* fix: properly detect device is offline after maximum misses reached (#19298)

* Update changelogs

* [DS18x20] Enhance use of aliases (#19026)

* [DS18x20] Enhance use of aliases

`defineDS18x20_USE_ID_AS_NAME`:
Always show part of the address, even for one sensor
`#define DS18x20_USE_ID_ALIAS`:
The command `DS18Alias` can now be use with alphanumeric aliases, which replace the sensor name

* [DS18x20] change to calloc()

* fix OneWire for IDF5.1 and C2/C6 (#19303)

* fix OneWire for IDF5.1 and C2/C6

* Use Onewire in arduino30 builds

* use SOC specific defines for C2,C3 and C6

* Removes software based no load threshold. (#19302)

Lowers ADE7953 builtin no load detection threshold to be able to measure 5 watt power levels.

* Update changelogs

* Creates a place to put the customer boards (#19309)

* Add commands to allow setting of timeprop parameters (#19310)

* add: commands to set timeprop settings

* Update my_user_config.h

* fix: properly generated json response to commands

* Sync dev with release v13.1

* Update platformio_tasmota32.ini (#19313)

* add: shutdown command for PID controller (#19318)

* C6 and C2 support (#363)

* Initial C6 support

* add C6 in tasmota_globals.h

* fix copy&paste errors

* Use updated platform (build 1481)

* use common safeboot flags (#19282) (#352)

Co-authored-by: Christian Baars <[email protected]>

* use env var lib_ignore

* safeboot lib_ignore env

* revert wrong change

* rm eink lib from standard used libs

* add c2-board 4M, maximum_size probably a bit off

* diffuse idea for 2MB with OTA and FS

* C2 and C6 additions

* C2 and C6 additions for commands.ino

* C2 and C6 additions for crash recorder

* C2 to support_esp

* some preps for C2

* add c2 to tasmota.h

* fix some typos and compile bugs

* fix 2 compiler warnings for Arduino 3.0

* fix another warning

* add correct pins to template

* pins for C2, maximum_size updated

* unclutter env:tasmota32c2-safeboot

* fix c6 env

* more pins for the C2, but not all

* pin 9 and 10 for c2/c6

* add ||

* prep pins for c6

* make c6 compile, needs testing

* fix copy-paste-error

* more correct pin support C6

* pin14 C6

* wrong warning for C6

* 10 and 11 are flash pins on the C6

* boolean voodoo

* fix EVERYTHING

* fix Onewire for Arduino 3.0

* enable OneWire

* finale fix for all platforms: OneWire.h

* better compatibility

* final fix onewire

* refactor Platformio Arduino 3.0 setup

* overlooked needed `;`

* refactor as requested

* fix NeoPixelBus compilation for C2 and C6

* fix Arduino30 for old working NeoPixel boards

* Try to switch of RMT LED when not SOC supported

* use latest IDF 5.1

* framework includes now "libsodium"

* prep NeoPixel RMT rewrite

* NeoPixel for C6

* fix Arduino 2.x

* really fix compile ??

* fix compiler warning TSL2591

* fix compiler warning TSL2591 _2

* fix compile warning TSL2561

* fix warning sensirion part 1

* fix ESP32 Arduino 3.0 compile (needs work check)

* Disable NeoPixel for C2 (no RMT support)

* forgotten to remove

* fix compiler warning

* prep 5.1, TasUpdater

* prep 5.1 SensirionRXFrame

* prep 5.1, SensiriomI2CCommunication.cpp

* prep5.1, last batch Sensirion

* prep5.1, silence compiler warning

* Silence C++ deprecated warning

* Align with branch C6-support (#359)

* prep5.1, fix berry_wire

* revert deprecated compiler flag

---------

Co-authored-by: Staars <[email protected]>
Co-authored-by: Christian Baars <[email protected]>

* add i2c #defines

* enable more libs for ESP32

* refactor for esp-nimble-cpp

* add esp-nimble-cpp, needed for C2,C6

* fix dual use of IRAM_ATTR for i2sDmaISR

* silence compiler warning with cast

* prep5.1, new DAC API in Berry

* more libs enabled

* NimBLE changes

* fix wrong build flag for MI

* add NimBLE ignores

* add MI to env

* use latest framework with changed NimBLE

* add libesp32_div to C2/C6

* fix env konfig for NimBLE

* new esp-cpp-nimble for all

---------

Co-authored-by: Christian Baars <[email protected]>
Co-authored-by: Christian Baars <[email protected]>

---------

Co-authored-by: Paul Blacknell <[email protected]>
Co-authored-by: Christian Baars <[email protected]>
Co-authored-by: Дилян Палаузов <[email protected]>
Co-authored-by: Theo Arends <[email protected]>
Co-authored-by: SteWers <[email protected]>
Co-authored-by: paulusbrand <[email protected]>
Co-authored-by: Martin <[email protected]>
Co-authored-by: Christian Baars <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants