Skip to content

cyril-L/keybi_firmware

master
Switch branches/tags
Code
This branch is 30 commits ahead, 80 commits behind Nitrokey:master.
Contribute

Latest commit

Started the keyboard matrix driver and a keymap, tested on prototype PCB
e20066d

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 

[WIP] Keybi, keyboard and security key firmware

A minimal keyboard and mouse interface added to the original Nitrokey Pro firmware.

WIP keyboard firmware

Overview

The STM32F103 microcontroller is used by popular smart card related open-source projects like Nitrokey Pro and Gnuk. Using the USB and smart card interfaces leaves about 40 IOs that could be used for our keyboard matrix wiring needs.

Development is currently made on a Nucleo-F103RB development board, wired to a USB connector and a smart card jack (to be fitted with an OpenPGP Card 2.1). The wiring is described in the hardware design of the Nitrokey Pro device. Alternatively, get any other development board equipped with a STM32F103TB and 128KB flash, or design your own keyboard PCB!

Building and Flashing

make [VID=0x20a0] [PID=0x4108] firmware

Parameters:

  • VID: Define Vendor ID
  • PID: Define Product ID

Flashing will depend on your board design. You don't need dedicated hardware for the Nucleo-F103RB, it integrates the ST-LINK debugger/programmer. For custom boards, you will need to use a programmer supporting SWD, like the Black Magic Probe.

The firmware is currently built to be located at address 0x08002000, you will need to flash the first 0x2000 bytes with the dapboot bootloader.

Find more information on the Nitrokey Pro repository.

Releases

No releases published

Packages

No packages published

Languages

  • C 93.2%
  • Assembly 4.4%
  • C++ 1.4%
  • Other 1.0%