Difference between revisions of "AXIOM Beta Firmware Version 2.0"

From apertus wiki
Jump to: navigation, search
Line 20: Line 20:
* <code>halt_manual.sh</code> was renamed to <code>stop.sh</code>
* <code>halt_manual.sh</code> was renamed to <code>stop.sh</code>
* <code>cmv_snap3</code> was renamed to <code>axiom-snap</code>
* <code>cmv_snap3</code> was renamed to <code>axiom-snap</code>
* <code>axiom-sequencer_start.sh</code> starts the continuous image acquisition (HDMI output).
* <code>axiom-sequencer_stop.sh</code> stops the continuous image acquisition (HDMI output).
** For example : <code>./cmv_snap3 -e 20ms -z</code> is now done by typing <code>sudo axiom-snap -e 20ms -z</code>
** For example : <code>./cmv_snap3 -e 20ms -z</code> is now done by typing <code>sudo axiom-snap -e 20ms -z</code>
* Image build log is located in each image under: <code>/var/build.log</code>  
* Image build log is located in each image under: <code>/var/build.log</code>  

Revision as of 16:17, 4 May 2020

1 Prepare Micro SD Card

  1. Get a new Micro SD card (4GB is enough, bigger is fine as well, but the partitions are not yet automatically resized when a bigger SD card is detected).
  2. Acquire the latest automatically built firmware image from: https://github.com/apertus-open-source-cinema/axiom-beta-firmware/releases - don't be alarmed by the name "Unstable Development Snapshot" it just means the firmware has been automatically built without human interaction.
  3. Download, install and start Etcher: https://www.balena.io/etcher/
  4. Flash the acquired image to a new Micro SD card with Etcher (we highly recommend not overwriting the Micro SD card you currently use in your AXIOM Beta).
  5. After flashing put the Micro SD card into the AXIOM Beta Microzed SD card slot and power up the Beta.

2 Notes

This new firmware is still in development so expect issues and bugs.

This is the list of current issues/bugs: https://github.com/apertus-open-source-cinema/axiom-beta-firmware/issues

If you find a new bug or have ideas for improvement please add it as github issue (please first check it has not been reported yet).

  • Default user is now operator and password: axiom
  • Sudo is required to change system/camera settings (like running the various scripts)
  • All camera related programs and scripts are now prefixed with axiom- (for example to run set_gain.sh use run axiom-set_gain.sh). They are now executable from anywhere.
  • kick_manual.sh was renamed to start.sh
  • halt_manual.sh was renamed to stop.sh
  • cmv_snap3 was renamed to axiom-snap
  • axiom-sequencer_start.sh starts the continuous image acquisition (HDMI output).
  • axiom-sequencer_stop.sh stops the continuous image acquisition (HDMI output).
    • For example : ./cmv_snap3 -e 20ms -z is now done by typing sudo axiom-snap -e 20ms -z
  • Image build log is located in each image under: /var/build.log
  • Devicetree source can be found at /boot/devicetree.dts. To recompile it after any changes use dtc -O dtb -o /boot/devicetree.dtb /boot/devicetree.dts
  • To interrupt the autoboot from u-boot send Ctrl-C over serial quickly after a boot / reboot (try holding it down)
  • axiom-file-check.sh does an integrity check of /usr, /etc and /opt
  • Binaries are linked in: /usr/axiom/bin
  • Scripts are linked in: /usr/axiom/script
  • /opt/axiom-firmware contains scripts and binaries
  • Every AXIOM Beta currently has the same MAC address - a random one should be generated on the first boot, but this is not implemented yet.
  • Second Micro SD card slot is enabled by default.
  • Factory Calibration Routines have been forked for firmware 2.0: Factory_Calibration_(firmware_2.0)


2.1 FPGA Bitstreams

  • FPGA bitstreams are located in /usr/lib/firmware and softlinked to from /opt/bitstreams/
  • *.bit files (from old firmware) need to be converted to *.bin files (for new firmware) with:/opt/axiom-firmware/makefiles/in_chroot/to_raw_bitstream.py -f input_file.bit output_file.bin
  • make sure to load new bitstreams as root (sudo su) and not with sudo or use echo axiom-fpga-main.bin | sudo tee /sys/class/fpga_manager/fpga0/firmware

Further documentation: