Commit Graph

182 Commits

Author SHA1 Message Date
Peter Johanson
31f664ffec fix(boards): Base config/overlay for rp2040 boards
Baseline config and overlay for the following:

* `rpi_pico`
* `adafruit_kb2040`
* `sparkfun_pro_micro_rp2040`
* `adafruit_qt_py_rp2040`
* `seeeduino_xiao_rp2040`
* `boardsource_blok`
* `01space_rp2040_042lcd`

Co-authored-by: Joel Spadin <joelspadin@gmail.com>
2023-04-05 22:55:38 -07:00
Peter Johanson
09ed79a867 refactor: Move away from deprecated label usages.
* Move away from DT_LABEL.
* Move to DEVICE_DT_GET for non-behavior device access.
* Move various drivers to `gpio_spec_dt` and `DT` related macros.
* Remove mcp23017 while at it, since better upstream driver is
  available.
2023-04-05 22:55:38 -07:00
Peter Johanson
3a958c667f refactor: Move to zephyr/ include paths.
* Zephyr moved to properly namespaced headers, so major "rip
  the bandaid" commit to move us to those everywhere.
2023-04-05 22:55:38 -07:00
Peter Johanson
35a1c5a3d4 refactor(behaviors): Rename reset behavior.
* Upstream now has a node w/ label `reset` on many boards, so
  renaming our reset behavior node label to `sys_reset`.
2023-04-05 22:55:38 -07:00
Peter Johanson
69a4c3200d refactor(display): Updates for LVGL v8.x changes.
* LV_ prefix from new LVGL official Kconfig now used.
* API changes for themes, container object removal, etc.
* Add our own Kconfig and code for theme default small font.
* Remove some hardcoded sizes.
2023-04-05 22:55:38 -07:00
Peter Johanson
ae8299edb3 fix(boards): Move the CDC ACM node under the USBD.
* Ferris board's CDC ACM node was accidentally nested under the wrong
  node, causing USB logging builds to fail with cryptic error.
2023-03-25 13:14:12 -07:00
chrissicool
56299ba5dc
fix(boards): Disable CDC by default for CiZ
The default configuration for corneish-zen enables a USB CDC endpoint by
default. This is most probably a debugging left-over. Disable that
endpoint. CONFIG_ZMK_USB_LOGGING depends on it anyway, so it will be
enabled again with that config option set.
2023-03-21 20:42:11 -04:00
byran.tech
14324390e8
fix(boards): replace nRF3840 with nRF5340 2022-12-22 20:42:57 -06:00
Cem Aksoylar
ebb4cb76d3 fix(boards): Add Zen .conf file for setup script 2022-12-16 17:41:39 -06:00
Darryldh
4a3e783f32
feat(boards): Add Corne-ish zen v2
Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2022-12-16 10:57:25 -06:00
Jerome Olivier
984b16e03b
feat(boards): Add preonic_rev3 board. 2022-12-16 10:52:26 -06:00
hyx0329
4faf6eba97 feat(boards): Add battery sensor for Makerdiary M60 keyboard
Signed-off-by: hyx0329 <hyx0329@163.com>
2022-12-14 12:38:03 -06:00
Joel Spadin
01500b085e
fix(boards): Add nRF5340 DK metadata file (#1579) 2022-12-10 22:21:54 -06:00
Kyle McCreery
70aa4fa824
feat(boards): Add PillBug board, blackpill interconnect.
* Add blackbill interconnect metadata.
* Add config/overlay for upstream blackpill boards to work with ZMK.
* Add pillbug board.
* Updated new shield docs.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2022-12-10 22:01:37 -06:00
Pavlos Vinieratos
2b235ae281
fix(boards): Add encoder config to bdn9_rev2.conf 2022-12-10 19:33:50 -06:00
Peter Johanson
12329b388e feat(boards): Add Arduino Uno interconnect, nrf52840dk config. 2022-12-10 17:40:57 -06:00
Pavel Glushkov
1e25ee77d2
fear(boards): Add nrfmicro_13_52833 board
* Add nrfmicro_13_52833 board definition.

Co-authored-by: Alexander Krikun <krikun98@gmail.com>
Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2022-10-02 22:01:55 -04:00
ReFil
b655554b03
refactor(boards): CRBN and Planck keymap fixes
* Update planck_rev6.keymap

Third layer was causing problems so i moved reset and bootloader to second layer

* BT_sel functions

A customer requested this so we added it

* Update crbn.keymap

Co-authored-by: Nick Winans <nick@winans.codes>
2022-09-22 15:14:09 -04:00
Ben
41bfc56e13
feat(board): add puchi_ble_v1 to boards
* feat(board): Add Puchi-BLE v1 board
2022-09-05 18:15:24 -04:00
zhiayang
19cc96b86d fix(boards): Fix battery ADC channel for Mikoto 2022-05-09 11:31:58 -04:00
Peter Johanson
41dc774848 fix(boards): Fix key position 4 flakiness w/ RGB
* Remove MISO pin from pinctrl for BDN9 rev2 board, to avoid
  the 4th switch being set up for an alternate function, which
  was causing spurious key press events to be triggered.
2022-05-05 22:58:56 -04:00
Joel Spadin
11ab52582c refactor(battery): Auto enable battery drivers
CONFIG_ZMK_BATTERY_NRF_VDDH and CONFIG_ZMK_BATTERY_VOLTAGE_DIVIDER are
now automatically enabled if a DT node with the matching "compatible"
property is present and enabled, so they no longer need to be manually
set for each board.
2022-04-25 22:34:04 -04:00
Joel Spadin
6d6efa32f5 refactor(kscan): Auto enable kscan drivers
The key scanning drivers are now automatically enabled when a DT node
with the matching "compatible" property is present and enabled, so they
no longer need to be manually set for each board.
2022-04-25 22:28:53 -04:00
Joel Spadin
388e345c28 feat(battery)!: Add chosen node for battery
battery.c now uses the zmk,battery chosen node to select a battery
sensor. Using the node labeled "BATTERY" is maintained for backwards
compatibility but is now deprecated. Custom boards should switch to
using the chosen node.

# Conflicts:
#	app/boards/arm/bluemicro840/bluemicro840_v1.dts
#	app/boards/arm/nice60/nice60.dts
#	app/boards/arm/nrfmicro/nrfmicro_13.dts

# Conflicts:
#	app/boards/arm/bluemicro840/bluemicro840_v1.dts
2022-04-17 11:30:57 -04:00
Peter Johanson
22c487f276 feat(boards): Add BDN9 rev2 RGB support 2022-04-09 21:57:22 -04:00
Peter Johanson
97e62f2da5 feat(boards): Add Seeed(uino) XIAO interconnect
* Document the Seeed(uino) XIAO interconnect
* Add metadata files for two upstream boards, XIAO and XIAO BLE.
* Add conf and overlay files to properly configure the boards
  for ZMK use.
2022-04-03 00:10:29 -04:00
Peter Johanson
4eb8f8cd23 refactor(boards): Use Zephyr UF2 generation. 2022-04-03 00:10:29 -04:00
Peter Johanson
cc51562f78 fix(boards): Move ARM clock config to DTS. 2022-04-03 00:10:29 -04:00
Peter Johanson
ded79ba422 fix: Remove deprecated pinmux code. 2022-04-03 00:10:29 -04:00
Peter Johanson
bf2fc68070 fix(underglow): Add newly required color-mapping prop. 2022-04-03 00:10:29 -04:00
Peter Johanson
c5ab8a9444 refactor: Move the DT based CDC ACM setup. 2022-04-03 00:10:29 -04:00
Peter Johanson
6287819fcc refactor: Move to USB_DEVICE_STACK symbol.
See: https://docs.zephyrproject.org/latest/releases/release-notes-2.7.html#changes-in-this-release
2022-04-03 00:10:29 -04:00
Peter Johanson
35e73d40f5 fix(boards): Enable direct polling for BDN9.
* BDN9 Rev2 requires direct polling,
  interrupts don't work as expected.
2022-03-24 03:51:08 +00:00
Krzysztof Gutkowski
459972fddd fix(boards): Adjust matrix for BT60v1 to fix the broken right Shift key
according to the diagram from the board creators, it should be RC(3,12)
instead of RC(3,13)
2022-03-14 13:01:54 -05:00
David Fiander
970e63bec6
fix(boards): Properly use dfu-util to flash DZ60 2022-01-12 21:36:08 -05:00
zhiayang
d29236141e
fix(boards): Proper active high and init delay for Mikoto ext-power 2022-01-11 16:07:30 -05:00
Midge 't Hoen
e0620f1a2d Bump init delay to 50ms for nico-nano 2022-01-03 14:39:42 -06:00
Kyle McCreery
a8c7cf4f19
feat(boards): Add S40NC board definition (#1021)
* initial commit

* initial commit

* Encode, OLED, and RGB Nice Nano support added as well as refining default keymap.

* tweaking keymap

* Prepared murphpad for PR. Includes adding support for second encoder, OLED, and underglow RGB

* Enabled OLED by default.

* Initial commit with settings updated to match schematic.

* Removing test directories.

* removed naked60 config files

* Fixed dogbone definitions to be full working for murphpad.

* Preparing S40NC for PR

* Removed the murphpad test files that were not supposed to be a part of this PR.

* Changing licensing to be from The ZMK Contributors.

* Changed the licensing in the keymap file to be from The ZMK Contributors

* Update s40nc.keymap
2021-12-02 17:21:35 -06:00
ReFil
b877410379 fix(boards): BT60 Formatting tweaks 2021-11-30 15:33:12 -06:00
ReFil
99c5a8ee6f feat(boards): Add BT60 Boards 2021-11-30 15:33:12 -06:00
Hai-Ninh Dang
f2e0642291
feat(boards): Add Mikoto board
* Supports selecting from several possible charge currents

Co-authored-by: Pete Johanson <peter@peterjohanson.com>
2021-11-09 00:57:24 -05:00
Nick Winans
4a03214e06 feat(boards): Add D18-21 to Pro Micro pin mappings 2021-09-25 23:09:21 -04:00
Peter Johanson
e42590a049 feat(board): Add Ferris 0.2 boards
* Onboard stm32f072 with mcp23018 IO expander.
* No underglow support yet.
* Miryoku inspired default layout.
2021-09-14 20:48:28 -04:00
Peter Johanson
39eb80562d feat(metadata): Add MakerDiary nRF52840 M.2 interconnect
* Add interconnect details.
* Add m60 and nrf52840_m2 metadata files.
2021-09-11 00:50:36 -04:00
Peter Johanson
0c3f1309c6 refactor(boards): Add metadata for boards.
* Standalone and pro-micro format board metadata added.
2021-09-11 00:50:36 -04:00
Peter Johanson
b52835ffbf feat: Add a few sample hardware metadata files. 2021-09-11 00:50:36 -04:00
Martin Aumüller
08078210da fix: Planck rev 6.1
My Planck rev 6.1 would not register any keys without "col2row".
I also had to apply a matrix_transform in order to move them to the
correct position. Peeking into #228 helped for finding this.
I also add transforms for the 2u spacebar layouts.
2021-08-24 21:21:18 -04:00
Nick Winans
cf5c56c4f1 feat(boards): Use the nRF VDDH driver for the nice!nano v2 2021-08-02 21:56:53 -04:00
Peter Johanson
b2d64fe598 refactor(boards): Switch proton_c to newer pinmux approach.
See: https://github.com/zephyrproject-rtos/zephyr/issues/28999
PR: https://github.com/zmkfirmware/zmk/pull/736
2021-07-17 17:04:25 -04:00
Pete Johanson
d7475f792f fix(boards): Enable pinmux for bdn9_rev2 by default.
See: https://github.com/zephyrproject-rtos/zephyr/issues/28999
PR: https://github.com/zmkfirmware/zmk/pull/736
2021-07-17 17:04:25 -04:00
Nick Winans
edb3ff1bb1 feat(boards): Add nice!nano v2 2021-07-15 18:52:28 -04:00
Nick Winans
efcc49f23d
fix(boards): Set nice!60 nRF subfamily for openocd (#816) 2021-06-04 00:33:44 -04:00
Anthony Amanse
719b6aa0ae
fix(boards): Add delay on initializing external power for BlueMicro840
This commits adds a delay of 20ms on initializing the external
power control driver. Previously, OLED's i2c driver is failing to
initialize the display. This commit fixes that issue.

Signed-off-by: Anthony Amanse <ghieamanse@gmail.com>
2021-05-31 00:44:30 -04:00
Anthony Amanse
cdbfb35662
fix(boards): Fix Blue LED pin definition in BlueMicro840
This commit fixes the pin definition for BlueMicro840. Based on the
schematics, the blue led is at pin 1.10.

Signed-off-by: Anthony Amanse <ghieamanse@gmail.com>
2021-05-31 00:20:46 -04:00
Nick Winans
3f838f0aaf feat(boards): Add nice!60 board 2021-05-30 11:47:20 -04:00
Lucas Messenger
d8119cd663
fix(boards): Proper BlueMicro840_V1 &pro_micro_a map for A10 (#733) 2021-03-24 13:21:40 -04:00
Pete Johanson
969e5568af fix(boards): Define but don't enable uart0.
* Set pro-micro TX/RX pins, but don't enable the UART
  by default.
2021-01-15 01:51:44 -05:00
innovaker
f17584ca0e chore: standardize # style headers
Changes made with regex plus some manual tweaks.

Find:
/(?:(?<!#!\/bin\/sh\n)(?:^#\n))*^#.*?[Cc]opyright.*?(\d{4}) *([0-9A-z,_\- ]+).*?\n(?:^#\n)*^#.*?SPDX-License-Identifier:? *(.+) *?\n(?:^#\n)*/gm

Replace:
# Copyright (c) $1 $2
# SPDX-License-Identifier: $3

PR: #564
2021-01-06 17:00:44 -05:00
innovaker
5a72662898 chore: standardize C style headers
Changes made with regex plus some manual tweaks.

Find:
/^\/\*.*\n(?:^\*.*\n)*^.*\*.*?[Cc]opyright.*?(\d{4}) *([0-9A-z,_\- ]+).*?\n(?:^.*\*.*\n)*^.*\*.*?SPDX-License-Identifier:? *(.+) *?\n(?:^.*\*.*\n)*.*\*\//gm

Replace:
/*
 * Copyright (c) $1 $2
 *
 * SPDX-License-Identifier: $3
 */

PR: #565
2021-01-01 23:06:41 -05:00
Pete Johanson
39490552f2 feat(boards): Add BDN9 Rev2 board.
* Onboard stm32f072.
* 3 possible encoder positions.
* Underglow/per-key not yet support.
2020-12-31 14:46:15 -05:00
innovaker
842aa5a842 refactor: replace filename hyphens with underscores
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
2020-12-28 01:15:35 -05:00
innovaker
00ca0d2f1c refactor(app): replace struct device * with const struct device *
Replaced with RegExp: /(?<!const )(struct device \*)/g

See: https://docs.zephyrproject.org/latest/releases/release-notes-2.4.html
PR: #467
2020-12-14 12:41:25 -05:00
Joel Spadin
77c16b020e improvement: upgrade default keymaps
Ran all the default keymaps through the keymap upgrader and manually adjusted
alignment.
2020-12-10 12:05:21 +00:00
Nick
91e3a7d75a boards: Cleanup and standardize features 2020-11-10 23:14:38 -05:00
Nick
82a5736d08 fix(boards): Remap flash to account for bootloader 2020-11-02 23:07:23 -05:00
Nick
74fa113d88 fix(boards): Rename BVD labels 2020-11-01 23:00:54 -05:00
Nick
a008731103 Implement Kconfig and enhance error checks 2020-10-26 16:01:57 -05:00
Nick
adb07926b1 Remove newlib dep 2020-10-24 18:52:34 -05:00
Nick
8efcd80f3a Add missing ADC and fix formatting 2020-10-23 00:57:32 -05:00
Nick Winans
70ffcca3b4
Merge branch 'main' into bluetooth/battery-reporting 2020-10-23 00:55:50 -05:00
Nick
162c6b77db clang-format and add missing defconfig values 2020-10-23 00:50:39 -05:00
Nick
3082455aec Refactor driver to use Sensor API 2020-10-23 00:45:59 -05:00
Mega Mind
4d81b10ba7 Added driver to control the external power output
This PR adds support to control the external power output from controllers like nice!nano, nRFMicro etc

I have implemented based on my understanding of Pete suggestion on this feature.

Testing done:

    Tested by enabling and disabling the ext_power from application and verified
    Verified the application does not crash with boards that does not have ext_power support
    Note:
    I did not test this in nice!nano since I don't have the boards. Will get help from others once the behavior PR is up

Next Steps:

    Create a behavior PR to control enable/disable ext_power
2020-10-10 08:11:46 +08:00
Pete Johanson
12b9a37005
Merge pull request #211 from petejohanson/core/keymap-port-event-exploration
Use PORT events for kscan matrix interrupts, add option for deep sleep.
2020-10-06 17:32:35 -04:00
Mega Mind
b8cb5f939a M60 keymap update and misc changes
* Updated M60 keymap
* Make nrfjproj as default runner
* Remove the polling config
2020-10-05 21:24:39 +08:00
Mega Mind
c54decd144 Added Makerdiary M.2 module 2020-10-05 21:23:38 +08:00
Pete Johanson
9be566603e feat(kscan): Use PORT events for kscan matrix interrupts
* Lower power usage compared to regular interrupts on nrf52.
2020-10-04 22:03:21 -04:00
Jason Chestnut
cca8337f05 Add support to GPIO matrix driver for matrix polling, rather than interrupt-based IO.
- Add ZMK_KSCAN_MATRIX_POLLING config flag to Kconfig
  - Update matrix driver code to use the above flag to conditionally add the handling code for polling operations.
2020-09-25 11:49:07 -04:00
Pete Johanson
90bfe6026d fix(boards): Flash Planck with dfu-util. 2020-09-21 09:49:56 -04:00
Nick
da0fb965f6 Merge remote-tracking branch 'upstream/main' into bluetooth/battery-reporting 2020-09-19 19:15:05 -05:00
Nick
844f2c7674 Voltage divider driver initial implementation 2020-09-19 19:14:59 -05:00
Pete Johanson
191a2d755a chore: clang-format the codebase.
* Use the LLVM style
* Override indent width (8) and column limit (100)
* Fixes #142.
2020-09-14 00:10:34 -04:00
Pete Johanson
68e72f9275 fix: Switch to single AUTHORS file.* Closes #164 2020-09-10 10:24:23 -04:00
Nick
ceda57ddfd Fix comment name of keyboard 2020-09-07 12:32:25 -05:00
Nick
e845995c2d Fix Planck defconfig 2020-09-07 12:25:11 -05:00
Nick
6b433fdefd Finish DZ60RGB board definition 2020-09-07 12:24:47 -05:00
Nick
fa40558f73 Merge commit '61b249666b13f7f356c0e77ee5eb500d672d7dce' into boards/dz60rgb 2020-09-07 12:22:18 -05:00
Mega Mind
bc023baa7d Incorporate comments - Change config name to nrfmicro specific 2020-08-23 12:59:39 +08:00
Mega Mind
7aea57328c Add KConfig for board battery charger 2020-08-21 03:12:06 +08:00
Mega Mind
4efce4223a Use correct macro for board 2020-08-20 18:59:41 +08:00
Pete Johanson
506c3b031e refactor(boards): Rename to bluemicro840_v1. 2020-08-19 16:35:18 -04:00
Pete Johanson
2a0e35c11f
Merge pull request #101 from okke-formsma/nrfmicro
nrfmicro support
2020-08-19 16:05:51 -04:00
Okke Formsma
93b1e0ac44 Add nrfmicro 1.1, 1.1 flipped and 1.3 boards. 2020-08-19 21:02:21 +02:00
Nick
cab34d835f fix(board): Fix status LED on BlueMicro 2020-08-18 23:28:34 -05:00
Nick
674c230dbb fix(board): Cleanup nice!nano DT 2020-08-18 23:28:06 -05:00
Pete Johanson
59f85c93cd fix(boards): Remove dup uart0 overrides for nano 2020-08-18 16:33:24 -04:00
Pete Johanson
3f1dfbaad1
Merge pull request #91 from Na-Cly/boards/bluemicro52840_v1
Add bluemicro support
2020-08-16 22:32:04 -04:00
Pete Johanson
8b4d2b6093 Add DCDC mode config. 2020-08-16 21:33:01 -04:00
Pete Johanson
abe40f8ef5 Various fixes. 2020-08-16 21:30:45 -04:00
Pete Johanson
47b219cca5 Remove duplicate uart0 node. 2020-08-16 21:27:37 -04:00