<feed xmlns='http://www.w3.org/2005/Atom'>
<title>zmk.git/app/drivers, branch core/peripheral-behavior-invocation</title>
<subtitle>ZMK Bluetooth keyboard firmware.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/'/>
<entry>
<title>feat(kscan): Improve matrix debouncing</title>
<updated>2021-10-27T03:52:13+00:00</updated>
<author>
<name>Joel Spadin</name>
<email>joelspadin@gmail.com</email>
</author>
<published>2021-07-31T06:23:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=f946dc68931a712bae1c2be0ed1581815ccc8767'/>
<id>f946dc68931a712bae1c2be0ed1581815ccc8767</id>
<content type='text'>
Switched the GPIO matrix driver to debouncing using a simple integrator
algorithm. Whenever a key is pressed, we now scan at a rate controlled
by debounce-scan-period-ms (default 1 ms) until all keys are released,
then return to either waiting for an interrupt or polling more slowly.

The timers for key press and release can now be controlled separately,
so debounce-period is deprecated in favor of debounce-press-ms and
debounce-release-ms. Global Kconfig options
ZMK_KSCAN_DEBOUNCE_PRESS_MS and ZMK_KSCAN_DEBOUNCE_RELEASE_MS are also
added to make these easier to set.

Added documentation for debouncing options.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Switched the GPIO matrix driver to debouncing using a simple integrator
algorithm. Whenever a key is pressed, we now scan at a rate controlled
by debounce-scan-period-ms (default 1 ms) until all keys are released,
then return to either waiting for an interrupt or polling more slowly.

The timers for key press and release can now be controlled separately,
so debounce-period is deprecated in favor of debounce-press-ms and
debounce-release-ms. Global Kconfig options
ZMK_KSCAN_DEBOUNCE_PRESS_MS and ZMK_KSCAN_DEBOUNCE_RELEASE_MS are also
added to make these easier to set.

Added documentation for debouncing options.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(kscan): Allow composite driver to handle missing children.</title>
<updated>2021-09-15T00:48:28+00:00</updated>
<author>
<name>Pete Johanson</name>
<email>peter@peterjohanson.com</email>
</author>
<published>2021-03-02T16:10:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=c9a671d8d5f6144771e3835322ce421012c39375'/>
<id>c9a671d8d5f6144771e3835322ce421012c39375</id>
<content type='text'>
For split keyboards using an IO expander over TRRS/i2c, if the
right half isn't connected, we should be able to gracefully
fallback to the left side still working.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For split keyboards using an IO expander over TRRS/i2c, if the
right half isn't connected, we should be able to gracefully
fallback to the left side still working.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(drivers): Add mcp23017 driver based on upstream mcp23s17 one.</title>
<updated>2021-09-15T00:48:28+00:00</updated>
<author>
<name>Pete Johanson</name>
<email>peter@peterjohanson.com</email>
</author>
<published>2021-01-29T03:54:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=647110e5e5adef98a133f5f65b212110e614309b'/>
<id>647110e5e5adef98a133f5f65b212110e614309b</id>
<content type='text'>
* Upstream Zephyr has in progress driver, so doing this locally here,
  until we can move over to that driver.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Upstream Zephyr has in progress driver, so doing this locally here,
  until we can move over to that driver.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(kscan): Demacroify GPIO matrix driver</title>
<updated>2021-09-08T18:34:28+00:00</updated>
<author>
<name>Joel Spadin</name>
<email>joelspadin@gmail.com</email>
</author>
<published>2021-07-25T20:23:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=82cb76269811105bbe89569367d888d7a3fdd083'/>
<id>82cb76269811105bbe89569367d888d7a3fdd083</id>
<content type='text'>
Refactored the GPIO matrix kscan driver so that only the data and config
structures are defined in the foreach macro. Functionality is unchanged
except for the addition of DT properties to adjust polling speed.

This should make it easier to add other enhancements later, like
improved and customizable debounce behavior.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Refactored the GPIO matrix kscan driver so that only the data and config
structures are defined in the foreach macro. Functionality is unchanged
except for the addition of DT properties to adjust polling speed.

This should make it easier to add other enhancements later, like
improved and customizable debounce behavior.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(display): IL0323 driver for EPD displays.</title>
<updated>2021-08-25T02:15:42+00:00</updated>
<author>
<name>Darryldh</name>
<email>info@lowprokb.ca</email>
</author>
<published>2021-08-04T00:26:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=a124eb9f9e364aa617fc7ee71cb72ede42d1f326'/>
<id>a124eb9f9e364aa617fc7ee71cb72ede42d1f326</id>
<content type='text'>
* Basic driver, using the GD7965 driver as a basis, since the ICs
  are very similar.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Basic driver, using the GD7965 driver as a basis, since the ICs
  are very similar.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat: Add nrf VDDH battery driver</title>
<updated>2021-07-25T04:39:13+00:00</updated>
<author>
<name>Joel Spadin</name>
<email>joelspadin@gmail.com</email>
</author>
<published>2021-04-03T06:00:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=a6de43e665ded4831d79159495660ac3a7d48e99'/>
<id>a6de43e665ded4831d79159495660ac3a7d48e99</id>
<content type='text'>
Added a driver which uses the nRF52's ADC channel on the VDDH pin to
read the battery voltage when using high voltage mode.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added a driver which uses the nRF52's ADC channel on the VDDH pin to
read the battery voltage when using high voltage mode.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(core): Move away from deprecated DT API.</title>
<updated>2021-07-17T21:04:25+00:00</updated>
<author>
<name>Pete Johanson</name>
<email>peter@peterjohanson.com</email>
</author>
<published>2021-03-22T14:31:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=2a69f31eb0d3af1290152afb1517142100b3316d'/>
<id>2a69f31eb0d3af1290152afb1517142100b3316d</id>
<content type='text'>
* Move to `DEVICE_DT_INST_DEFINE` everywhere.

See: https://docs.zephyrproject.org/2.5.0/releases/release-notes-2.5.html#deprecated-in-this-release
PR: https://github.com/zmkfirmware/zmk/pull/736
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Move to `DEVICE_DT_INST_DEFINE` everywhere.

See: https://docs.zephyrproject.org/2.5.0/releases/release-notes-2.5.html#deprecated-in-this-release
PR: https://github.com/zmkfirmware/zmk/pull/736
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(kscan): Fix nibble demux scan errors on encoder row</title>
<updated>2021-06-09T00:59:35+00:00</updated>
<author>
<name>Jay Greco</name>
<email>jayv.greco@gmail.com</email>
</author>
<published>2021-06-09T00:59:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=f3bb90f9e101c2f6d35e6577a52d51b778727dfa'/>
<id>f3bb90f9e101c2f6d35e6577a52d51b778727dfa</id>
<content type='text'>
+ Add a 1us sleep to let the column selection settle in order to avoid spurious keypresses when row capacitance is high (like on the encoder row)</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
+ Add a 1us sleep to let the column selection settle in order to avoid spurious keypresses when row capacitance is high (like on the encoder row)</pre>
</div>
</content>
</entry>
<entry>
<title>fix(kscan): Proper direct wire warning message.</title>
<updated>2021-03-15T04:39:29+00:00</updated>
<author>
<name>Pete Johanson</name>
<email>peter@peterjohanson.com</email>
</author>
<published>2021-03-15T04:39:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=27c89e69c15def0d9d4fe742912a062b3783b463'/>
<id>27c89e69c15def0d9d4fe742912a062b3783b463</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(logging): remove unnecessary newline</title>
<updated>2021-03-10T23:08:22+00:00</updated>
<author>
<name>Okke Formsma</name>
<email>okke@formsma.nl</email>
</author>
<published>2021-02-27T21:22:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=c01243d1c6e0c84556f248fbc1d83496222209c3'/>
<id>c01243d1c6e0c84556f248fbc1d83496222209c3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
