Commit Graph

4162 Commits

Author SHA1 Message Date
88c690b3af Update obk_config.h 2026-04-24 18:32:14 +02:00
1d174d6dbc Update XRs (#2081)
* Update XRs

* Fixes
1.18.287
2026-04-12 00:20:17 +02:00
fead9f0c4a Harden async HTTP client allocation failure handling and add fault-path self-tests (#2051)
* self-tests

* Update http_client.c

# Conflicts:
#	src/httpclient/http_client.c

* Update selftest_http_client.c

* Update selftest_http_client.c

* Update selftest_http_client.c
2026-04-12 00:16:47 +02:00
4362d8e674 fix plausible regression from d491a71a93, made avty disable global (#1985)
It's easier to reason about the change if we consider when the
availability topic is not added.
Originally that was when isSensor && flagavty, that is, when an entity
was considered to be a sensor and flag 35 was set.
After commit d491a71a93, it became isSensor || flagavty.
That is, (A) if flag 35 is set then all entities are stripped of the
availability topic and (B) even when the flag is not set, then any
entity considered to be a sensor would also be stripped of the topic.
I am confident that (A) was the intent and (B) is a bug.
So, we should simply check only flagavty.
1.18.286
2026-04-09 21:38:28 +02:00
6e47daf27e Fix BK7238 static ip (#2079) 1.18.285 2026-04-07 13:39:00 +02:00
0d15c28b4c Use custom GCC for beken sdk (#2069)
* Use custom GCC for beken sdk

* fix

* gcc 15.2

* 15.2 rtlc
1.18.284
2026-04-06 15:30:38 +02:00
8c5f356add Fix ListRepeatingEvents log (#2067)
* Cleanup string

* Fix listrepeatingevents log
1.18.283
2026-04-06 12:40:49 +02:00
9752eb7cc6 RTL8721DA BT Proxy (#2074) 2026-04-06 12:40:05 +02:00
2dbf906b98 Fix RTL8720D OTA (#2073) 2026-04-06 12:39:44 +02:00
4fa230197b BL616/BL602_ALT (#2066)
* BL616

* BL602_ALT

* Custom RTL8721DA UART pins

* commonize ota & disable builds in workflow

* small cleanup

* commonize wifi

* fixes
2026-04-04 20:18:46 +02:00
c1394cd653 Fix missing index check for Tokenizer_GetArg functions (#2058)
* Fix missing "safeguard" for invalid iargument index for
Tokenizer_GetArgIntegerRange()      need to agree an return value in this cas. I choosed range_Min
Tokenizer_GetArgInteger()
Tokenizer_GetArgFloat()

Added check for negative index to all TokenizerGetXX functions

Added selftest for these cases to selftest_tokenizer.c

Tried to fix selftest_tasmota.c - it relayed on the previous behavior to return a value from a prevoius "TokenizeString()" call

Examlpe of what was changed:

-       SIM_SendFakeMQTTAndRunSimFrame_CMND("CT", "");
+       SIM_SendFakeMQTTAndRunSimFrame_CMND("CT", "153");

(later 153 is used for "assert" in
        SELFTEST_ASSERT_JSON_VALUE_INTEGER(0, "CT", 153);
)

* revert modifications to tasmota selftests.
Safeguarding command in src/cmnds/cmd_newLEDDriver.c (reject calls with insufficient number of arguments)
Make "0" default "addMode" for "add_dimmer()"

* Add some more checks. Hopefully it's complete now
2026-04-04 13:38:31 +02:00
efd383a688 ESP IDF flash vars fix: save i32, longer channel names (#2065) 1.18.282 2026-03-31 19:58:35 +02:00
08080aec0a BL602 enable Bridge Driver (#2038) 1.18.281 2026-03-29 19:09:36 +02:00
bf5eaa56e2 Update drv_tuyaMCU.c (#2011)
zmiana ze 192 na256, void TuyaMCU_RunReceive() byte data[256]; ze względu na pojawiający sie log : Info:TuyaMCU:TuyaMCU packet too large, 204 > 192
2026-03-29 19:08:31 +02:00
3edb2618e6 fixed the bug (#2043) 2026-03-29 19:05:18 +02:00
6a04d820c0 Update logging.c (#2050) 1.18.280 2026-03-28 22:03:51 +01:00
68e3270d93 bl602 fv (#2053) 2026-03-28 22:01:13 +01:00
3f07a3017b Fix brittle self-tests and add missing coverage (#2039) 1.18.279 2026-03-24 00:36:55 +01:00
ccb267c111 Update new_pins.c (#2037) 1.18.278 2026-03-21 19:06:31 +01:00
96cdd10f47 Driver for DCF77 radio controlled clock (#1911)
* push driver for DCF77 to actual OBK code

* Chnged to new HAL IRQ API
Added missing "CHANGE" interrupt (rising and falling) for LN882H, W600/W800 and ESP (not yet tested)

Moved code from ISR to QuickTick funktion (else LN882H would crash)

Tested to work with

W800 ("CHANGE")
BL602 ("RISING" and "FALLING")
LN882H (both "CHANGE" and "RISING"/"FALLING" tested)

* fixed ESP (wrong formated comment

for testing at least compilation, added "#define ENABLE_DRIVER_DCF77	1" for more platforms ...

* disabled DCF77 driver for RDA5981 - no xticks code found

* Changed logic again, IRS will only save timestamp, all decoding is done in QuickTick function
No need for Rising/falling edge definition, driver ony searches for "bit" gaps (100 or 200 ms) and ignore the "in between" gap to the next bit.
Therefore no need to know, if rising or falling edge starts the bit.

* chagnge driver to get Pin from argument 1

* Disable driver in obk_config.h
2026-03-21 00:55:04 +01:00
7f257f1055 mDNS support for other platforms (#2018)
* mDNS support for other platforms

* add mDNS support for BK7238

* add mDNS support for W600

* add mDNS support for W800

* add mDNS support for BL602

* add mDNS support for ESP8266

* enable mDNS driver by default on ESP8266

* add mDNS support for ESP32 (ESP-IDF)

* add mDNS support for ESP32-C3 (ESP-IDF)

* add mDNS support for ESP32-C6 and gate ESP32-C3 to 4M

* document ESP32-C3 2M mDNS gating rationale

* add mDNS support for ESP32-S3 (ESP-IDF)

* rtl87x0c: add mdns support and ota upload heap guard

* add mDNS support for TR6260

* add mDNS support for BK7231U - untested

* add mDNS support for BK7252 - untested

* add mDNS support for BK7252N - untested

* add mDNS support for LN8825 - untested

* expand mDNS support for ESP-IDF C2/C5/C61/S2 - untested

* add mDNS support for ECR6600 - untested

* add mDNS support for XR806/XR809 - untested

* enable mDNS by default for ESP8266

* RTL cleanup 

Removed RTL-specific code for OTA uploads and client management.

* RTL cleanup 

Removed Realtek-specific OTA guard code and related logging.

* RTL cleanup

---------

Co-authored-by: openshwprojects <85486843+openshwprojects@users.noreply.github.com>
2026-03-19 22:26:27 +01:00
f070313f06 Don't build NEO6M in default build for W800 and BL602 (#2034)
Fix some bugs and cleanup code.
1.18.277
2026-03-19 16:56:38 +01:00
c6cb296481 revise tuyamcu truncated payload error (#2033)
* Update drv_tuyaMCU.c

* realloc hardening

* fix more of the same. add selftest

* align allocator calls to os_ convention

* Revert "align allocator calls to os_ convention"

This reverts commit 4dae897536.

* Update selftest_tuyaMCU.c

* fix self test

* correct crc

* fix crc

* Update selftest_tuyaMCU.c

* correct comments

* Update drv_tuyaMCU.c
1.18.276
2026-03-17 09:01:50 +01:00
42729cf3a8 BT Proxy & minimal esphome api (#2003)
* Import DeDaMrAzR BT proxy

* rtl8720d bt

* fix

* clean up, disable esp

* rtlc

* bk723x bt

* fix

* fix2

* bk active scan

* ln882h

* fix

* tweak ln882h ps

* cleanup

* cleanup
1.18.275
2026-03-16 13:39:58 +01:00
663ce5c8c9 LN882H fast connect (#2016) 1.18.274 2026-03-16 11:23:44 +01:00
9caa2aca77 tune shutter times
* Enable ENABLE_DRIVER_SHUTTERS on beken

* Update drv_shutters.c

* scale

* fix save

* step

* Update obk_config.h
1.18.273
2026-03-16 10:11:30 +01:00
1a02f0bedf TuyaMCU: harden STATE parsing against truncated payloads and realloc failur (#1999)
* Update drv_tuyaMCU.c

* realloc hardening

* fix more of the same. add selftest

* align allocator calls to os_ convention

* Revert "align allocator calls to os_ convention"

This reverts commit 4dae897536.

* Update selftest_tuyaMCU.c

* fix self test

* correct crc

* fix crc

* Update selftest_tuyaMCU.c

* correct comments
2026-03-16 10:05:00 +01:00
14d4dcf2e2 Shutter driver enhancements and enable (#2022)
* Add ENABLE_DRIVER_SHUTTERS configuration option

* Enhance shutter control with channel assignments

* Refactor shutter channel handling and save logic

* Update drv_shutters.c

* Adjust time scaling and save state on shutter move

Updated the scaling factors for open and close time seconds in Shutter_Save and Shutter_Read functions to reflect a change from 10 to 100 and from 0.1 to 0.01 respectively. Added a call to Shutter_Save in Shutter_Move to ensure state is saved when moving.
1.18.272
2026-03-16 08:27:57 +01:00
191a297e18 better WS2812 + single PWM (#1980)
* test

* better WS2812 + single PWM
2026-03-16 08:20:17 +01:00
0cd2ba8270 Update json_interface.c (#2028) 2026-03-16 08:18:01 +01:00
33e5f1b26a Update OpenXR806 submodule to latest commit (#2027) 1.18.271 2026-03-14 21:10:47 +01:00
e1655d97a4 Some fixes so Linux Simulator can also be run "standalone" with GUI: (#2025)
Fixed some wrong timing defines (Windows "Sleep" will sleep ms, Linux "sleep" will sleep seconds(!)).
Added start of Simulator

Changed some constants so Linux sim uses an own MAC, device name ...

Also fixed Web-App code not to rely on "ourip" ( HAL_GetMyIPString(); ) which won't work on all platforms and will ignore port
by using JavaScript "location.host" which (since we are using the webif) is known and even containing a non standard port, usefull together with simulators "-port" option
2026-03-14 21:10:13 +01:00
c49a934eba add mDNS driver for BK7231N/BK7231T as base (#2017)
* feat: add mDNS driver for BK7231N/BK7231T

* chore: update sdk submodules to upstream mdns merges

* fix: include mdns driver source in shared build manifests

* fix: avoid mdns link errors when sdk responder is disabled
2026-03-07 16:22:13 +01:00
07ac3e09ea iRobot Roomba 500-800 series driver (#2005)
* iRobot Romba series 500-800 driver for BK7231

* Update obk_config.h

* Update drv_main.c

* cfg

---------

Co-authored-by: Tester23 <85486843+openshwprojects@users.noreply.github.com>
1.18.270
2026-03-06 09:15:55 +01:00
f58249b324 Show MQTT password tick box added (#2015)
Same fix as done for wifi pass.
1.18.269
2026-03-04 19:46:38 +01:00
91cf1a61ca merge in new shutters driver
* test1

* test

* cal

* enable on beken

* fix

* fix stop so it stops immediatelly

* buttons for up and down

* HA

* test

* Update new_pins.h

* fix warning: implicit declaration of function 'Shutter_MoveByIndex' [-Wimplicit-function-declaration] etc

* Update drv_shutters.c

* double order stop

* Update drv_shutters.c

* Update selftest_shutters.c

* Update win_main.c

* Update obk_config.h
1.18.268
2026-03-01 09:47:36 +01:00
4ab93c6b06 Tiny nec receiver + timer period changes (#1995)
* Tiny nec receiver + timer period changes

* fixes

---------

Co-authored-by: openshwprojects <85486843+openshwprojects@users.noreply.github.com>
1.18.267
2026-03-01 08:20:42 +01:00
9b3c3b69fc Show password in WiFi config without removing the old (#2007) 1.18.266 2026-02-28 13:52:41 +01:00
c960b791e1 Directional lerp for smooth transition on power off (#2009)
Previously RED channel will "ramp" down slower due to the correction factor
1.18.265
2026-02-28 12:14:22 +01:00
23f9895603 correct/update some ioroles descriptions (#2010) 2026-02-28 12:13:46 +01:00
9c60b21cbc MQTT Server Driver with Berry Bindings
* t

* t

* t

* dis

* t

* linked

* fixes

* stat

* make

* fx

* Update drv_mqttServer.c

* fixers 1

* cmd fix

* tools

* w

* Update drv_mqttServerBerry.c
1.18.264
2026-02-26 12:19:24 +01:00
8ab58d2a2d double back fix in config page (#1996) 1.18.263 2026-02-20 12:10:43 +01:00
7f6a8f4c9c Refactor datetime formatting for ECR6600 platform (#1988)
* Refactor datetime formatting for ECR6600 platform

Try fixing bad mqtt mesage for energycounter_clear_date on ECR6600

* Fix typo

* Changed second occurence in source code
1.18.262
2026-02-20 11:56:11 +01:00
8d83b41d6c HTTP TCP server: fix realloc failure handling to prevent request buffer leak (#1990)
* Update http_tcp_server.c

* Update new_tcp_server.c
1.18.261
2026-02-13 22:48:29 +01:00
3eb8ef85e7 add reset to default webapp url button (#1986)
* Update http_fns.c

* Update http_fns.c

* capitalise App to match main button in menu

+ reinstate . removed to initiate previous build
1.18.260
2026-02-13 11:23:04 +01:00
561b5ebfe6 RfReceived (#1933) 2026-02-13 11:21:37 +01:00
10fba241ed Trying some more changes to getcommands.js (#1982)
Added altered docs to see changes
2026-02-13 11:21:00 +01:00
f3e07b547d Try fix flash restrictions for W600 and W800 (#1936)
* Try fix flash restrictions for W600 and W800 by moving start of FLASH_VARS (changing FLASH_VARS_STRUCTURE_ADDR)
So restrictions in new_pins.h should be obsolete (allowing e.g. second SSID for W600 and W800)
For W800 restriction should be no longer present since some time, because it was moved to easyflash some time ago...

* Fix code in new_cfg.c, too

Removed special handling for W600 and updated config version.

* Tried an "update" mechanism: move flash_vars to new location if config is version 3

* Fix overwriting configSize in CFG_CalcChecksum() in case of V3 config

* I try fixing error for XR platforms for conflicting SSD1306_Init by excluding local "components" dir

* Try fixig build by removing "-lcomponent"

* Try fix for XR806, too

* try zeroing new space in config

* Try fixing zero memory
Add some more debug output

* Removed test code for fixing XRadio devices - nothing to do with this PR
Removed debug output

* Change to reflect moving flashvars from local structure to easyflash in latest commit
1.18.259
2026-02-10 09:00:33 +01:00
17f20e2878 new_pins: fix for inconsistent pin value on wake after sleep (#1922)
On startup PINS that conditionally processed based on g_lastValidState
would be ignore if they were currently 0 regardless of the state before
the module woke up.

This change intializes them with the proper restored channel values.

Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
1.18.258
2026-02-09 23:51:44 +01:00
ec56008600 build old ir on non-beken (#1979)
* build old ir on non-beken

* fix potential issue

* final fixes
2026-02-09 23:50:51 +01:00