MityCAM Software Development¶
This page provides basic build instructions and developer's notes for building the MityCAM embedded ARM linux application and FPGA image for the MityCAM family of cameras.
Host Development Requirements¶
In order to develop ARM applications for the MityCAM camera, you need to setup and configure a linux development host and install the Altera Embedded Design software developer's kit. Currently, the ARM software is build using the kit from version TBD. In addition, you will need the following additional software packages:
Ubuntu Packages Required¶
subversion git build-essential autoconf
Contents of MityCAM repository area¶
Once you have been granted access to the software, you will need to use subversion to check out the software to your linux development platform. You must have a valid user name and password to access the data.
A list of the key software directories that should be contained in the checkout is shown below.
+---build +---hw | +---fpga <-- fpga VHDL code and projects for all MityCAM variants | +---ip | +---CIS1910 | +---CIS2521 | +---CMV8000_CL +---sw +---3rdparty <-- 3rd party software libraries used by ARM software +---ARM <-- ARM software and scripts | +---camera_software <-- main project directory for camera_application ARM program | | +---src | | +---CommandHandlers | | +---CommandInterface | | +---IOChannel | | +---Sensors | | +---StatusReporter | | +---Utility | +---common <-- Common software files | +---etc <-- scripts to install on embedded linux /etc folder | +---libdaq <-- library for I2C based ADCs and LED controllers | +---libfpga <-- common library for FPGA control code | +---pages <-- python and html pages to be installed on /www/pages on embedded linux +---configurations +---docs +---PC | +---camlink_panel <-- Source code for Camera Link control panel +---scripts <-- Misc scripts for startup, etc.
Building the Images¶
Building the ARM application (camera_application)¶
The ARM application builds using the GNU autoconfigure packages. Use the MityCAM-Yocto toolchain. Change directories to the sw/ARM/camera_software folder.
toolchain from /shared/projects/MityCAM-jenkins/intermediates/MityCAM-Yocto/latest:
cd sw/ARM/camera_software source /opt/poky/2.4.3/environment-setup-cortexa9hf-neon-poky-linux-gnueabi ./configure --host=arm-poky-linux-gnueabi make make DESTDIR=$PWD/ARM install
Using Qt Creator as editor¶
Note: Need to run ./configure and make atleast once
Note: Need to launch qtcreator from shell that has sourced toolchain
- Enable AutotoolsProjectManager
- Help -> About Plugins
- Check "AutotoolsProjectManager"
- Restart QtCreator
- File -> Open File or Project
- Select Makefile.am in sw/ARM/camera_software
- Launch qtcreator so we can edit clang options https://wiki.qt.io/Qt_Creator_Clang_Code_Model#Internal_command_line
QTC_CLANG_NO_DIAGNOSTIC_CHECK=1 qtcreator
- Update clang options
- Goto Projects on left side
- Select "Clang Code Model"
- Change Global to Custom
- Select "Clang-only checks for almost everything" and hit Copy...
- Add system include path to cross compiler into clang options
-isystem /opt/poky/2.4.3/sysroots/cortexa9hf-neon-poky-linux-gnueabi/usr/include
- OK
- Set "Diagnostic Configuration" to new copy
Building the FPGA¶
In order to build the FPGA, in addition to the Altera Embedded Design Suite, you will need to install the Altera Quartus development software. You should be able to build the FPGA using web-pack licenses.
Building the complete filesystem (TBC)¶
Building the kernel / kernel modules¶
Go to top