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

Wireless with 32u4 #58

Open
Merlin04 opened this issue Apr 29, 2018 · 1 comment
Open

Wireless with 32u4 #58

Merlin04 opened this issue Apr 29, 2018 · 1 comment

Comments

@Merlin04
Copy link
Contributor

I know the 32u4 doesn't have a hardware encryption module, but could you use an external chip?

@ahtn
Copy link
Owner

ahtn commented Apr 30, 2018

It's possible to use a software implementation of AES. I want to be able to support nRF24 + 32u4 as an alternative wireless receiver option. In the legacy atmega8 version the code uses a software implementation of AES.

To use it as a wireless keyboard in the same way as the xmega is a bit harder, but still possible. A couple of limitations:

  • Need to use a 3.3V @8MHz board. Would need to use a Li-Ion battery for power.
  • For the device to enter sleep mode, it needs to setup interrupts on it's column pins so it can detect when a key is pressed and wake up from sleep mode. The 32u4 can't assign pin interrupts on all of its IO pins, so have to pick the column pins carefully.
  • Might need to disable some features to fit into 32kB flash. If using the 1kB kp bootloader, with software AES (~4kB I think), 2kB for layout settings, then only have about 25kB of flash to work with. If you don't replace the 4kB bootloader with an external programmer you're stuck with even less.
  • Latency and battery life will be a slightly worse.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants