Commit graph

2114 commits

Author SHA1 Message Date
Kuba Birecki
82591843d1 Fix bug with counting updated pixels 2023-06-21 12:41:40 +02:00
Kuba Birecki
8bcee4f3b9 Tidy up devicetree bindings 2023-06-21 12:41:26 +02:00
Kuba Birecki
66180b5480 Update ZMK_ANIMATION_FPS range 2023-06-21 11:46:00 +02:00
Kuba Birecki
e929ec7175 Remove accidental CMakeLists.txt entry 2023-06-21 11:44:38 +02:00
Daniel DeGrasse
70c6f9f1a0 feat(docs): added documentation for animation subsystem
Added documentation for animation subsystem, to make it easier for
developers to get started using it.

Signed-off-by: Daniel DeGrasse <daniel@degrasse.com>
2023-06-21 11:39:47 +02:00
Kuba Birecki
5b5afac923 Merge remote-tracking branch 'upstream/main' into feature/animations 2023-06-21 11:35:27 +02:00
Peter Johanson
b259d5a22e fix(sensors): Sensor rotate behavior fix for layers.
* Properly return transparent value when processing mode
  for higher disabled layers means the processing is ignored.
2023-06-20 17:36:37 -06:00
Peter Johanson
805dd4a53b feat(behaviors): Support parameterized macros.
* Add two new compatibles for macros that
  take one or two parameters when bound in
  a keymap.
* Use `&macro_param_1to1`, `&macro_param_1to2`, `&macro_param_2to1`,
  and `&macro_param_2to2` control entries in the bindings for the macro
  to have the next binding entry have it's values substituted.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-06-20 11:19:28 -06:00
Xudong Zheng
e686fce4d9 refactor(split): allow central to define connection parameters
Fixes #1614
2023-06-19 20:48:31 -06:00
Peter Johanson
5763558a02 feat(blog): Add post about sensor refactor.
* Document changed configuration, support for other Zephyr
  drivers, next steps.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-06-18 20:45:06 -06:00
Peter Johanson
753802cd79 fix(sensors): Clean ups based on code review. 2023-06-18 20:45:06 -06:00
Peter Johanson
3a91b32513 refactor(sensors): Use "sensor index" consistently 2023-06-18 20:45:06 -06:00
Peter Johanson
8b29f6d345 refactor(sensors): Split data handling from triggers.
* All sensor behaviors should see sensor data, then selectively
  only have some trigger their behaviors.
2023-06-18 20:45:06 -06:00
Peter Johanson
d781ec795b refactor(bluetooth): Add battery reporting config.
* Add dedicated battery reporting Kconfig that is `imply`d by
  enabling ZMK_BLE.
2023-06-18 20:45:06 -06:00
Peter Johanson
f8aaaff556 refactor(shields): Updated ZMK Uno encoder config.
* Move to new steps/triggers-per-rotation config.
* Leverage QDEC Nordic driver when used on Nordic DK.
2023-06-18 20:45:06 -06:00
Peter Johanson
621d946d29 refactor(bluetooth): Bump HoG stack size.
* Bump the default stack size for the HoG processing thread
  to avoid issues w/ some pathways.
2023-06-18 20:45:06 -06:00
Peter Johanson
f0f7e2081b refactor(config): Select SENSOR as needed.
* Don't force on SENSOR Kconfig setting unless
  needed based on the detected DT.
2023-06-18 20:45:06 -06:00
Peter Johanson
295ed83409 refactor(sensors): ec11 rotation sensor value in degrees.
* Add new `steps` property to the `aips,ec11` binding, to make
  the driver properly report degrees in the rotation delta channel.
* Handle old sensor values in sensor rotate behavior.
2023-06-18 20:45:06 -06:00
Peter Johanson
2244bd3d81 refactor(sensors): Sensor event channel data, resolution tweaks.
* Refactor sensor events to include channel data,
  necessary for prop split encoders, and avoiding duplicate calls,
  to fetch channel data twice, etc.
* More consistent behavior driver API.
* Allow setting triggers per resolution at the behavior level optionally.
2023-06-18 20:45:06 -06:00
Joel Spadin
dcf5e75fa6 fix(boards): Bump nRF5340 DK I2C buffer size
Increased the I2C buffer size again, since it needs to be at least 641
to support 128x64 displays.
2023-06-18 14:57:06 -06:00
Joel Spadin
9ff1eaeb5a fix: Enable BT_TINYCRYPT_ECC when using HCI
BT_TINYCRYPT_ECC is required for BT_SMP_SC_PAIR_ONLY to work on setups
that use BT HCI like the nRF5340.
2023-06-18 14:52:45 -06:00
Kuba Birecki
cb22fa885a Fix formatting 2023-06-13 16:00:21 +02:00
Kuba Birecki
abeb5c8c49 Update the animation API for Zephyr 3.* 2023-06-13 15:21:13 +02:00
Kuba Birecki
e2cdd017e3 Put animation control settings code behind config flags 2023-06-11 10:23:03 +02:00
Kuba Birecki
331573471d Disable animations when entering sleep state 2023-06-11 10:23:03 +02:00
Kuba Birecki
6a551851aa Persist settings for control animations 2023-06-11 10:23:03 +02:00
Kuba Birecki
fc8b91a2ba Implement control animation and basic animation behaviors 2023-06-11 10:23:02 +02:00
Kuba Birecki
69de72c6f4 Ensure the buffer is always reset before calculating each frame 2023-06-11 10:20:46 +02:00
Kuba Birecki
eb1fc0a21b Prevent ripple animation from requesting frames unless active 2023-06-11 10:20:46 +02:00
Kuba Birecki
0e09446cf8 Optimize the lookup table for pixel distances 2023-06-11 10:20:46 +02:00
Kuba Birecki
19790f2e1a Implement animation activation/deactivation API and frame scheduling 2023-06-11 10:20:46 +02:00
Kuba Birecki
6697fc4582 Fix intensity calculation for the ripple animation 2023-06-11 10:20:46 +02:00
Kuba Birecki
2fa6063c9b Refactor animation API to allow for processing entire frames at once 2023-06-11 10:20:46 +02:00
Kuba Birecki
ae518fabc9 Add 'compose' animation 2023-06-11 10:20:46 +02:00
Kuba Birecki
38a70ea747 Update devicetree bindings for solid animation 2023-06-11 10:20:46 +02:00
Kuba Birecki
d7d1c0abcf Update ripple animation to use the given color 2023-06-11 10:20:46 +02:00
Kuba Birecki
30e0903d8e Implement a 'ripple' per-key effect animation 2023-06-11 10:20:46 +02:00
Kuba Birecki
df35aa5547 Implement helpers for key pixel position and pixel distance 2023-06-11 10:20:46 +02:00
Kuba Birecki
cc70d75238 Refactor the animation api to allow for pre- and post-frame hooks 2023-06-11 10:20:46 +02:00
Kuba Birecki
2dfec75038 Fix formatting 2023-06-11 10:20:46 +02:00
Kuba Birecki
8e5574ab49 Move animation_solid from drivers to zmk/src/animation 2023-06-11 10:20:44 +02:00
Kuba Birecki
105afca3d9 Clean up the main animation module 2023-06-11 10:17:50 +02:00
Kuba Birecki
f50037dcbb Fix HSL->RGB conversion 2023-06-11 10:17:50 +02:00
Kuba Birecki
2326f36e50 Update animation devicetree bindings 2023-06-11 10:17:50 +02:00
Kuba Birecki
5da7a6e29f Remove pixel device definition 2023-06-11 10:17:50 +02:00
Kuba Birecki
be02e78356 Implement a simple solid-color-cycle animation 2023-06-11 10:17:48 +02:00
Kuba Birecki
352fe39468 Add an implementation for the core animations system 2023-06-11 10:16:37 +02:00
Kuba Birecki
4da01b63b0 Implement the initial version of the animation interface 2023-06-11 10:14:43 +02:00
Kuba Birecki
c3beca12bd Add animation devicetree bindings 2023-06-11 10:14:43 +02:00
dependabot[bot]
9d714c0b69 chore(deps-dev): bump webpack from 5.80.0 to 5.86.0 in /docs
Bumps [webpack](https://github.com/webpack/webpack) from 5.80.0 to 5.86.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.80.0...v5.86.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-10 23:51:23 -07:00