<feed xmlns='http://www.w3.org/2005/Atom'>
<title>zmk.git/app/drivers/kscan, branch main</title>
<subtitle>ZMK Bluetooth keyboard firmware.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/'/>
<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>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>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 the label for the GPIO kscan driver.</title>
<updated>2021-02-27T19:32:42+00:00</updated>
<author>
<name>Pete Johanson</name>
<email>peter@peterjohanson.com</email>
</author>
<published>2021-02-27T19:32:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=0f9fff755474750df49bda897094f93d3b167faa'/>
<id>0f9fff755474750df49bda897094f93d3b167faa</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(kscan): Fix polling of GPIO matrices.</title>
<updated>2021-02-02T19:04:10+00:00</updated>
<author>
<name>Pete Johanson</name>
<email>peter@peterjohanson.com</email>
</author>
<published>2021-01-28T16:55:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=6c7ab0ce53ec75394eaa84ae303d725300cb1f45'/>
<id>6c7ab0ce53ec75394eaa84ae303d725300cb1f45</id>
<content type='text'>
* Add easier macros for conditional polling/interrupt code.
* Properly continue polling on intervals, without extra
  enable/disable code for pins that is superfluous when not trying to
  deal with interupts firing.
* Fix to allow multiple GPIO drivers when doing splits w/ IO expanders
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add easier macros for conditional polling/interrupt code.
* Properly continue polling on intervals, without extra
  enable/disable code for pins that is superfluous when not trying to
  deal with interupts firing.
* Fix to allow multiple GPIO drivers when doing splits w/ IO expanders
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(kscan): Remove explicit default n from kscan configs.</title>
<updated>2021-02-02T19:04:10+00:00</updated>
<author>
<name>Pete Johanson</name>
<email>peter@peterjohanson.com</email>
</author>
<published>2021-01-28T16:53:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=2f352788c13294f842654a1bdcd243fdf051ae3b'/>
<id>2f352788c13294f842654a1bdcd243fdf051ae3b</id>
<content type='text'>
* Actually allow defaulting yes in other places.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Actually allow defaulting yes in other places.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor: replace filename hyphens with underscores</title>
<updated>2020-12-28T06:15:35+00:00</updated>
<author>
<name>innovaker</name>
<email>66737976+innovaker@users.noreply.github.com</email>
</author>
<published>2020-12-22T15:56:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=842aa5a842e117b7b00e49258ca0bde44dc0c789'/>
<id>842aa5a842e117b7b00e49258ca0bde44dc0c789</id>
<content type='text'>
Aligns *.h and *.c to underscore naming convention.

These were kept (with warnings) for backwards compatibility with external boards/shields:
- kscan-mock.h
- matrix-transform.h
They should be removed in the future.

PR: #523</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Aligns *.h and *.c to underscore naming convention.

These were kept (with warnings) for backwards compatibility with external boards/shields:
- kscan-mock.h
- matrix-transform.h
They should be removed in the future.

PR: #523</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(app): replace `struct device *` with `const struct device *`</title>
<updated>2020-12-14T17:41:25+00:00</updated>
<author>
<name>innovaker</name>
<email>66737976+innovaker@users.noreply.github.com</email>
</author>
<published>2020-12-10T19:31:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.nvandoorn.com/zmk.git/commit/?id=00ca0d2f1cb0a939e5207454d89c6d37ef9f45a6'/>
<id>00ca0d2f1cb0a939e5207454d89c6d37ef9f45a6</id>
<content type='text'>
Replaced with RegExp: /(?&lt;!const )(struct device \*)/g

See: https://docs.zephyrproject.org/latest/releases/release-notes-2.4.html
PR: #467</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replaced with RegExp: /(?&lt;!const )(struct device \*)/g

See: https://docs.zephyrproject.org/latest/releases/release-notes-2.4.html
PR: #467</pre>
</div>
</content>
</entry>
</feed>
