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

Add Bonsai C4 converter #17711

Merged
merged 6 commits into from
Aug 18, 2022
Merged

Add Bonsai C4 converter #17711

merged 6 commits into from
Aug 18, 2022

Conversation

infinityis
Copy link
Contributor

@infinityis infinityis commented Jul 18, 2022

Adds converter for:

promicro -> bonsai c4

At the moment this PR only performs basic pin conversion. Despite peripheral support being needed to access on-board EEPROM and flash memory chips on Bonsai C4, peripheral support is currently not included because this converter leverages the existing GENERIC_STM32_F411XE board definition, and boards inheriting boards is not yet available.

If it is preferable to use dedicated Bonsai C4 board/config files (which include peripheral support) in the meantime, I have that ready as well and can update the PR accordingly.

Description

Types of Changes

  • Core
  • Bugfix
  • New feature
  • Enhancement/optimization
  • Keyboard (addition or update)
  • Keymap/layout/userspace (addition or update)
  • Documentation

Issues Fixed or Closed by This PR

Checklist

  • My code follows the code style of this project: C, Python
  • I have read the PR Checklist document and have made the appropriate changes.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • I have tested the changes and verified that they work and don't break anything (as well as I can manage).

@github-actions github-actions bot added the core label Jul 18, 2022
@drashna drashna requested review from zvecr and a team July 19, 2022 02:19
zvecr
zvecr previously approved these changes Jul 20, 2022
@zvecr
Copy link
Member

zvecr commented Jul 20, 2022

Could you also update the docs at https://github.com/qmk/qmk_firmware/blob/develop/docs/feature_converters.md.

If it is preferable to use dedicated Bonsai C4 board/config files (which include peripheral support) in the meantime, I have that ready as well and can update the PR accordingly.

Maybe, not sure I will have time before the end of the current develop cycle to improve the situation. Somewhat depends the level of "Out the box" configuration its providing.

@infinityis
Copy link
Contributor Author

infinityis commented Jul 20, 2022

Documentation has been updated.

Because the generic board doesn't have peripherals enabled, instead of including a section listing the enabled and disabled defaults, I've added a reference to some template code that can be used to enable peripherals as needed. It seems like a reasonable way to provide some form of implementation guidance (at least until tailoring of board files becomes possible), but if that approach is not preferred even as a temporary solution, it can be removed or organized in a completely different way. I just thought it might be helpful to provide some sort of relevant starting point (example code) in the interim.

In the case of Bonsai C4, the out-of-the-box configuration I'd prefer to include as part of the converter experience is:

  • External FRAM fully operational using hard-wired pins
  • External flash operational (with SPI setup only) using hard-wired pins
  • WS2812 fully operational, hard-wired to 5V level-shifter and operating on PWM hardware
  • Enable serial comms for USART1 which covers the most common soft serial pins
  • Enable I2C on the equivalent Pro Micro I2C pins.

...which is actually most of the items included in the example code, aside from basic PWM backlighting (which probably should be excluded from the default configuration as it is less-used).

@zvecr zvecr self-requested a review July 20, 2022 23:59
@zvecr zvecr dismissed their stale review July 20, 2022 23:59

stale

@zvecr zvecr requested a review from a team July 20, 2022 23:59
Copy link
Member

@tzarc tzarc left a comment

Choose a reason for hiding this comment

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

Needs conflicts fixed, too.

docs/feature_converters.md Outdated Show resolved Hide resolved
keyboards/custommk/bonsai_c4_template/bonsai_c4_template.c Outdated Show resolved Hide resolved
@zvecr
Copy link
Member

zvecr commented Aug 14, 2022

Sorry, got conflicts again. Will merge asap once they are resolved.

@zvecr zvecr mentioned this pull request Aug 15, 2022
14 tasks
@zvecr zvecr requested review from tzarc and a team August 15, 2022 19:24
@zvecr zvecr merged commit a645301 into qmk:develop Aug 18, 2022
nolanseaton pushed a commit to nolanseaton/qmk_firmware that referenced this pull request Jan 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants