Pages

Thursday 22 November 2012

Vivotek 8102

Having a look at the Vivotek video server with local SD storage. Pictures are ok... need to set up my test tunnel before testing the sensitivity.

Sunday 18 November 2012

Ardiuno data logger?

Random thoughts..

As I run out of time, I'm thinking of dropping the USB capture devices - but I won't have time to develop a solution without one. (I believe something like run ridge SDK on the leopard board and a video capture module is going to take me too long.) For this year a video server is looking more feasible - but it leaves the 1-wire data logging high and dry.

So a Vivotek 8102 is on it's way for testing - "just in case".

Running an addition arm board for the 1wire is overkill and battery intensive.

At a glance standalone dataloggers are a +£50ea
good ones, (Tiny tag),  +£100ea




Thinking about alternative remote 1-wire for less power consumption than an ARM board...

Ardiuno plus data logger shield (SD card + real time clock + 1 wire interface)

http://uk.farnell.com/arduino/a000066/eval-atmega328p-8bit-uno-rv3/dp/2075382


http://www.nuelectronics.com/estore/index.php?main_page=product_info&cPath=7&products_id=20


Given that there is already a datalogger sketch written for this, it's really tempting... but if we only need one logger per tunnel, and one exterior logger; is it worth it? Probably not... but at £30 for the base unit and £12 a sensor it might be worth a look at.

See also the SDcard libraries in this arduino weather station;


http://sourceforge.net/projects/arduinoweather/files/

Sunday 11 November 2012

OLinuxino IMX233 Maxi

Looking around for help building the IMX233 kernel with em28xx/easycap/w1 et al....

Found some stuff...

https://www.olimex.com/forum/index.php?topic=101.0
https://www.olimex.com/forum/index.php?topic=160.0

Kernel:
git clone --depth=1 git://git.freescale.com/imx/linux-2.6-imx.git linux-2.6-imx

Olinuxino patches:
git clone --depth=1 git://github.com/archlinuxarm/PKGBUILDs.git alarm

Also you will need to build the boot code (imx-bootlets), the build script at top will does it for you.

Here is the offical alarm kernel build "script":
https://github.com/archlinuxarm/PKGBUILDs/blob/master/core/kernel26-olinuxino/PKGBUILD

https://www.olimex.com/forum/index.php?topic=101.0 



what about 3.6 kernel?

https://github.com/koliqi/imx23-olinuxino/blob/master/Building%20a%20kernel%20%20for%20the%20OLinuXino.md


Read some friendly manuals

https://wiki.archlinux.org/index.php/Kernels/Compilation/Arch_Build_System
http://archlinuxarm.org/developers/building-packages
https://wiki.archlinux.org/index.php/Post_Installation_Tips


Finally I ended up here;

https://github.com/OLIMEX/archlinuxarm-olinuxino/tree/master/olinuxino/kernel26-olinuxino


I think at some point a prebuilt 3.x image will turn up for idiots like me, meanwhile...

(take note that the readme begins with 'don't use these instructions...')

git clone git://github.com/OLIMEX/archlinuxarm-olinuxino.git
cd archlinuxarm-olinuxino/olinuxino/kernel26-olinuxino/
nano PKGBUILD <- uncomment 'make menuconfig'

get any missing dependencies...
pacman -S docbook-xsl xmlto
makepkg --asroot


later, next day...
some error about building ds2751 stuff.

  CC [M]  drivers/w1/slaves/w1_ds2751.o
drivers/w1/slaves/w1_ds2751.c: In function ‘w1_f51_read_bin’:
drivers/w1/slaves/w1_ds2751.c:112:2: error: expected ‘;’ before ‘if’
drivers/w1/slaves/w1_ds2751.c: At top level:
drivers/w1/slaves/w1_ds2751.c:258:2: warning: initialization from incompatible pointer type [enabled by default]
drivers/w1/slaves/w1_ds2751.c:258:2: warning: (near initialization for ‘w1_f51_bin_attr.read’) [enabled by default]
drivers/w1/slaves/w1_ds2751.c:259:2: warning: initialization from incompatible pointer type [enabled by default]
drivers/w1/slaves/w1_ds2751.c:259:2: warning: (near initialization for ‘w1_f51_bin_attr.write’) [enabled by default]
make[3]: *** [drivers/w1/slaves/w1_ds2751.o] Error 1
make[2]: *** [drivers/w1/slaves] Error 2
make[1]: *** [drivers/w1] Error 2
make: *** [drivers] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
 

Trying again without ds2751 stuff... I don't think my humidity sensor is using that one anyway.
(2438 and temp and the em28xx)

Try and do the em28xx patch...

wget https://dl.dropbox.com/u/15065328/em28xx-Fix-height-setting-on-non-progressive-captures.patch 

put patch and md5sum in the PKGBUILD
do not pass GO, do not collect £200.


 makepkg --asroot


Failed again - got as far as depmod...
DEPMOD  2.6.35-4-OLinuXino-ARCH+
ERROR: could not open directory /home/archlinuxarm-olinuxino/olinuxino/kernel26-olinuxino/pkg/kernel26-olinuxino/usr/lib/modules/2.6.35-4-OLinuXino-ARCH+: No such file or directory
FATAL: could not search modules: No such file or directory
make: *** [_modinst_post] Error 1



as per the warning; 'Warning: you may need to install module-init-tools'

pacman -S module-init-tools

just for fun...

 makepkg --asroot

==> Finished making: kernel26 2.6.35.3-4 (Tue Nov 13 06:24:02 CST 2012)
 

hooray!

need to install bootlets and elf

cd ../imx-bootlets-olinuxino
makepkg --asroot
pacman -U imx-bootlets-olinuxino-10.12.01-1-arm.pkg.tar.xz

cd ../elftosb
makepkg --asroot
pacman -U elftosb-10.12.01-1-arm.pkg.tar.xz

now back to the kernel

cd ../kernel26-olinuxino
pacman -U kernel26-olinuxino-2.6.35.3-4-arm.pkg.tar.xz

answer the scary questions

reboot

low and behold - pictures!
my kworld USB2800 (em28xx) is showing pictures with intermittent green/pink flashing.

I'll have a look at 3.6 kernels and try the stk1160 next.

Saturday 10 November 2012

Not Fixing em28xx on Beaglebone

fixing em28xx on Beaglebone

ATTENTION - Method below almost worked, but didn't.

Horizontal pink and green bars across the image... but at least there was an image. That's better than a green screen, isn't it?

I really liked the Beaglebone. I really wanted it to work. The easycap driver sort of worked, but wasn't stable enough to leave in a field. (although it seems ok at 320x240). The stk1160 driver experiences similar break up to the images I've seen of it running on the raspberry pi. (if you are reading this - I know you're working on the latter!).

It looks like the full Beagleboard xM might be the next contender. More money than I'd hoped to spend, and more power, but 1-wire and rtc and already on the board.








Having another go...



from my ubuntu 12.04 beaglebone;

using http://elinux.org/BeagleBoardUbuntu as a guide

did this http://elinux.org/BeagleBoardUbuntu#Install_Latest_Kernel_Image

export DIST=oneiric  (options are lucid/maverick/natty/oneiric/precise/squeeze/wheezy)
export ARCH=armel (options are armel/armhf (armhf only for precise))

Beagle/Panda
export BOARD=omap

BeagleBone
export BOARD=omap-psp

wget http://rcn-ee.net/deb/${DIST}-${ARCH}/LATEST-${BOARD}
wget $(cat ./LATEST-${BOARD} | grep STABLE | awk '{print $3}')
/bin/bash install-me.sh

reboot!


naturally it blew away my 1307rtc, (remember http://bufobufomagic.blogspot.co.uk/2012/08/1-wire-and-blinking-leds.html) so...


got the headers from http://rcn-ee.net/deb/precise-armhf/v3.2.32-psp25/

wget http://rcn-ee.net/deb/precise-armhf/v3.2.32-psp25/linux-headers-3.2.32-psp25_1.0precise_armhf.deb



installed the headers


dpkg -i linux*2.6.38-7.37*.deb
 

cd /usr/src/linux-headers-3.2.32-psp25/


Get source


cd /home/stuff
wget http://rcn-ee.net/deb/precise-armhf/v3.2.32-psp25/patch-3.2-psp25.diff.gz

wget http://rcn-ee.net/deb/precise-armhf/v3.2.32-psp25/defconfig

wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.2.tar.bz2


tar xjf linux-3.2.tar.bz2 
cd linux-3.2
zcat /home/stuff/patch-3.2.32-psp25.diff.gz | patch -p1

cp /home/stuff/defconfig .config


change build symlink!


restore the 1307




nano arch/arm/mach-omap2/board-am335xevm.c

Add to the existing static struct i2c_board_info __initdata cape_i2c_boardinfo
{
                I2C_BOARD_INFO("ds1307", 0x68),
},

Config changes/checks; (looks ok as it is?)
 CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
remove support for the OMAP RTC driver
I2C RTC drivers
CONFIG_RTC_DRV_DS1307=y


try patching em28xx while we're here...

make a new kernel





Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License