3180 Commits

Author SHA1 Message Date
NonPIayerCharacter
72933dda39 Pass animations to HA (#1972) 2026-02-03 21:26:52 +01:00
NonPIayerCharacter
e500ac88b4 LTR-303 driver (#1970)
* LTR-303 driver

* Forgot discovery

---------

Co-authored-by: openshwprojects <85486843+openshwprojects@users.noreply.github.com>
2026-02-03 20:40:59 +01:00
NonPIayerCharacter
aeafcb0863 LN882H ADC (#1963)
* LN882H ADC

* Unify 882H and 8825 main. 8825 adc

* fix

* disable adc reinit on 8825

* allow log port change, basic uart, disable berry

* Use UART2 instead of UART0, and allow changing UART pins

* fix

* tr6260 pwm duty 0

* import from tuya

---------

Co-authored-by: openshwprojects <85486843+openshwprojects@users.noreply.github.com>
2026-02-03 20:39:26 +01:00
NonPIayerCharacter
abcf19a498 W600/W800 SPI DMA (#1964) 2026-02-03 20:37:14 +01:00
Tester23
0c286136c7 fix rename 2026-01-29 17:36:32 +01:00
Tester23
f6efba1965 Rename to fix build? 2026-01-29 17:27:34 +01:00
Tester23
e9148081ce fix SSD1306_Cmd_Rect 2026-01-29 01:34:36 +01:00
openshwprojects
43e3540518 SSD1306 tiny I2C display driver
* TEST

* t1

* faster

* Update drv_ssd1306.c

* mk

* Update drv_ssd1306.c

* test

* Update drv_ssd1306.c

* Update drv_ssd1306.c

* Update drv_ssd1306.c

* fx

* test

* Update drv_ssd1306.c

* cmds

* fx

* q

* goto

* Update drv_ssd1306.c

* finish

* rev
2026-01-29 01:12:04 +01:00
Tester23
f0c275a03c Test_TuyaMCU_TH08 sample 2026-01-28 00:00:31 +01:00
Tester23
908b873dd6 tab in sendhex fix 2026-01-28 00:00:21 +01:00
NonPIayerCharacter
17dbe1e44b ESP8266 changes + LN882H sdk update (#1955) 2026-01-26 10:03:21 +01:00
openshwprojects
a06a91d438 add Pulldown Roles (#1954)
* pds

* test

* fix

* one more

* Update selftest_buttonEvents.c
2026-01-23 23:00:17 +01:00
MaxineMuster
ff0941016b Pinalias as arg (#1948)
* Add int HAL_PIN_Find(const char *name) for all platforms
add simple selftest (and added some alias strings to windows pins)

* fix ESP

* fix second occurence of isdigit for ESP by casting to unsigned char

* Moved code for HAL_PIN_Find to "src/hal/generic/hal_pins_generic.c" and removed it from the (few) platforms aleady implemented it.
Added some "complex" pin alias descriptions for windows to test

made function case insensitive - introducing "char *wal_stristr(const char *haystack, const char *needle);" as a case insensitiver version of "strstr" in new_common.c

* Try fix windows (by including src\hal\generic\hal_pins_generic.c)
Enable ENABLE_TEST_COMMANDS for all platforms to do some testing

* comment out weak functions for Windows

* including "../hal/hal_pins.h" in cmd_test.c to clear warning about HAL_PIN_Find()

* comment out StackOverflow test for ESP - it won't compile

* fix

* Moved code from hal_pins_generic.c to new_pins.c
reverted usage of hal_pins_generic.c in Windows build
changed Tokenizer_GetPin()

* Changed driver commands to use Tokenizer_GetPin() instead of Tokenizer_GetArgIntegerDefault() to get drivers pins

* Fix typo in drv_pinMutex.c

* Fix cmd_test.c and ds1820_full.c
Added debug output to Tokenizer_GetPin()

* Removed tesing and debugging code

* Also allow pin alias in SetPinRole command

* Fix typo
2026-01-20 14:38:40 +01:00
NonPIayerCharacter
eee7ac2f8e LN8825B (#1946)
* LN8825B

* update

* powersave

* pwm fix

* pwm/ir

* release
2026-01-20 01:13:10 +01:00
openshwprojects
1530d9f4a7 string security 1 (#1935)
* string security 1

* fx

* next
2026-01-15 13:08:52 +01:00
NonPIayerCharacter
7fcfe795e4 Extra power save feature (#1943)
* extra power save feature

* update

* fix w800 powersave
2026-01-15 09:55:26 +01:00
NonPIayerCharacter
acf0807423 7231n/7238 battery variants (#1940)
* 7231n/7238 battery variants

* update
2026-01-15 09:50:33 +01:00
Bart Staal
9ca9a5022f Make soft I2C clock frequency configurable (#1928)
* Remove duplicate definition of SM2135_DELAY

This macro is also defined in drv_local.h. Only user of
drv_sm2235.h is drv_sm2235.c, which also included drv_local.h.

* Add command to configure clock period for soft I2C

Default setting of 4 seems to fast for a SM2185N controller.

* Rework to reduce flash usage
2026-01-09 11:06:15 +01:00
Tester23
64f5e8b31d docs 2026-01-08 01:18:36 +01:00
Tester23
5f840a6181 docs for Counter 2026-01-08 01:04:22 +01:00
Tester23
2af77d9a91 tuyamcu fix whitespace that was breaking docs gen 2026-01-08 00:36:11 +01:00
Tester23
a6018e8406 self test - variable as led count (testing for Elektroda user) 2026-01-07 23:12:59 +01:00
openshwprojects
0a1e7fff25 Energy cnt reset self test (#1938)
* test

* fx
2026-01-07 20:50:18 +01:00
openshwprojects
4f4af7347c resend LED driver currents on currents change (do not wait for colors change) (#1932)
* test

* add missing
2026-01-07 15:43:11 +01:00
openshwprojects
61c546f321 fx special char in full name (#1934)
* Update selftest_hass_discovery.c

* test special name

* fxes

* fixes

* substr

* fx
2026-01-06 23:18:46 +01:00
NonPIayerCharacter
fc311e8251 Fix BK7238 power metering (#1930) 2026-01-06 11:47:24 +01:00
giedriuslt
f55e7881f3 Fix bl602 crashing trying to publish NaN (#1925)
* Fix bl602 crashing trying to publish NaN

* Fix bl602 crashing trying to publish NaN
2026-01-05 21:15:09 +01:00
Tester23
7a547c9c48 self test for user case with conditional in change handler 2026-01-04 18:23:09 +01:00
Tester23
9933547c98 Merge branch 'main' of https://github.com/openshwprojects/OpenBK7231T_App 2025-12-29 21:03:33 +01:00
protectivedad
7c79454413 TuyaMCU: Add version 3 data units support (#1914)
* TuyaMCU: Update for version 3 battery powered sensors

- Added support for report status record types
- Added TuyaMCU_PowerSave command

* TuyaMCU: Rename command

- Renamed command from tuyaMcu_powerSave to tuyaMcu_batteryPoweredMode

---------

Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2025-12-28 18:28:08 +01:00
Tester23
5eb375c3a4 http get - add cmd to run on done 2025-12-28 12:49:52 +01:00
MaxineMuster
54d5ae7e16 Driver for NEO6M GPS module (#1890)
* Driver vor NEO6m GPS receiver
Tested on W800

* Some tweaks:
empty RX buffer betewwn readings
on several unsuccessful reads, try enabling the NMEA RMC messages again

* empty buffer every second
remove commented out old code

* fix broken log if no lat/long NS or EW is present

* Add "savecfg" argument to save config to NEO after configuring - so next time we might use it without sending commands to NEO module
this way, only NEOs Tx is needed (and OpenBekens Rx)

---------

Co-authored-by: openshwprojects <85486843+openshwprojects@users.noreply.github.com>
2025-12-21 12:30:01 +01:00
divadiow
745d689a4e update docs (#1905)
* Update new_pins.h

* update docs
2025-12-18 00:20:25 +01:00
divadiow
3380b7c759 Hide channel selector for RCRecv pin roles (#1904)
* hide rcrecv channel

* descr
2025-12-17 21:22:43 +01:00
openshwprojects
ee25464c26 RF driver (receiver RF directly with SYN590R or similar)
* test

* T

* T

* W

* Update RCSwitch.cpp

* t

* w

* Update RCSwitch.h

* Update RCSwitch.cpp

* w

* ww

* Update RCSwitch.cpp

* t

* ttt

* test

* dbg

* Update RCSwitch.cpp

* Update RCSwitch.cpp

* ww

* Update drv_rc.cpp

* c

* Update RCSwitch.h

* make

* fix

* Update drv_rc.cpp

* wwww

* wwwwwwwwwww

* Update drv_rc.cpp

* fix

* dsfsdsd

* IOR_RCRecv

* Update RCSwitch.cpp

* test

* ffffffffffffx

* sds

* try

* fx

* tttttttt

* fixes

* fx

* hold

* hide debug vars
2025-12-15 19:56:10 +01:00
NonPIayerCharacter
cf0bcf2ea4 Fix ADC mappings (#1887) 2025-12-09 09:05:46 +01:00
MaxineMuster
3f93828622 Update getcommands.js, some minor doc-fixes (#1884)
updated documentation
2025-12-05 18:56:16 +01:00
MaxineMuster
a34f90bcbb DS3231 RTC driver embedded in "local clock" (PR#1729) (#1792)
* Try NTP split update to actual source

* fix windows makefiles and timed_events

* fix typo

* Fix sprintf format

* sprintf format - next try to fix for ESP and ESP8266

* sprintf - special case for ESP8266

* Adding GUI button to set clock

* fix

* Add debug output

* fix missing HTTP output
use original obk_config.h - only renaming functions - to see filesizes

* limit functions to NTP ode CLOCK present

* try fix selftests

* Enable simple clock for all platforms, even if NTP is not enabled

* test fixing merge-conflict

* try fixing merge conflicts #1

* try fix merge conflict

* Fix typos
consolidate time display on main page
fix double comments preventing several documentation details ($mday, $month ...) on docs/constants.md
enabling more time stuff for W800 for local testing.

* Fix setDST argument passing

* only test DST if clock is running

* Fix setting epoch time - use atol(<string arg>) instead of Tokenizer_GetArgInteger(0) for epoch
Change user_main.c to use xticks as uptime for g_secondsElapsed

* Fix g_secondsElapesd for Windows - no xTicks there so stick to old way with g_secondsElapesd++ here ...

* Fix simulator build
remove additional defines for W800 used for testing

* Use esp_timer_get_time() instead of xTicks for ESP.
Seems much better, 30 seconds difference in one day
(used to be over 10 minutes off in 12 hours)

* Include DS3231 code

* Include DS3231 RTC driver

* Try simple fix for TXW81X without RTOS

* Second try fix TXW81X

* Fix comments for doc

* fix obk_config (still using "#define ENABLE_NTP_SUNRISE_SUNSET" instead of new "#define ENABLE_CLOCK_SUNRISE_SUNSET")
fix RDA5981
(as already done in branch Split_NTP_new)

* fix deviceclock code for corrected #define

* enable DS3231 driver for all platforms to test compilation and compare sizes

* fix selftest DST and sunrise/sunset (command names are "CLOCK_..." not "NTP...")

* Fix selftest for DST and sunset/sunrise events

* Add debug to try fixing selftest issue

* more debug

* Disable bedug output after fix.

* Disable DS3231 for all platforms. To tes, use previous commit

* Fix comments and handling of year when setting time of DS3231
Switch to internal time functions to reduce flash usage (avoid gmtime and mktime)

* Fix direct acces of NTP-time via g_ntpTime - use function "Clock_GetCurrentTime()"
switch to obktime instead of time.h "gmtime"

* Fix missing include for deviceclock and obktime

* made ds3231 driver dependent on "#define ENABLE_DRIVER_DS3231"
change "deviceclock.c" to set DS3231 RTC on every clock set command if driver is running, so e.g. every NTP update will also adjust RTC time

* fix missing includes for DRV_IsRunning() and DS3231_SetEpoch()

* introducing DS3231_informClockWasSet(bool force) - called by drv_deviceclock whenever clock is set.
so DS3231 driver can ste the clock, if needed - using "force" will force setting (no supprise ;-))

* Fixes to drv_main.c (missing args for onHassDiscovery)
Fixed missing arg "bPreState" in XX_AppendInformationToHTTPIndexPage()
Changed name from CLOCK to TIME
changed some "gmtime" to obktime "calculateComponents()a

* fixes

* fix obk_config.h

* fix missing include

* fix include for drv_txw81x_camera.c

* Directly call TIME "driver" functions, but don't use as real driver - so hiding it's presence in GUI

* fix missing OnEverySecond for TIME

* Prepare for merge: disable DS3231 driver for all platforms

* fix broken obk_config.h

* revert unintended change of src/driver/drv_max72xx_single.c
2025-12-04 14:46:51 +01:00
MaxineMuster
a23e4183c2 Fix missing "onHassDiscovery" and "XX_AppendInformationToHTTPIndexPage()" (#1877)
* Fix missing "onHassDiscovery" and "XX_AppendInformationToHTTPIndexPage()"

Fixes to drv_main.c (some missing args for "onHassDiscovery") - changed format to have one line per argument and driver
Fixed missing arg "bPreState" in some XX_AppendInformationToHTTPIndexPage() functions

* fix getcommands for new structure of drv_main.c (commands may be mutliple lines long)

* Make comments for "duplicate" drivers more readble

* Fix sourcefiles for documentation done with getcommands.js
Mainly missing comments or comments "contradicted" by function calls

* fixed one missed comment

* Fix path in descriprion command
make getcommands.js testing duplicates for content
 - if content (=documentation) is equal, show that ist potentially safe to ignore
2025-12-03 16:01:28 +01:00
openshwprojects
2898d57ed5 added vars: - $mqtt_client - $shortName - $name
* exp

* fix

* Update cmd_tasmota.c
2025-12-03 09:59:37 +01:00
Tester23
3f8677f110 Merge branch 'main' of https://github.com/openshwprojects/OpenBK7231T_App 2025-11-30 21:16:01 +01:00
Tester23
4ced41bf4c on ha discovery event 2025-11-30 20:26:22 +01:00
openshwprojects
30c8fc1a93 TCL AC - gen setting (reported as working by user) 2025-11-26 22:57:33 +01:00
Tester23
0d8a6054c0 fx 2025-11-25 19:03:04 +01:00
Tester23
a0a5e7a513 fx 2025-11-25 19:02:57 +01:00
Tester23
deb6c7352a led_dimmerScale command so you can reduce LED heating but still hide it from HA/UI (it reduces brightnerss at 100% UI 2025-11-25 18:16:14 +01:00
Tester23
22daaeb07e sm2235 add currents 2025-11-25 15:59:14 +01:00
Tester23
db211a0429 garage cover entity discovery - just impl, not called anywhere 2025-11-25 15:58:26 +01:00
NonPIayerCharacter
35fca72376 esp8266 optimize + idle hooks (#1869) 2025-11-23 14:47:39 +01:00
openshwprojects
e9e20ed445 esp8266 ADC, EEPROM driver, max7219 simulator
* test

* Update workflow.yaml

* t

* makes

* Update drv_simpleEEPROM.c

* Update drv_simpleEEPROM.c

* ber

* Update workflow.yaml

* tt

* ber

* charts

* owm

* tt

* rem charts

* smaller

* test

* test

* fixes

* test

* charts

* comments

* test

* tt

* test

* add file to proj

* try to add pin 13 as ADC (testing in progress)

* test

* test

* MAX7219 simulator HACK

* final fixes

* Update drv_max72xx_internal.c

* restore

* fx
2025-11-23 14:01:04 +01:00