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

Teensy 3 Support #140

Closed
bgould opened this issue Nov 1, 2014 · 3 comments
Closed

Teensy 3 Support #140

bgould opened this issue Nov 1, 2014 · 3 comments

Comments

@bgould
Copy link
Contributor

bgould commented Nov 1, 2014

I've got preliminary support for Teensy 3.0/3.1 working... I based my work on the mbed stuff from the dev branch and was able to get ps2_usb working

I merged the dev branch into the master branch, and then added Teensy 3 support on top of that, so it should merge pretty cleanly with your master branch if/when you choose to do so

My implementation probably needs a little bit of cleaning up, especially since I'm fairly certain I broke the other builds :)

Nevertheless, here the branch with my changes if you'd like to take a look:

bgould/tmk_keyboard@tmk:master...2219257

Also, the following things aren't working yet:

  • no NKRO yet
  • scroll wheel left and right don't appear to be available in the Teensy 3 libraries
  • only 8 media keys for consumer keys
  • no system keys
  • need to use teensy_gateway program instead of hid_listen for debug console
  • EEPROM not implemented, thus BOOTMAGIC does not work
  • command.c does not compile yet; thus COMMAND_ENABLE does not work

If you're interested in merging in any of these changes I can do whatever cleanup is necessary first and do a pull request

Thanks

@tmk
Copy link
Owner

tmk commented Nov 2, 2014

Great job! I'll look into your code.

I have a plan to support Cortex MCUs with mbed library and its HAL layer code. If I can understand it correctly, to support new Cortex MCU what we need to do is just to write HAL code for it. And HAL code of many MCUs are already written in mbed community and its number will grow further.
I'll support Teensy3 this way some day in future but its process is slow like snail 🐌

@bgould
Copy link
Contributor Author

bgould commented Nov 2, 2014

I had never heard of HAL before, it looks interesting, and seems like a good plan.

The USB libraries are pretty limited on the Teensy 3, such as no left-right mouse wheel support, limited consumer key support and no system keys support... I may dig into into that at some point. However the core TMK system needed almost no modification outside of the refactoring that you already did for mbed... PJRC did a lot in the Teensy 3 libraries for AVR libc compatibility (such as providing an avr/pgmspace.h and other avr/* header files) so my time was mostly spent on the build system. I'm using this ofr my currnet project so I should know more in the future about any pitfalls.

BTW I'm always impressed with how well you have things architected and your attention to detail when I dig through your code, its very nice to work with :)

@tmk
Copy link
Owner

tmk commented Jan 19, 2015

Cortex-M(mbed) support was integrated now.

@tmk tmk closed this as completed Jan 19, 2015
seancaffery pushed a commit to seancaffery/tmk_keyboard that referenced this issue Feb 21, 2016
A slightly different default layout
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants