Difference between revisions of "2253 Toradex"
(Created page with "This page will guide you in using the [http://sensoray.com/2253 Sensoray Model 2253] with the [http://developer.toradex.com/ Toradex ARM development] boards. You will need a ...") |
|||
(4 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | This page will guide you in using the [http://sensoray.com/2253 Sensoray Model 2253] with the [http://developer.toradex.com/ Toradex | + | This page will guide you in using the [http://sensoray.com/2253 Sensoray Model 2253] with the [http://developer.toradex.com/ Toradex iMX6 development] boards. |
− | You will need a Linux host to cross-compile the driver and demo applications. | + | You will need a Linux host to cross-compile the driver and demo applications. You will need version 1.2.14 or later of the 2253 Linux SDK. After extracting the SDK, create another directory beside it called "toradex". In the "toradex" directory, create a file called "build.sh" containing the following script: |
+ | |||
+ | <pre style="white-space: pre-wrap;"> | ||
+ | #!/bin/sh | ||
+ | set -x | ||
+ | |||
+ | DRIVER=`pwd`/../sdk_x53_linux_1.2.14/driver | ||
+ | |||
+ | if [ ! -d linux-toradex ]; then | ||
+ | git clone -b toradex_imx_3.10.17_1.0.0_ga-next --single-branch git://git.toradex.com/linux-toradex.git | ||
+ | fi | ||
+ | |||
+ | if [ ! -d gcc-linaro ]; then | ||
+ | FILE=gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf.tar.xz | ||
+ | if [ ! -f $FILE ]; then | ||
+ | wget http://releases.linaro.org/14.11/components/toolchain/binaries/arm-linux-gnueabihf/$FILE | ||
+ | fi | ||
+ | tar xf $FILE | ||
+ | ln -s gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf gcc-linaro | ||
+ | fi | ||
+ | |||
+ | export PATH=${PATH}:`pwd`/gcc-linaro/bin | ||
+ | export CROSS_COMPILE=arm-linux-gnueabihf- | ||
+ | export ARCH=arm | ||
+ | |||
+ | cd linux-toradex | ||
+ | |||
+ | if [ x$1 = xclean ]; then | ||
+ | git clean -d -f -x -q | ||
+ | fi | ||
+ | |||
+ | gunzip -c ../config.gz > .config | ||
+ | make oldconfig | ||
+ | make prepare | ||
+ | make scripts | ||
+ | |||
+ | #cp ../Module.symvers.colibri-imx6 Module.symvers | ||
+ | cp ../Module.symvers.apalis-imx6 Module.symvers | ||
+ | |||
+ | KDIR=`pwd` | ||
+ | |||
+ | make -C $KDIR SUBDIRS=$DRIVER clean | ||
+ | make -C $KDIR SUBDIRS=$DRIVER modules | ||
+ | </pre> | ||
+ | |||
+ | You'll also need to copy a file from the board "/proc/config.gz" to the "toradex" directory. | ||
+ | You'll also need "Module.symvers.apalis-imx6" or "Module.symvers.colibri-imx6" from Toradex support. | ||
+ | |||
+ | Now run the build script from a terminal in the "toradex" directory. | ||
+ | |||
+ | <pre> | ||
+ | sh build.sh | ||
+ | </pre> | ||
+ | |||
+ | Now build the demo programs from a terminal in the "sdk_x53_linux_1.2.14" directory. | ||
+ | |||
+ | <pre> | ||
+ | cd ../sdk_x53_linux_1.2.14 | ||
+ | make demo_armhf | ||
+ | </pre> | ||
+ | |||
+ | If the overlay example is required, build it using the cross compiler in the "sdk_x64_linux_1.2.14" directory. (The ImageMagick libraries will not be used due to cross-compiling, resulting in styled fonts not being available.) | ||
+ | |||
+ | <pre> | ||
+ | cd ../sdk_x53_linux_1.2.14/overlay | ||
+ | ../../toradex/gcc-linaro/bin/arm-linux-gnueabihf-gcc -I ../driver overlay.c -o overlay | ||
+ | </pre> | ||
+ | |||
+ | Now copy the whole "sdk_x53_linux_1.2.14" directory to the Toradex board, and run the following commands in the terminal (as root) | ||
+ | |||
+ | <pre> | ||
+ | cd sdk_x53_linux_1.2.14/driver | ||
+ | cp s2253.fw /lib/firmware/ | ||
+ | mkdir -p /lib/modules/`uname -r`/extra | ||
+ | cp s2253.ko /lib/modules/`uname -r`/extra/ | ||
+ | depmod -a | ||
+ | modprobe s2253 | ||
+ | </pre> | ||
+ | |||
+ | The driver is now loaded on the board, and should load automatically whenever the 2253 device is plugged in. You can check "<code>dmesg|tail</code>" to verify the driver is loaded and 3 V4L2 "<code>/dev/video</code>" nodes are created. | ||
+ | |||
+ | To run the "demo.py" demonstration program, you will need to install these python packages first: | ||
+ | |||
+ | <pre> | ||
+ | opkg install \ | ||
+ | python \ | ||
+ | python-pygtk \ | ||
+ | python-ctypes \ | ||
+ | python-threading \ | ||
+ | python-subprocess \ | ||
+ | python-mmap | ||
+ | </pre> | ||
+ | |||
+ | There is no "mplayer2" package, so the "preview" button in the demo will not work. Instead, preview can be done using gstreamer using this command: | ||
+ | |||
+ | <pre style="white-space: pre-wrap;">gst-launch-0.10 v4l2src device=/dev/video0 ! 'video/x-raw-yuv,width=720,height=480,framerate=30000/1001' ! ffmpegcolorspace ! ximagesink | ||
+ | </pre> | ||
+ | |||
+ | To record from the terminal, use "<code>./capture</code>" (use -h to see options) or read "README.txt" for examples. | ||
+ | |||
+ | [[Category:2253|Toradex]] |
Latest revision as of 11:03, 4 June 2020
This page will guide you in using the Sensoray Model 2253 with the Toradex iMX6 development boards.
You will need a Linux host to cross-compile the driver and demo applications. You will need version 1.2.14 or later of the 2253 Linux SDK. After extracting the SDK, create another directory beside it called "toradex". In the "toradex" directory, create a file called "build.sh" containing the following script:
#!/bin/sh set -x DRIVER=`pwd`/../sdk_x53_linux_1.2.14/driver if [ ! -d linux-toradex ]; then git clone -b toradex_imx_3.10.17_1.0.0_ga-next --single-branch git://git.toradex.com/linux-toradex.git fi if [ ! -d gcc-linaro ]; then FILE=gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf.tar.xz if [ ! -f $FILE ]; then wget http://releases.linaro.org/14.11/components/toolchain/binaries/arm-linux-gnueabihf/$FILE fi tar xf $FILE ln -s gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf gcc-linaro fi export PATH=${PATH}:`pwd`/gcc-linaro/bin export CROSS_COMPILE=arm-linux-gnueabihf- export ARCH=arm cd linux-toradex if [ x$1 = xclean ]; then git clean -d -f -x -q fi gunzip -c ../config.gz > .config make oldconfig make prepare make scripts #cp ../Module.symvers.colibri-imx6 Module.symvers cp ../Module.symvers.apalis-imx6 Module.symvers KDIR=`pwd` make -C $KDIR SUBDIRS=$DRIVER clean make -C $KDIR SUBDIRS=$DRIVER modules
You'll also need to copy a file from the board "/proc/config.gz" to the "toradex" directory. You'll also need "Module.symvers.apalis-imx6" or "Module.symvers.colibri-imx6" from Toradex support.
Now run the build script from a terminal in the "toradex" directory.
sh build.sh
Now build the demo programs from a terminal in the "sdk_x53_linux_1.2.14" directory.
cd ../sdk_x53_linux_1.2.14 make demo_armhf
If the overlay example is required, build it using the cross compiler in the "sdk_x64_linux_1.2.14" directory. (The ImageMagick libraries will not be used due to cross-compiling, resulting in styled fonts not being available.)
cd ../sdk_x53_linux_1.2.14/overlay ../../toradex/gcc-linaro/bin/arm-linux-gnueabihf-gcc -I ../driver overlay.c -o overlay
Now copy the whole "sdk_x53_linux_1.2.14" directory to the Toradex board, and run the following commands in the terminal (as root)
cd sdk_x53_linux_1.2.14/driver cp s2253.fw /lib/firmware/ mkdir -p /lib/modules/`uname -r`/extra cp s2253.ko /lib/modules/`uname -r`/extra/ depmod -a modprobe s2253
The driver is now loaded on the board, and should load automatically whenever the 2253 device is plugged in. You can check "dmesg|tail
" to verify the driver is loaded and 3 V4L2 "/dev/video
" nodes are created.
To run the "demo.py" demonstration program, you will need to install these python packages first:
opkg install \ python \ python-pygtk \ python-ctypes \ python-threading \ python-subprocess \ python-mmap
There is no "mplayer2" package, so the "preview" button in the demo will not work. Instead, preview can be done using gstreamer using this command:
gst-launch-0.10 v4l2src device=/dev/video0 ! 'video/x-raw-yuv,width=720,height=480,framerate=30000/1001' ! ffmpegcolorspace ! ximagesink
To record from the terminal, use "./capture
" (use -h to see options) or read "README.txt" for examples.