Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(shields): Add Breeze #1125

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open

feat(shields): Add Breeze #1125

wants to merge 8 commits into from

Conversation

idan
Copy link
Contributor

@idan idan commented Feb 7, 2022

Add a shield definition for the Breeze split keyboard from Afternoon
labs.

This is for the standard breeze variant, with the arrow keys present
on the right half but not the left.

Definition is based in part on an abandoned PR by @devries:
#735

Signed-off-by: Idan Gazit idan@gazit.me
Co-authored-by: devriesp devriesp@users.noreply.github.com

Board/Shield Check-list

  • This board/shield is tested working on real hardware
  • Definitions follow the general style of other shields/boards upstream (Reference)
  • .zmk.yml metadata file added
  • Proper Copyright + License headers added to applicable files (Generally, we stick to "The ZMK Contributors" for copyrights to help avoid churn when files get edited)
  • General consistent formatting of DeviceTree files
  • Keymaps do not use deprecated key defines (Check using the upgrader tool)
  • &pro_micro used in favor of &pro_micro_d/a if applicable
  • If split, no name added for the right/peripheral half
  • Kconfig.defconfig file correctly wraps all configuration in conditional on the shield symbol
  • .conf file has optional extra features commented out
  • Keyboard/PCB is part of a shipped group buy or is generally available in stock to purchase (OSH/personal projects without general availability should create a zmk-config repo instead)

@Nicell Nicell added enhancement New feature or request shields PRs and issues related to shields labels Feb 8, 2022
// ----------------------------------------------------------------------------------------------------------------------------------
// | | | | | | | | | | | | | | | | | |
// | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | | | | |
// | F1 | F2 | F3 | F4 | F5 | F6 | | | <- | ^ | v | -> | | | | | |

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@idan based on the keymap (line 61), shouldn't the order of the arrows be like this?

|   <-  |   v   |  ^  |  ->   |

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah good catch @peterlvno! The keymap is correct, it's the illustrative comments that are wrong. I'll correct later today, I have also made some other tweaks to this layout that make sense as a default. Thank you!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@peterlvno okay, I cleaned up the default keymap to something way simpler in 0973971, and I think there are no lingering mistakes!

Copy link
Contributor

@petejohanson petejohanson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couple minor things.

app/boards/shields/breeze/breeze.dtsi Show resolved Hide resolved
app/boards/shields/breeze/breeze.dtsi Outdated Show resolved Hide resolved
idan and others added 5 commits April 20, 2022 22:40
Add a shield definition for the Breeze split keyboard from Afternoon
labs.

This is for the standard breeze variant, with the arrow keys present
on the right half but not the left.

Definition is based in part on an abandoned PR by @devries:
zmkfirmware#735

Signed-off-by: Idan Gazit <idan@gazit.me>
Co-authored-by: devriesp <devriesp@users.noreply.github.com>
Signed-off-by: Idan Gazit <idan@gazit.me>
Signed-off-by: Idan Gazit <idan@gazit.me>
Signed-off-by: Idan Gazit <idan@gazit.me>
Signed-off-by: Idan Gazit <idan@gazit.me>
- add arrows keys on lower WASD
- Add LA PSCRN to media block
Copy link
Member

@Nicell Nicell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One comment on the new transform added, and then if you could delete breeze_left.conf and breeze_right.conf, that'd be perfect. We're keeping only the main shield.conf file in tree.

app/boards/shields/breeze/breeze.dtsi Outdated Show resolved Hide resolved
@idan
Copy link
Contributor Author

idan commented May 4, 2022

@Nicell @petejohanson bump; I think this should be ready now?

@idan idan requested review from petejohanson and Nicell May 4, 2022 15:47
Copy link
Member

@Nicell Nicell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@idan Sorry, I found one more thing on this review, then I think we're good to go.

Comment on lines +13 to +21
&kscan0 {
row-gpios
= <&pro_micro 21 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 20 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 19 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 18 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
, <&pro_micro 15 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
;
};
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see these are the same GPIO as the ones in the left .overlay. This can probably just be put in the .dtsi then instead of in each, right? The left side can just have the include line and on the right side the include and row offset.

@houllette
Copy link

Howdy! I am looking to adapt my Afternoon Breeze to use ZMK - any chance I could bump this issue and hope y'all could push it over the finish line? I'm wayyy to new to this project to even have a hope of closing it out myself haha

@caksoylar
Copy link
Contributor

caksoylar commented Jan 21, 2024

@houllette If you want to unblock yourself, you can copy the app/boards/shields/breeze folder from this PR's tree into your config repo, after creating one with some other keyboard or creating an empty one by using the template. You'd place it under the boards/shields/ folder and the build process will pick up the files from there. This modular approach is fully supported by design in ZMK.

@lesshonor
Copy link
Contributor

Howdy! I am looking to adapt my Afternoon Breeze to use ZMK - any chance I could bump this issue and hope y'all could push it over the finish line? I'm wayyy to new to this project to even have a hope of closing it out myself haha

While the pull requests are still open, the main ZMK repository is de facto not accepting shield additions or changes.

Consider forking Afternoon Labs' config repository. While it doesn't have all the improvements of #1312, being under the Afternoon Labs account gives it additional visibility. So it likely has the highest chance of being maintained.

@houllette
Copy link

@caksoylar @lesshonor - thank you both so much! This should be enough to go off of; I appreciate it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request shields PRs and issues related to shields
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants