Skip to content
New issue

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

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

Already on GitHub? # 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 <baars@klinikum-brandenburg.de>

* 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 <baars@klinikum-brandenburg.de>
Co-authored-by: Christian Baars <Baars@gmx.de>

* 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 <baars@klinikum-brandenburg.de>
Co-authored-by: Christian Baars <Baars@gmx.de>

---------

Co-authored-by: Paul Blacknell <blacknell@users.noreply.github.com>
Co-authored-by: Christian Baars <baars@klinikum-brandenburg.de>
Co-authored-by: Дилян Палаузов <dpa-github@aegee.org>
Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
Co-authored-by: SteWers <42718143+SteWers@users.noreply.github.com>
Co-authored-by: paulusbrand <75862178+paulusbrand@users.noreply.github.com>
Co-authored-by: Martin <79449686+marsman7@users.noreply.github.com>
Co-authored-by: Christian Baars <Baars@gmx.de>
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants