Tree [0149ab] /

HTTPS access

File Date Author Commit
 apps 2009-04-03 elphel elphel [70a5a4] rev - upgraded PHP to 5.2.9 - directori...
 configure-files 2009-04-05 elphel elphel [4e90e8] Fixed bug in Makefile
 elphel353 2009-04-13 elphel elphel [0149ab] Removed scanning for nonexistent IDE buses (sho...
 fpga 2009-02-26 dzhimiev dzhimiev [13ad25] 1. added a pause after channel switching - it a...
 helpers 2008-11-27 elphel elphel [144bb1] Initial revision
 libs 2009-04-03 spectr_rain spectr_rain [2af943] deprecated
 modules 2008-12-08 elphel elphel [efb0a5] Restored code accidentally deleted during previ...
 os 2009-04-07 elphel elphel [64316d] Fixed Bayer shift fro 1.3MPix sensor
 packages 2009-04-10 oneartplease oneartplease [ca8902] reverted back to use camogm instead of camogm2
 tools 2008-11-27 elphel elphel [144bb1] Initial revision
 LICENSE 2008-11-27 elphel elphel [144bb1] Initial revision
 README 2008-11-28 elphel elphel [cb09e7] updated to include prep_kdevelop.php
 README.CVS 2008-11-27 elphel elphel [144bb1] Initial revision
 README.flash 2009-04-07 elphel elphel [cdc866] Added more instructions
 README.nfs 2008-11-27 elphel elphel [144bb1] Initial revision
 build_distro 2008-11-27 elphel elphel [144bb1] Initial revision
 configure 2008-11-28 elphel elphel [885e03] "./configure" now renames default Axis RELEASEN...
 diff_srclist_cvs 2008-11-27 elphel elphel [144bb1] Initial revision
 fix_cvs 2008-12-23 elphel elphel [57bfb0] Added fix_cvs - script to fix cvs after after C...
 install_elphel 2009-04-05 elphel elphel [b98c53] Now verifies successful installation
 install_elphel_from_cvs 2009-04-04 elphel elphel [dfccbc] Making the top installation directory be named ...
 ktest 2008-11-27 elphel elphel [144bb1] Initial revision
 ktest_prepare 2009-03-31 spectr_rain spectr_rain [1011cb] runlevel 4 now is used for netboot with kimage
 makefiles_add_axis_header 2008-12-25 landy_ landy_ [664170] Add dropbear and snmp agent to flash image
 netboot 2008-11-27 elphel elphel [144bb1] Initial revision
 nfs_copy 2008-11-27 elphel elphel [144bb1] Initial revision
 prep_kdevelop.php 2008-11-27 elphel elphel [144bb1] Initial revision
 pt_split 2009-04-02 spectr_rain spectr_rain [180045] new command 'rw' to update firmware with images...
 src.list 2009-04-05 elphel elphel [20a0bb] added play_audio.png , target.list
 subdirs.list 2009-04-03 elphel elphel [70a5a4] rev - upgraded PHP to 5.2.9 - directori...
 target.list 2009-04-05 elphel elphel [d1e58c] updated for the new release number

Read Me

What is this about?
This distribution provides files for development of Elphel cameras 
(model 353).

To run this (install_elphel) program you need to have gcc-cris compiler
tools for ETRAX FS processor installed - you may find them
If you already have gcc-cris for ETRAX 100LX installed you may want
to use a different location - this software  supports /usr/local/crisv32
in addition to other directories designated by Axis.

You will also need some other development tools installed on your computer
such as pmake.

This installation needs Internet connection do download some 70 MB of
the software from multiple places. If you already have some of these files
you may place the archives in one directory (new files will be added 
to that directory if needed), if you have devboard-R2_01-distfiles.tar.gz
(106MB) - inflate it first and copy inner archives to that directory.

After you successfully install the software (there is install_elphel script
in the top directory of the software tree) we recommend you to run
./prep_kdevelop.php there (provided you have php5-cli installed) - that
will create elphel353.kdevelop that you can open with KDevelop IDE and use it
for the development of the camera software.

First time you open it KDevelop may crash in the late stages of opening
(when the progress bar in the bottom runs for the second time). Unfortunately
we do not know what is the reason (probably our non-conventional use of this
great system), but the good thing is that after crashing several times it
finally opens and next times it will open from the first attempt.

Please see  for more information.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <>.

General Installation Instructions
You will need a Linux computer, or compatible, with typical host software
development tools installed (gcc etc.)

The elphel software is distributed in the form of a file named
elphel_$REVNUM.tar.gz where $REVNUM varies
(for example, for elphel_6.2.7.tar.gz , $REVNUM is 6.2.7);
please substitute as required.
Change directory to a suitable directory. 
[Note: The recommended directory structure is to place beneath this directory
the elphel_$REVNUM.tar.gz file as well as
the various axis and linux files requested by the elphel_install script
(see below) and as well as the compiler tools directory "cris" needed for
the building the software.]

Unpack the elphel_$REVNUM.tar.gz file:
    gtar xzvf elphel_$REVNUM.tar.gz
This will create a subdirectory elphel_$REVNUM containing the following files:
    README -- this file
    LICENSE -- license to use this software
    install_elphel -- executable installation script
    elphelcamera.tar -- what is installed

Change directory to this subdirectory and run:
This elphel_script is interactive.
You will be prompted for the model number (313 or 323).
You will be prompted for needed files from Axis and Linux and
instructed where to find them; get them onto your computer 
(e.g. using another window) and tell elphel_install where they are placed.
(This includes installing and compiling a version of gcc specifically
for the camera's cpu).
The install_elphel script will ask you where you want to install the
elphel/linux/axis software (excluding the compiler, which you must
have installed elsewhere), and will install it there.
The script will provide you an opportunity to build the software,
or you can build it later (see below).
To later run the tool to actually reflash the camera you will need
low-level access to the network and so will need root privileges.

At the end of installation, if you selected the default output path,
you will have a subdirectory named elphel$MODEL (where $MODEL is 313 or 323).
You can repeat the installation for a different model if desired.
You can change directory to elphel$MODEL to use the software.

Modifying the software
Changing the target (313/323) will require everything to be made all over again,
so it is better just to do a fresh installation.
It is sufficient, however, to return to the directory where you did
./elphel_install and run this command again, this time selecting a different
camera model and a different output directory (selecting default output
directory works).

Also, moving either the directory path of your installation or 
of the cris compiler tools is best handled by doing a fresh installation,
due to problems with "make clean" not removing some files.

You may build the software from the install_elphel script or later. 
To build later:
With your current directory as the directory where the software is installed,
(specified when running ./install_elphel) use one of
the following scripts (generated by the install process):
    ./build -- complete recompilation -- takes a while
    ./rebuild -- optimized, but sometimes buggy, recompilation
The rebuild script is buggy because it is difficult to express all dependencies
properly to make, and make itself has some limits.
However, for many simple changes to files, rebuild is quite adequate and
is much faster than build.
If you encounter any strange problems with rebuild, then run ./build instead.

Or you can do the build the long way:
Setup your environment with
. ./init_env   # requires that your shell be bash
'make help' shows the needed targets. 
First you need to select the product ('make 313' or 'make 323'), 
then use 'make' in the following commands:
   make tools
   make cris-axis-linux-gnu
   make kernel
   make install
   make images
If you'll later modify kernel (drivers) run
   make kernel
   make images
If - any of the applications and related files:
   make install
   make images

General Usage Instructions
To transfer the images to the camera you need:
   1. Put the camera into download mode by holding a pushbutton 
    (under a green dot on the overlay) while appying power (inserting cable)
   2. Run ./flashit (don't forget to '. ./init_env' - you'll see
      "boot_linux: command not found" if you did)
Using ./flashitall (instead of ./flashit) will overwrite boot block 
that also stores the product serial number / ethernet address.
You may need to prefix these commands with "sudo" to gain super user
permission requiredd.

OR -- An alternate approach to transferring images to the camera's flash is
explained in the documentation in the flashstation subdirectory.
The flashstation/reflash script will guide you step by step in a friendly
fashion, including correct network configuration setup.

You may prepare compressed images that can be used by the other OS loader using target:
   make other_os

   Have fun!

Creating a new distribution:
Starting with an installed distribution:
-- Make sure that REVNUM in the main Makefile is updated.
    It may be a fairly arbitrary string; for example, add your own
    name to the end of it (no spaces...).
-- Make sure that any files added are accounted for in src.list .
    Remember that this is a list of files to be added or replaced on top
    of the axis/linux installation.
    If you want a file to NOT exist that came from the axis/linux distribution,
    you will have to modify install_elphel.
-- Run "make distro".  This will create elphel_$REVNUM.tar.gz