Building the firmware locally requires these dependencies ot be installed:
- GCC for ARM Cortex processors
- Make
- Device Firmware Upgrade Utilities
- Zatig (for windows users only)
- Git
The Core/Photon uses an ARM Cortex M3 CPU based microcontroller. All of the code is built around the GNU GCC toolchain offered and maintained by ARM.
The build requires version 4.9.3 20150529 or newer of ARM GCC and will print an error message if the version is older than this.
Linux and Windows:
- Download and install version 4.9.x from: https://launchpad.net/gcc-arm-embedded
OS X users can install the toolchain with Homebrew:
brew tap PX4/homebrew-px4
brew update
brew install gcc-arm-none-eabi-49
arm-none-eabi-gcc --version
(should now say v4.9.x)
If you are upgrading an existing installation you will have to unlink and link your symblinks:
brew update
brew install gcc-arm-none-eabi-49
(when you run this, it will tell you the following commands)brew unlink gcc-arm-none-eabi-48
(example)brew link --overwrite gcc-arm-none-eabi-49
(example)arm-none-eabi-gcc --version
(should now say v4.9.x)
In order to turn your source code into binaries, you will need a tool called make
. Windows users need to explicitly install make
on their machines. Make sure you can use it from the terminal window.
Download and install the latest version from: http://gnuwin32.sourceforge.net/packages/make.htm
Install dfu-util 0.8. Mac users can install dfu-util with Homebrew brew install dfu-util
or Macports, Linux users may find it in their package manager, and everyone can get it from http://dfu-util.gnumonks.org/index.html
In order for the device to show up on the dfu list, you need to replace the USB driver with a utility called Zadig. Here is a tutorial on using it. This is only required for Windows users.
Download and install Git: http://git-scm.com/
- crc32
- available in MinGW on Windows
- available by default on OS X
- linux users, please check with your package manager