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 STK100 keyboard base on STM32WB55 #23583

Closed
wants to merge 9 commits into from

Conversation

JackyJia73
Copy link
Contributor

Add STK100 keyboard base on STM32WB55

Description

Add STK100 keyboard base on STM32WB55

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

  • Add STK100 keyboard base on STM32WB55

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 keyboard keymap via Adds via keymap and/or updates keyboard for via support labels Apr 22, 2024
@tzarc
Copy link
Member

tzarc commented Apr 22, 2024

So you've chosen a wireless MCU but not implemented wireless capability?
Or is this an attempt at getting a keyboard merged into QMK in order to satisfy VIA requirements, with no intention of actually providing wireless binding source code?

@JackyJia73
Copy link
Contributor Author

@tzarc As I know,BLE is not allowed by QMK because of license reason. and chibios has no BLE support to stm32wb. actually, I have implemented BLE on STM32WB + QMK,code is ugly and huge but working. ST code use some os like code, need to migrate to chibios. another issue, stm32wb is duel core , BLE stack is on M0. Any, I think it not easy. So, I would like to satisfy via requirement firstly. Do you have any suggestions? Thank

@tzarc
Copy link
Member

tzarc commented Apr 23, 2024

Consider this comment an official request to provide wireless code, in order to comply with the GPL.
QMK's license -- the GPL -- requires full disclosure of sources upon such a request.

You're more than welcome to keep your code in your fork, but as per the PR checklist QMK is not accepting non-wireless firmwares just to satisfy VIA's requirement of a keyboard in QMK master.

Converting this to draft so an accidental merge isn't possible.

@tzarc tzarc marked this pull request as draft April 23, 2024 09:43
@tzarc
Copy link
Member

tzarc commented Apr 23, 2024

For reference:

image

@JackyJia73
Copy link
Contributor Author

@tzarc Thanks for your clarify.

@JackyJia73
Copy link
Contributor Author

@tzarc Add https://github.com/JackyJia73/STM32CubeWB.git to lib. Do you think this is the right direction ? Or I need put all STM32CubeWB into kb directory. Thanks

@tzarc
Copy link
Member

tzarc commented May 1, 2024

Neither; you need to coordinate with ChibiOS and/or ChibiOS-Contrib to work out with them the best approach — you’ll be enabling BLE support within ChibiOS first, QMK will pick it up once successfully integrated with them.

@JackyJia73
Copy link
Contributor Author

@tzarc As STM32wb is dual core mcu,BLE stack is in cpu2. cpu1 interface with cpu2 by HCI(ipcc). All the code can be under kb directory. No need to work on Chibios. I will try work it out this way(using a few files in STM32cubeWB lib). Thanks

@Cipulot
Copy link
Contributor

Cipulot commented May 3, 2024

@tzarc As STM32wb is dual core mcu,BLE stack is in cpu2. cpu1 interface with cpu2 by HCI(ipcc). All the code can be under kb directory. No need to work on Chibios. I will try work it out this way(using a few files in STM32cubeWB lib). Thanks

The approach is interesting and definitely a good way of doing it utilizing the Mailbox approach as STM describes it. Having the second core code up in your fork will allow devs to give feedback and also clean up a bit, since as you mentioned in a prior comment it's a big repo. Lots of people might benefit from this.

As tzarc mentioned tho, license following is mandatory, and must be obliged. Mixing and matching licensing gets all of us in muddy waters that no one want to be into. That's also why I suggest you put the stack on some repo of yours, that way others can poke at it and maybe give help on that and doesn't add a burden to QMK devs and maintainers.

@tzarc
Copy link
Member

tzarc commented May 3, 2024

@tzarc As STM32wb is dual core mcu,BLE stack is in cpu2. cpu1 interface with cpu2 by HCI(ipcc). All the code can be under kb directory. No need to work on Chibios. I will try work it out this way(using a few files in STM32cubeWB lib). Thanks

I'm well aware of the STM32WB model. The ST Ultimate Liberty license explicitly forbids use with the GPL, which is what your code leverages: https://github.com/JackyJia73/STM32CubeWB/blob/master/Middlewares/ST/STM32_WPAN/LICENSE.md - clause #5.

You'll need to get this cleared with the ChibiOS folks as QMK is not planning on taking on bespoke integrations, bindings, nor maintenance of this.

@JackyJia73 JackyJia73 closed this Jun 12, 2024
@JackyJia73 JackyJia73 deleted the stm32wb55 branch June 12, 2024 04:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crippled-firmware dependencies keyboard keymap via Adds via keymap and/or updates keyboard for via support
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants