embeded/raspberry pi2015. 8. 20. 09:58


로그를 보니.. 2프레임이 머니.. 2프레임이 -_-

[1978205048] [NTC] [ALL] [Aug 19 22:48:49] motion_startup: Using log type (ALL) log level (WRN)

[1] [ALR] [VID] [Aug 19 22:48:49] mmalcam_start: MMAL Camera thread starting... for camera (vc.ril.camera) of 1024 x 576 at 2 fps

[1] [ALR] [VID] [Aug 19 22:48:49] mmalcam_start: MMAL Camera using video capture

[1] [ALR] [VID] [Aug 19 22:55:37] MMAL Camera cleanup 


아마도.. 여기 설정에 영향을 받는거 같은데..

프레임 바꾸고 해봐야겠다.

# Maximum number of frames to be captured per second.

# Valid range: 2-100. Default: 100 (almost no limit).

framerate 1


############################################################

# OpenMax/MMAL camera support for Raspberry Pi

############################################################

mmalcam_name vc.ril.camera


요건 카메라 장착 안하고 MMAL motion 실행파일 구동할때의 에러

조금은 속아주고 돌아갈줄 알았더니..췟

[1] [ERR] [VID] [Aug 20 09:54:36] Failed to create MMAL camera component create_camera_component 



'embeded > raspberry pi' 카테고리의 다른 글

라즈베리 카메라 관련  (0) 2015.08.21
motion는 쓸만한게 아니었나..  (0) 2015.08.21
MMAL motion  (0) 2015.08.19
라즈베리 파이 터치 LCD(3.5인치 waveshare) evtest  (0) 2015.08.19
wayland 설정  (0) 2015.08.19
Posted by 구차니
embeded/raspberry pi2015. 8. 19. 09:56


$ file *

motion:              ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0x9d62823dd8a3ad9bcbda27d7736ddbddcced768b, not stripped

motion-mmal.tar.gz:  gzip compressed data, from Unix, last modified: Mon Nov 18 03:06:06 2013

motion-mmalcam.conf: ASCII text, with very long lines



2015/08/09 - [개소리 왈왈/라즈베리 파이(rpi)] - MMAL - Multi-Media Abstraction Layer





$ sudo apt-get install motion

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다

상태 정보를 읽는 중입니다... 완료

다음 패키지를 더 설치할 것입니다:

  ffmpeg libav-tools libavdevice53 libavfilter2 libavfilter3 libavresample1

  libmysqlclient18 libopencv-core2.3 libopencv-imgproc2.3 libpq5 mysql-common

제안하는 패키지:

  frei0r-plugins mysql-client postgresql-client

다음 새 패키지를 설치할 것입니다:

  ffmpeg libav-tools libavdevice53 libavfilter2 libavfilter3 libavresample1

  libmysqlclient18 libopencv-core2.3 libopencv-imgproc2.3 libpq5 motion

  mysql-common

0개 업그레이드, 12개 새로 설치, 0개 제거 및 0개 업그레이드 안 함.

6,247 k바이트 아카이브를 받아야 합니다.

이 작업 후 18.0 M바이트의 디스크 공간을 더 사용하게 됩니다.

계속 하시겠습니까 [Y/n]?


$ sudo apt-get remove motion

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다

상태 정보를 읽는 중입니다... 완료

다음 패키지가 자동으로 설치되었지만 더 이상 필요하지 않습니다:

  ffmpeg libmysqlclient18 libpq5 mysql-common

Use 'apt-get autoremove' to remove them.

다음 패키지를 지울 것입니다:

  motion

0개 업그레이드, 0개 새로 설치, 1개 제거 및 0개 업그레이드 안 함.

이 작업 후 758 k바이트의 디스크 공간이 비워집니다.

계속 하시겠습니까 [Y/n]?

(데이터베이스 읽는중 ...현재 85877개의 파일과 디렉터리가 설치되어 있습니다.)

motion 패키지를 지우는 중입니다 ...

[....] Stopping motion detection daemon: motionNo /usr/bin/motion found running; none killed.

. ok

[....] Stopping motion detection daemon: motionNo /usr/bin/motion found running; none killed.

. ok

man-db에 대한 트리거를 처리하는 중입니다 ...


$ vi motion-mmalcam.conf

# Start in daemon (background) mode and release terminal (default: off)

daemon on


# Restrict stream connections to localhost only (default: on)

stream_localhost off


# Image width (pixels). Valid range: Camera dependent, default: 352

width 1024


# Image height (pixels). Valid range: Camera dependent, default: 288

height 576


# Maximum number of frames to be captured per second.

# Valid range: 2-100. Default: 100 (almost no limit).

framerate 1



$ sudo ./motion -c motion-mmalcam.conf

[1978205048] [NTC] [ALL] conf_load: Processing thread 0 - config file motion-mmalcam.conf

[1978205048] [NTC] [ALL] motion_startup: Motion mmaltest Started

[1978205048] [NTC] [ALL] motion_startup: Logging to file (/home/pi/motion.log) 


프레임이나 해상도 등은 좀 손을 봐야 할 듯.. 한 1/5 프레임 겨우 나오는 기분?



[링크 : https://www.dropbox.com/s/0gzxtkxhvwgfocs/motion-mmal.tar.gz]

    [링크 : http://embeddedday.com/.../a-step-further/install-motion-mmal/] June 21, 2014 at 22:52 ?


+ 2016.06.23

[링크 : https://www.dropbox.com/s/jw5r1wss32tdibb/motion-mmal-opt.tar.gz] Mon Apr 21, 2014 5:16 pm

    [링크 : https://www.raspberrypi.org/forums/viewtopic.php?t=75240]

[링크 : https://www.dropbox.com/s/xdfcxm5hu71s97d/motion-mmal.tar.gz]

    [링크 : https://www.raspberrypi.org/forums/viewtopic.php?t=44966] Sat May 25, 2013 11:06 am

[링크 : http://www.hardcopyworld.com/gnuboard5/bbs/board.php?bo_table=lecture_rpi&wr_id=10]

    [링크 : https://github.com/dozencrows/motion/tree/mmal-test]



MMAL README

-----------

This is an experimental version of motion that adds support for the

Raspberry Pi's CSI camera module, via the MMAL API.


As such, this branch has been stripped down to just the code and

some supporting files, and does not at this time contain a means

to build the code. Generated code files have been pre-created

using the original's configure script (see config.h).


Downloading: a temporary prebuilt binary for Raspberry Pi is available at this link:

https://www.dropbox.com/s/jw5r1wss32tdibb/motion-mmal-opt.tar.gz


Known working resolutions:


352 x 288

512 x 288

640 x 480

768 x 432

768 x 576

1024 x 576


[링크 : https://github.com/dozencrows/motion/tree/mmal-test]

'embeded > raspberry pi' 카테고리의 다른 글

motion는 쓸만한게 아니었나..  (0) 2015.08.21
MMAL motion 로그  (0) 2015.08.20
라즈베리 파이 터치 LCD(3.5인치 waveshare) evtest  (0) 2015.08.19
wayland 설정  (0) 2015.08.19
라즈베리 파이 2 / wayland 도전.. ㅠㅠ  (0) 2015.08.18
Posted by 구차니
embeded/raspberry pi2015. 8. 19. 09:50

해당 모델에서 사용하는 칩셋은 ads7846


누르고

점점 세게 누르고

떼고


압력에 따라서 값이 달라지긴 한데..

이걸 써먹을수 있으려나? 보호필름 달면 드럽게 안올라가던데..


그냥 필름없이 바로 하니 205 까지는 올라간다.


Event: time 1439945224.789919, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 152

Event: time 1439945224.799965, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 153

Event: time 1439945224.822859, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 155

Event: time 1439945225.479842, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 162

Event: time 1439945225.509437, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 163

Event: time 1439945225.812238, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 173

Event: time 1439945225.830184, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 174

Event: time 1439945225.849968, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 175

Event: time 1439945225.869278, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 176

Event: time 1439945226.159871, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 187

Event: time 1439945226.179620, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 188

Event: time 1439945226.189809, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 189

Event: time 1439945226.219863, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 190

Event: time 1439945226.893102, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 203

Event: time 1439945227.319814, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 201

Event: time 1439945227.329829, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 200

Event: time 1439945227.339833, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 198

Event: time 1439945227.349994, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 195

Event: time 1439945227.369588, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 186

Event: time 1439945227.379788, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 172

Event: time 1439945227.389826, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 159

Event: time 1439945229.039928, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 116

Event: time 1439945229.049997, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 80

Event: time 1439945229.069485, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 0



'embeded > raspberry pi' 카테고리의 다른 글

MMAL motion 로그  (0) 2015.08.20
MMAL motion  (0) 2015.08.19
wayland 설정  (0) 2015.08.19
라즈베리 파이 2 / wayland 도전.. ㅠㅠ  (0) 2015.08.18
라즈베리 파이 wayland(weston)은.. 실패 ㅠㅠ  (0) 2015.08.18
Posted by 구차니
embeded/raspberry pi2015. 8. 19. 09:37

음.. gnome 처럼 좀.. 간편하게 추가하는 유틸리티는 아직 없으려나.

죄다 weston.ini로 하는 듯한 스멜이.. 


[링크 : https://wiki.archlinux.org/index.php/Wayland]

Posted by 구차니
embeded/raspberry pi2015. 8. 18. 23:44

아따.. 빡세다..


To install Weston, just issue:

    sudo apt-get update

    sudo apt-get install weston

This will install also a script called weston-launch (not the real weston-launch program), which will automatically set up XDG_RUNTIME_DIR for you and run weston. Running Weston with this package is as simple as:


    weston-launch


A too old firmware may cause rpi-backend to malfunction on Raspberry Pi. 


[링크 : http://wayland.freedesktop.org/raspberrypi.html]

    [링크 : http://archlinuxarm.org/forum/viewtopic.php?f=5&t=4975]


rpi-update는 설치가 안되서 일단 raw로 해서 다운로드

그리고 rpi-update를 위한 패키지로 두개를 설치해준다.

# apt-get install curl binutils

[링크 : https://raw.githubusercontent.com/Hexxeh/rpi-update/master/rpi-update]


설정파일에서 drm-backend.so를 바꾸라는데 흐음..

create ~/.config/weston.ini containing the following:

[core]

backend=fbdev-backend.so

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=102729] 


올.. 된다 ㅋㅋㅋ

# cd ~

# mkdir .config

# cd .config

# vi weston.ini

[core]

backend=fbdev-backend.so


아직 도는게 없어서인지 메모리가 후덜덜하게 조금 먹는다.

기본으로 되는게 터미널 밖에 없어서 이것저것 좀 깔아봐야 할 듯..



[링크 : https://www.mankier.com/5/weston.ini]


음.. 그럼.. 굳이 rpi-update 안해도 되려나?

Posted by 구차니
embeded/raspberry pi2015. 8. 18. 20:58

엌ㅋ 발견

이미지를 구워서 편하게 하자.img ㅋㅋㅋㅋ


계정은

root / debian


구동된게 없으니 메모리가 남아돈다. ㄷㄷ

top - 14:06:38 up 3 min,  2 users,  load average: 0.14, 0.07, 0.03

Tasks:  93 total,   1 running,  92 sleeping,   0 stopped,   0 zombie

%Cpu(s):  0.0 us,  0.5 sy,  0.0 ni, 99.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

KiB Mem:    947424 total,    55364 used,   892060 free,     3864 buffers

KiB Swap:        0 total,        0 used,        0 free.    23760 cached Mem 


순수한(?) debian jessie 배포판이니(라즈베리용)

weston 패키지를 설치해주어야 한다.


# apt-get install weston

Reading package lists... Done

Building dependency tree

Reading state information... Done

The following extra packages will be installed:

  colord colord-data dconf-gsettings-backend dconf-service fontconfig

  fontconfig-config fonts-dejavu-core libavahi-client3 libavahi-common-data

  libavahi-common3 libcairo2 libcolord2 libcolorhug2 libdatrie1 libdconf1

  libdrm-freedreno1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libegl1-mesa

  libegl1-mesa-drivers libelf1 libevdev2 libexif12 libfile-copy-recursive-perl

  libfontconfig1 libfreetype6 libgbm1 libgd3 libgl1-mesa-dri libglapi-mesa

  libgles2-mesa libgphoto2-6 libgphoto2-l10n libgphoto2-port10 libgraphite2-3

  libgudev-1.0-0 libgusb2 libharfbuzz0b libieee1284-3 libinput5 libjbig0

  libjpeg62-turbo liblcms2-2 libllvm3.5 libltdl7 libmtdev1 libopenvg1-mesa

  libpam-systemd libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0

  libpixman-1-0 libpng12-0 libpolkit-agent-1-0 libpolkit-backend-1-0

  libpolkit-gobject-1-0 libsane libsane-common libsane-extras

  libsane-extras-common libsqlite3-0 libthai-data libthai0 libtiff5

  libtxc-dxtn-s2tc0 libusb-1.0-0 libv4l-0 libv4lconvert0 libvpx1

  libwayland-client0 libwayland-cursor0 libwayland-egl1-mesa

  libwayland-server0 libx11-xcb1 libxcb-composite0 libxcb-dri2-0

  libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-xfixes0 libxcb-xkb1

  libxcursor1 libxfixes3 libxkbcommon0 libxpm4 libxrender1 policykit-1

  sane-utils update-inetd xkb-data

Suggested packages:

  libgd-tools gphoto2 gtkam liblcms2-utils avahi-daemon hplip hpoj unpaper

The following NEW packages will be installed:

  colord colord-data dconf-gsettings-backend dconf-service fontconfig

  fontconfig-config fonts-dejavu-core libavahi-client3 libavahi-common-data

  libavahi-common3 libcairo2 libcolord2 libcolorhug2 libdatrie1 libdconf1

  libdrm-freedreno1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libegl1-mesa

  libegl1-mesa-drivers libelf1 libevdev2 libexif12 libfile-copy-recursive-perl

  libfontconfig1 libfreetype6 libgbm1 libgd3 libgl1-mesa-dri libglapi-mesa

  libgles2-mesa libgphoto2-6 libgphoto2-l10n libgphoto2-port10 libgraphite2-3

  libgudev-1.0-0 libgusb2 libharfbuzz0b libieee1284-3 libinput5 libjbig0

  libjpeg62-turbo liblcms2-2 libllvm3.5 libltdl7 libmtdev1 libopenvg1-mesa

  libpam-systemd libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0

  libpixman-1-0 libpng12-0 libpolkit-agent-1-0 libpolkit-backend-1-0

  libpolkit-gobject-1-0 libsane libsane-common libsane-extras

  libsane-extras-common libsqlite3-0 libthai-data libthai0 libtiff5

  libtxc-dxtn-s2tc0 libusb-1.0-0 libv4l-0 libv4lconvert0 libvpx1

  libwayland-client0 libwayland-cursor0 libwayland-egl1-mesa

  libwayland-server0 libx11-xcb1 libxcb-composite0 libxcb-dri2-0

  libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-xfixes0 libxcb-xkb1

  libxcursor1 libxfixes3 libxkbcommon0 libxpm4 libxrender1 policykit-1

  sane-utils update-inetd weston xkb-data

0 upgraded, 92 newly installed, 0 to remove and 0 not upgraded.

Need to get 29.7 MB of archives.

After this operation, 90.8 MB of additional disk space will be used.

Do you want to continue? [Y/n] 


[링크 : https://images.collabora.co.uk/rpi2/]

    [링크 : https://www.collabora.com/about-us/blog/2015/02/03/debian-jessie-on-raspberry-pi-2/]


근데.. 실행이 안되네...

root@jessie-rpi:~# weston

Date: 2015-08-18 UTC

[14:23:33.989] weston 1.6.0

               http://wayland.freedesktop.org/

               Bug reports to: https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=weston&version=1.6.0

               Build: 1.5.93-5-g2858cc2 configure.ac: bump version to 1.6.0 (2014-09-19 13:40:14 +0300)

[14:23:33.990] OS: Linux, 3.18.0-trunk-rpi2, #1 SMP PREEMPT Debian 3.18.5-1~exp1.co1 (2015-02-02), armv7l

[14:23:33.990] Starting with no config file.

[14:23:33.991] Loading module '/usr/lib/arm-linux-gnueabihf/weston/x11-backend.so'

[14:23:34.006] initializing x11 backend

PuTTY X11 proxy: unable to connect to forwarded X server: Network error: Connection refused

[14:23:36.012] fatal: failed to create compositor 



---


빌드 해야하나 -_-


deb http://raspberrypi.collabora.com wheezy rpi

$ sudo apt-get update

$ sudo apt-get install weston 


$ sudo apt-get install build-essential automake libtool bison flex \

    xutils-dev libcairo2-dev libffi-dev libmtdev-dev libjpeg-dev \

    libudev-dev libxcb-xfixes0-dev libxcursor-dev libraspberrypi-dev \

    libxkbcommon-dev libxcb-composite0-dev libpam-dev

[링크 : http://wayland.freedesktop.org/raspberrypi.html]

[링크 : https://www.raspberrypi.org/blog/wayland-preview/]


W: Duplicate sources.list entry http://raspberrypi.collabora.com/ wheezy/rpi armhf Packages (/var/lib/apt/lists/raspberrypi.collabora.com_dists_wheezy_rpi_binary-armhf_Packages)

W: apt-get update를 실행하면 이 문제를 바로잡을 수도 있습니다. 

안되잖아!!!!


$ git clone git://git.collabora.co.uk/git/user/pq/weston

$ cd weston

$ git checkout origin/raspberrypi-dispmanx-wip


# echo deb http://raspberrypi.collabora.com wheezy rpi >> /etc/apt/sources.list

# apt-get update

# apt-get install weston 

[링크 : https://fooishbar.org/tell-me-about/wayland-on-raspberry-pi/]


사이트 가서 뒤져보면 경로가 좀 달라진거 같기도 하고..

그냥 오래된거라 그런가?(위에 문서들은 2013년.. 지금은 2015년..)

[링크 : http://raspberrypi.collabora.com/]

[링크 : https://git.collabora.com/cgit/user/pq/weston.git/]



어? 받아지네

$ git clone git://git.collabora.co.uk/git/user/pq/weston

Cloning into 'weston'...

remote: Counting objects: 27675, done.

remote: Compressing objects: 100% (8281/8281), done.

remote: Total 27675 (delta 21719), reused 24816 (delta 19354)

Receiving objects: 100% (27675/27675), 6.70 MiB | 1.10 MiB/s, done.

Resolving deltas: 100% (21719/21719), done.


$ du -h weston
12M     weston 


의외로.. 용량이 저렴하다?

아으.. 귀찮아 ㅠㅠ 라이브러리 헤더 ㅠㅠ

어디 빌드된거 없나 ㅠㅠ


$ ./autogen.sh

autoreconf: Entering directory `.'

autoreconf: configure.ac: not using Gettext

autoreconf: running: aclocal --force -I m4

autoreconf: configure.ac: tracing

autoreconf: configure.ac: creating directory build-aux

autoreconf: running: libtoolize --copy --force

libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.

libtoolize: copying file `build-aux/ltmain.sh'

libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.

libtoolize: copying file `m4/libtool.m4'

libtoolize: copying file `m4/ltoptions.m4'

libtoolize: copying file `m4/ltsugar.m4'

libtoolize: copying file `m4/ltversion.m4'

libtoolize: copying file `m4/lt~obsolete.m4'

autoreconf: running: /usr/bin/autoconf --force

autoreconf: running: /usr/bin/autoheader --force

autoreconf: running: automake --add-missing --copy --force-missing

configure.ac:36: installing `build-aux/config.guess'

configure.ac:36: installing `build-aux/config.sub'

configure.ac:26: installing `build-aux/install-sh'

configure.ac:26: installing `build-aux/missing'

Makefile.am: installing `build-aux/depcomp'

autoreconf: Leaving directory `.'

checking for gcc... gcc

checking whether the C compiler works... yes

checking for C compiler default output file name... a.out

checking for suffix of executables...

checking whether we are cross compiling... no

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ISO C89... none needed

checking how to run the C preprocessor... gcc -E

checking for grep that handles long lines and -e... /bin/grep

checking for egrep... /bin/grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking minix/config.h usability... no

checking minix/config.h presence... no

checking for minix/config.h... no

checking whether it is safe to define __EXTENSIONS__... yes

checking for special C compiler options needed for large files... no

checking for _FILE_OFFSET_BITS value needed for large files... 64

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for a thread-safe mkdir -p... /bin/mkdir -p

checking for gawk... no

checking for mawk... mawk

checking whether make sets $(MAKE)... yes

checking for style of include used by make... GNU

checking dependency style of gcc... gcc3

checking whether make supports nested variables... yes

checking for gcc... (cached) gcc

checking whether we are using the GNU C compiler... (cached) yes

checking whether gcc accepts -g... (cached) yes

checking for gcc option to accept ISO C89... (cached) none needed

checking for a sed that does not truncate output... /bin/sed

checking build system type... armv7l-unknown-linux-gnueabihf

checking host system type... armv7l-unknown-linux-gnueabihf

checking how to print strings... printf

checking for a sed that does not truncate output... (cached) /bin/sed

checking for fgrep... /bin/grep -F

checking for ld used by gcc... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B

checking the name lister (/usr/bin/nm -B) interface... BSD nm

checking whether ln -s works... yes

checking the maximum length of command line arguments... 1572864

checking whether the shell understands some XSI constructs... yes

checking whether the shell understands "+="... yes

checking how to convert armv7l-unknown-linux-gnueabihf file names to armv7l-unknown-linux-gnueabihf format... func_convert_file_noop

checking how to convert armv7l-unknown-linux-gnueabihf file names to toolchain format... func_convert_file_noop

checking for /usr/bin/ld option to reload object files... -r

checking for objdump... objdump

checking how to recognize dependent libraries... pass_all

checking for dlltool... no

checking how to associate runtime and link libraries... printf %s\n

checking for ar... ar

checking for archiver @FILE support... @

checking for strip... strip

checking for ranlib... ranlib

checking command to parse /usr/bin/nm -B output from gcc object... ok

checking for sysroot... no

checking for mt... mt

checking if mt is a manifest tool... no

checking for dlfcn.h... yes

checking for objdir... .libs

checking if gcc supports -fno-rtti -fno-exceptions... no

checking for gcc option to produce PIC... -fPIC -DPIC

checking if gcc PIC flag -fPIC -DPIC works... yes

checking if gcc static flag -static works... yes

checking if gcc supports -c -o file.o... yes

checking if gcc supports -c -o file.o... (cached) yes

checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes

checking whether -lc should be explicitly linked in... no

checking dynamic linker characteristics... GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether stripping libraries is possible... yes

checking if libtool supports shared libraries... yes

checking whether to build shared libraries... yes

checking whether to build static libraries... no

checking for pkg-config... /usr/bin/pkg-config

checking pkg-config is at least version 0.9.0... yes

checking for dlopen... no

checking for dlopen in -ldl... yes

checking whether SFD_CLOEXEC is declared... yes

checking whether TFD_CLOEXEC is declared... yes

checking whether CLOCK_MONOTONIC is declared... yes

checking execinfo.h usability... yes

checking execinfo.h presence... yes

checking for execinfo.h... yes

checking for mkostemp... yes

checking for strchrnul... yes

checking for initgroups... yes

checking for posix_fallocate... yes

checking for EGL... no

configure: error: Package requirements (egl >= 7.10 glesv2) were not met:


No package 'egl' found

No package 'glesv2' found


Consider adjusting the PKG_CONFIG_PATH environment variable if you

installed software in a non-standard prefix.


Alternatively, you may set the environment variables EGL_CFLAGS

and EGL_LIBS to avoid the need to call pkg-config.

See the pkg-config man page for more details. 



'embeded > raspberry pi' 카테고리의 다른 글

wayland 설정  (0) 2015.08.19
라즈베리 파이 2 / wayland 도전.. ㅠㅠ  (0) 2015.08.18
라즈베리 파이 evdev ?  (0) 2015.08.17
라즈베리 파이 MMAL / openMAX  (0) 2015.08.17
라즈베리 부트 시퀀스  (0) 2015.08.17
Posted by 구차니
embeded/raspberry pi2015. 8. 17. 16:38

터치하면 무조건 클릭+move 라서

좀 어떻게 해결 되려나 조사중...


 Section "InputDevice"

         Identifier "tslib"

         Driver "tslib"

         Option "Device"    "/dev/event0"

         Option "ScreenNumber"  "0"

         Option "Width" "0"

         Option "Height"    "0"

         Option "Rotate"    "NONE"

         Option "EmulateRightButton"    "0"

         ...

       EndSection

[링크 : http://manpages.ubuntu.com/manpages/raring/man4/tslib.4.html]


MatchDevicePath "/dev/input/event*"

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?t=16541&p=180185]



$ sudo apt-cache search evtest

evtest - utility to monitor Linux input device events

joystick - set of testing and calibration tools for joysticks


[링크 : http://blog.rot13.org/2013/12/touch-screen-configuration-using-xinput.html]



$ ls -al /dev/input/*

crw-rw---T 1 root input 13, 64  1월  1  1970 /dev/input/event0

crw-rw---T 1 root input 13, 63  1월  1  1970 /dev/input/mice

crw-rw---T 1 root input 13, 32  1월  1  1970 /dev/input/mouse0


/dev/input/by-path:

합계 0

drwxr-xr-x 2 root root  60  1월  1  1970 .

drwxr-xr-x 3 root root 120  1월  1  1970 ..

lrwxrwxrwx 1 root root   9  1월  1  1970 platform-3f204000.spi-event -> ../event0


$ modinfo evdev

filename:       /lib/modules/3.18.11-v7+/kernel/drivers/input/evdev.ko

license:        GPL

description:    Input driver event char devices

author:         Vojtech Pavlik <vojtech@ucw.cz>

srcversion:     A40D3F09256196BB98D0C0E

alias:          input:b*v*p*e*-e*k*r*a*m*l*s*f*w*

depends:

intree:         Y

vermagic:       3.18.11-v7+ SMP preempt mod_unload modversions ARMv7


$ sudo evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0:      ADS7846 Touchscreen
Select the device event number [0-0]: 0
Input driver version is 1.0.1
Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0
Input device name: "ADS7846 Touchscreen"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 330 (BTN_TOUCH)
  Event type 3 (EV_ABS)
    Event code 0 (ABS_X)
      Value   1676
      Min        0
      Max     4095
    Event code 1 (ABS_Y)
      Value   2147
      Min        0
      Max     4095
    Event code 24 (ABS_PRESSURE)
      Value      0
      Min        0
      Max      255
Properties:
Testing ... (interrupt to exit)
Event: time 1439797317.648607, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1439797317.648607, type 3 (EV_ABS), code 0 (ABS_X), value 2036
Event: time 1439797317.648607, type 3 (EV_ABS), code 1 (ABS_Y), value 2098
Event: time 1439797317.648607, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 143
Event: time 1439797317.648607, -------------- SYN_REPORT ------------
Event: time 1439797317.658645, type 3 (EV_ABS), code 0 (ABS_X), value 2063
Event: time 1439797317.658645, type 3 (EV_ABS), code 1 (ABS_Y), value 2097
Event: time 1439797317.658645, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 141
Event: time 1439797317.658645, -------------- SYN_REPORT ------------
Event: time 1439797317.668690, type 3 (EV_ABS), code 0 (ABS_X), value 2089
Event: time 1439797317.668690, type 3 (EV_ABS), code 1 (ABS_Y), value 2089
Event: time 1439797317.668690, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 117
Event: time 1439797317.668690, -------------- SYN_REPORT ------------
Event: time 1439797317.678191, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1439797317.678191, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 0
Event: time 1439797317.678191, -------------- SYN_REPORT ------------


Option "DragLockButtons" "L1 B2 L3 B4"
Sets "drag lock buttons" that simulate holding a button down, so that low dexterity people do not have to hold a button down at the same time they move a mouse cursor. Button numbers occur in pairs, with the lock button number occurring first, followed by the button number that is the target of the lock button. Property: "Evdev Drag Lock ButtonsEvdev Drag Lock Buttons".

Option "DragLockButtons" "M1"
Sets a "master drag lock button" that acts as a "Meta Key" indicating that the next button pressed is to be "drag locked". Property: "Evdev Drag Lock Buttons".



5.4. Drag Lock Buttons

Some people find it difficult or inconvenient to hold a trackball button down, while at the same time moving the ball. Drag lock buttons simulate the holding down of another button. When a drag lock button is first pressed, its target buttons is "locked" down until the second time the lock button is released, or until the button itself is pressed and released. This allows the starting of a drag, the movement of the trackball, and the ending of the drag to be separate operations.

Option "DragLockButtons" "W X Y Z"
This option consists of pairs of buttons. Each lock button number is followed by the number of the button that it locks. In the above, button number "W" is a drag lock button for button "X" and button number "Y" is a drag lock button for button "Z".

It may not be desirable to use multiple buttons as drag locks. Instead, a "master drag lock button" may be defined. A master drag lock button acts as a "META" key. After a master lock button is released, the next button pressed is "locked" and not released until the second time the real button is released.

Option "DragLockButtons" "M"
Since button "M" is unpaired it is a master drag lock button.



[링크 : http://lxr.free-electrons.com/source/drivers/input/touchscreen/ads7846.c]

[링크 : http://lxr.free-electrons.com/source/drivers/input/evdev.c]

[링크 : http://lxr.free-electrons.com/source/Documentation/input/event-codes.txt]

Posted by 구차니
embeded/raspberry pi2015. 8. 17. 15:45


All the applications are command line driven, written to take advantage of the mmal API which runs over OpenMAX. The mmal API provides an easier to use system than that presented by OpenMAX. Note that mmal is a Broadcom specific API used only on Videocore 4 systems.



[링크 : https://www.raspberrypi.org/documentation/raspbian/applications/camera.md]


Open Media Acceleration

[링크 : https://www.khronos.org/openmax/]

[링크 : https://en.wikipedia.org/wiki/OpenMAX]



+

내가 할때는 한참 있다가 겨우 한프레임 뽑던데...

omxplayer라고 다른걸 써봐야겠다... ㄷㄷㄷ


Good news for those after MJPEG - I have something working that is producing a nice stream of JPEGs. VLC doesn't like it (just displays the first frame, but does correctly get the clip duration as 10s long), but omxplayer is quite happy. v4l2-ctl claims to be getting 30fps at 1920x1080 from it too. [...]And you all thought Santa was due tomorrow night  :D Happy Christmas!

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?p=474041]

'embeded > raspberry pi' 카테고리의 다른 글

라즈베리 파이 wayland(weston)은.. 실패 ㅠㅠ  (0) 2015.08.18
라즈베리 파이 evdev ?  (0) 2015.08.17
라즈베리 부트 시퀀스  (0) 2015.08.17
라즈베리 파이 uboot  (0) 2015.08.16
라즈베리 파이 yocto 빌드 시도  (0) 2015.08.15
Posted by 구차니
embeded/raspberry pi2015. 8. 17. 15:31

공식문서 활용!

역시 공식 문서는 위대한 겁니다!!! (어?)


1단계 부트로더가 SoC 안에 내장되어 있고 이녀석이 SD 카드 초기화 / FAT 인식을 담당한다.

2단계 부트로더는 bootcode.bin으로 FAT를 통해 config.txt / cmdline.txt 등의 환경설정파일로 부팅을 진행한다.

3단계 GPU 펌웨어는 GPU의 사용을 초기화 하고(단, GPU 메모리가 적을 경우 사용 기능이 제한됨)

4단계 커널이 불려오고(2단계의 cmdline.txt를 통해 커널 인자를 넘겨받음)

5단계 rootfs 마운트 이후 /sbin/init를 통해 시스템 부팅 과정을 밟음


First stage bootloader 

This is used to mount the FAT32 boot partition on the SD card so that the second stage bootloader can be accessed. It is programmed into the SoC itself during manufacture of the RPi and cannot be reprogrammed by a user.


Second stage bootloader (bootcode.bin) 

This is used to retrieve the GPU firmware from the SD card, program the firmware, then start the GPU.


GPU firmware (start.elf) 

Once loaded, this allows the GPU to start up the CPU. An additional file, fixup.dat, is used to configure the SDRAM partition between the GPU and the CPU. At this point, the CPU is release from reset and execution is transferred over.


User code

This can be one of any number of binaries. By default, it is the Linux kernel (usually named kernel.img), but it can also be another bootloader (e.g. U-Boot), or a bare-bones application.

[링크 : http://elinux.org/RPi_Software]



The start_cd.elf and fixup_cd.dat will be used when gpu_mem=16.

The latter are cutdown versions without opengles/openmax/openvg/codec etc built in. They are used when gpu_mem=16.

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?p=198420]

Posted by 구차니
embeded/raspberry pi2015. 8. 16. 21:57

헐.. 당연한거겠지만..

생각도 못하던(?!) u-boot ㄷㄷ


yocto project에서도 지원은 하는데..

fat / config.txt / cmdline.txt 기반의 부트로더+설정과

uboot 중에 어느게 나을런진 한번쯤은 테스트 해봐야 할 듯


[링크 : http://elinux.org/RPi_U-Boot]

[링크 : http://git.yoctoproject.org/cgit/cgit.cgi/meta-raspberrypi/about/]

Posted by 구차니