STM32F401 based oscilloscope-footswitch interface using USBTMC.
Hardware is licensed CC-BY-SA-4.0 Software is GPLv3 for easy license compatibility with ChibiOS
Links:
Tools:
Other versions may work, this is just what is currently tested
HW:
- KiCAD 5.0.1
SW:
- arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors 7-2018-q2-update) 7.3.1 20180622 (release) [ARM/embedded-7-branch revision 261907]
- GNU gdb (GNU Tools for ARM Embedded Processors 7-2018-q2-update) 8.1.0.20180315-git
- ChibiOS-RT with community USB Host framework
- libopencm3 and DFU code from BlackMagicProbe
This repo uses several submodules, make sure they are up to date. After checking out the kicad-library repo, make sure to cd to it and run make to generate the actual KiCAD libraries.
SW Build Process:
- Make sure the arm-none-eabi toolchain is on your path:
which arm-none-eabi-gcc
- Pre-build the libopencm3 library:
cd sw/ext/libopencm3 && make -j && cd ../../..
- Build the bootloader:
cd sw/bootloader && make -j && cd ../..
- Build the main application:
cd sw/scope-footswitch && make -j && cd ../..
SW Programming process:
- Connect SWD debugger (e.g. blackmagicprobe) to hardware
- Connect micro-usb from pc to hardware
cd sw/bootloader
./flash.sh
- Power cycle hardware, holding down the front panel button to force entry to the bootloader
cd ../scope-footswitch
./dfu.sh