USB library and build system for ChipWhisperer devices
Also includes other shared driver code (usart_driver, fpga_program code, etc.)
To build, navigate to the directory above this one (i.e. cd ..
) and run make
.
The makefile supports multiple jobs (-j
flag) and supports the following options:
VERBOSE
: If not "false", output the full build command for each file. Defaults to "false"GCCCOLOURS
: If "yes", force gcc to always output coloured text. If auto, leave it up to gcc. Otherwise, do not print colours. Defaults to "yes".
Running make program
will attempt to erase and program the device with the newly built firmware.
- Add this repository as a submodule in the project's firmware directory
- Create a makefile in your project's firmware directory with the following lines:
TARGET = <X>
, where<X>
is your target's name (e.g. ChipWhisperer-Husky)SRC += <SRCFILES>
where<SRCFILES>
are your custom source files (e.g. main.c, others)SRC += <NAEUSBFILES>
where<NAEUSBFILES>
are any source files you need from this directoryLINKERFILE = <LINKERFILE>
where<LINKERFILE>
is the linker file you need to useOPT=<X>
where<X>
is the optimization levelinclude naeusb/makefile.cw
- Add a target entry for your target in
makefile.cw
- If you need to need to add a new HAL, create a new folder and put the files in there
- The following files are required to be in the project's firmware directory
- conf_board.h
- conf_clock.h
- conf_sleepmgr.h
- conf_uart_serial.h
- conf_usb.h
- naeusb_board_config.h
wValue & 0xFF:
- 0xFx: Device specific config
- 0x4x: MPSSE config