embeded/raspberry pi2015. 6. 20. 18:48

서보모터 제어해보겠다고 간단하게 PWM으로 해보려고 했는데

클럭이 문제인지 자꾸 가장 왼쪾을 벗어 나려고 쑈하는 바람에

모터 고장날까봐 후다닥 -_-


pwmSetClock(1); -> 2.342kHz

pwmSetClock(2); -> 4.81MHz

pwmSetClock(3); -> 3.19MHz

pwmSetClock(4); -> 2.398MHz

pwmSetClock(5); -> 1.919MHz

pwmSetClock(6); -> 1.6MHz

pwmSetClock(7); -> 1.3MHz

pwmSetClock(8); -> 1.2MHz

pwmSetClock(9); -> 1.067MHz

pwmSetClock(10); -> 959kHz

pwmSetClock(11); -> 871kHz

pwmSetClock(20); -> 480kHz

pwmSetClock(200); -> 48kHz

pwmSetClock(500); -> 19kHz

pwmSetClock(1000); -> 9.59kHz

pwmSetClock(2000); -> 4.802kHz

pwmSetClock(4000); -> 2.401kHz

pwmSetClock(5000); -> 10.58kHz


[링크 : http://raspberrypi.stackexchange.com/questions/4906/control-hardware-pwm-frequency] 


The PWM controller incorporates the following features:

• Two independent output bit-streams, clocked at a fixed frequency.

• Bit-streams configured individually to output either PWM or a serialised version of a 32-bit word.

• PWM outputs have variable input and output resolutions.

• Serialise mode configured to load data to and/or read data from a FIFO storage block, which can store up to eight 32-bit words.

Both modes clocked by clk_pwm which is nominally 100MHz, but can be varied by the clock manager.


[링크 : http://www.element14.com/.../43016-102-1-231518/Broadcom.Datasheet.pdf] 


+

2015.06.21


[링크 : http://www.rasplay.org/?p=6783] python

[링크 : https://learn.adafruit.com/adafruits-raspberry-pi-lesson-8-using-a-servo-motor/overview] python


 The base clock has a frequency of 19.2 MHz. Setting a divisor of 400 along with a "range" of 1024 gives us a PWM frequency of 19200000/400/1024 = 46.875 Hz, or a period of 21.3 milli seconds.

[링크 : http://electronut.in/controlling-two-servos-with-hardware-pwm-on-the-raspberry-pi-model-a/]

    [링크 : http://devkyu.tistory.com/349]



[링크 : http://razzpisampler.oreilly.com/ch06.html] stepper motor

Posted by 구차니
embeded/raspberry pi2015. 6. 20. 18:01

리모컨 인식은 하는데..

인식 속도가 끊어서 한번 눌렀다가 바로 떼어야 할 정도로 

KEY_LEFT를 누르는데 두번이 한번에 눌리는 느낌?


아무튼 검색을 해보니

delay나 repeat 값을 조절해서

빠르게 입력되는 키를 좀 둔감하게 쓸 수 있는 듯


[링크 : http://forum.kodi.tv/showthread.php?tid=57488]

[링크 : http://www.lirc.org/html/configure.html]


+

젠장 PWM 하다가 포트 날려먹었나 -_ㅠ

라즈베리 2 에서 갑자기 입력이 안된다 ㅠㅠ 라즈 b로 테스트 ㅠㅠ

+

켜기 전에 연결하고 하니 되네.. 머지?

초기에 자동 감지라 그런가?


remoterepeat 라는걸 해봤는데 차이가 없네 -_-

$ sudo vi /usr/share/kodi/system/advancedsettings.xml

<?xml version="1.0" encoding="UTF-8"?>

<advancedsettings>

  <video>

    <defaultplayer>dvdplayer</defaultplayer>

    <defaultdvdplayer>dvdplayer</defaultdvdplayer>

  </video>

        <remoterepeat>2000</remoterepeat>

        <gui>

                <algorithmdirtyregions>3</algorithmdirtyregions>

                <nofliptimeout>0</nofliptimeout>

        </gui>


        <splash>false</splash>


        <lookandfeel>

                <enablerssfeeds>false</enablerssfeeds>

        </lookandfeel>


        <cputempcommand>sed -e 's/\([0-9]*\)[0-9]\{3\}.*/\1 C/' /sys/class/thermal/thermal_zone0/temp</cputempcommand>

        <gputempcommand>/opt/vc/bin/vcgencmd measure_temp | sed "s,temp=\([0-9]*\)\.[0-9]'C,\1 C,"</gputempcommand>


</advancedsettings> 


실험적으로 해보니.. suppress_repeat가 잘 먹는다.

리모컨 마다 특성이 달라서 그럴려나?(내가 쓰는건 미친듯이 반복입력한다.)

$ sudo vi /etc/lirc/lircd.conf

min_repeat    1

suppress_repeat 2 // #suppress_repeat 1

#  uncomment to suppress unwanted repeats 

Posted by 구차니
embeded/raspberry pi2015. 6. 20. 09:04

주말이니 상큼하게 라즈베리? ㅋㅋ

+ b와 2b에서 확인완료






요약본

$ sudo vi /boot/config.txt

dtoverlay=lirc-rpi

$ sudo reboot

$ sudo apt-get install lirc

$ sudo vi /etc/lirc/hardware.conf

LIRCD_ARGS="--uinput"

LOAD_MODULES=true

DRIVER="default"

DEVICE="/dev/lirc0"

MODULES="lirc_rpi"

LIRCD_CONF=""

LIRCMD_CONF=""

$ sudo service lirc stop

$ irrecord -d /dev/lirc0 ~/lircd.conf

$ sudo cp lircd.conf /etc/lirc/lircd.conf

$ sudo service lirc start 


[링크 : http://alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/]


lircd.conf 파일이 있긴한데.. 멀 써야 하지?

[링크 : http://lirc.sourceforge.net/remotes/]



-------------------

Step 1. config.txt의 내용에서 

# Uncomment this to enable the lirc-rpi module

dtoverlay=lirc-rpi 


Step 2. irw 해서 명령어가 실행안됨 -> lirc 미설치

$ sudo apt-get install lirc 


Step 3. hardware 파일수정

$sudo vi /etc/lirc/hardware.conf

# /etc/lirc/hardware.conf

#

# Arguments which will be used when launching lircd

LIRCD_ARGS=""


#Don't start lircmd even if there seems to be a good config file

#START_LIRCMD=false


#Don't start irexec, even if a good config file seems to exist.

#START_IREXEC=false


#Try to load appropriate kernel modules

LOAD_MODULES=true


# Run "lircd --driver=help" for a list of supported drivers.

DRIVER="UNCONFIGURED"

# usually /dev/lirc0 is the correct setting for systems using udev

DEVICE=""

MODULES=""


# Default configuration files for your hardware if any

LIRCD_CONF=""

LIRCMD_CONF="" 

을 다음과 같이

# /etc/lirc/hardware.conf

#

# Arguments which will be used when launching lircd

LIRCD_ARGS="--uinput"


#Don't start lircmd even if there seems to be a good config file

#START_LIRCMD=false


#Don't start irexec, even if a good config file seems to exist.

#START_IREXEC=false


#Try to load appropriate kernel modules

LOAD_MODULES=true


# Run "lircd --driver=help" for a list of supported drivers.

DRIVER="default"

# usually /dev/lirc0 is the correct setting for systems using udev

DEVICE="/dev/lirc0"

MODULES="lirc_rpi"


# Default configuration files for your hardware if any

LIRCD_CONF=""

LIRCMD_CONF=""


일단.. 설정한거 같으니.. 실행해보는데.. 당연히(?) 안된다.

$ sudo service lirc restart

[ ok ] No valid /etc/lirc/lircd.conf has been found..

[ ok ] Remote control support has been disabled..

[ ok ] Reconfigure LIRC or manually replace /etc/lirc/lircd.conf to enable.. 


Step 4. 혹시 모르니 lircd 데몬 종료

$ sudo service lirc restart 


Step 5. 리모컨의 특성을 설정해주어야 하는데 그게 바로 lircd.conf

$ irrecord -d /dev/lirc0 ~/lircd.conf

irrecord -  application for recording IR-codes for usage with lirc


Copyright (C) 1998,1999 Christoph Bartelmus(lirc@bartelmus.de)


This program will record the signals from your remote control

and create a config file for lircd.



A proper config file for lircd is maybe the most vital part of this

package, so you should invest some time to create a working config

file. Although I put a good deal of effort in this program it is often

not possible to automatically recognize all features of a remote

control. Often short-comings of the receiver hardware make it nearly

impossible. If you have problems to create a config file READ THE

DOCUMENTATION of this package, especially section "Adding new remote

controls" for how to get help.


If there already is a remote control of the same brand available at

http://www.lirc.org/remotes/ you might also want to try using such a

remote as a template. The config files already contain all

parameters of the protocol used by remotes of a certain brand and

knowing these parameters makes the job of this program much

easier. There are also template files for the most common protocols

available in the remotes/generic/ directory of the source

distribution of this package. You can use a template files by

providing the path of the file as command line parameter.


Please send the finished config files to <lirc@bartelmus.de> so that I

can make them available to others. Don't forget to put all information

that you can get about the remote control in the header of the file.


Press RETURN to continue.



Now start pressing buttons on your remote control.


It is very important that you press many different buttons and hold them

down for approximately one second. Each button should generate at least one

dot but in no case more than ten dots of output.

Don't stop pressing buttons until two lines of dots (2x80) have been

generated.


Press RETURN now to start recording.

................................................................................

Found const length: 108417

Please keep on pressing buttons like described above.

................................................................................

Space/pulse encoded remote control found.

Signal length is 67.

Found possible header: 4543 4506

Found trail pulse: 614

Found repeat code: 618 490

Signals are space encoded.

Signal length is 32

Now enter the names for the buttons.


Please enter the name for the next button (press <ENTER> to finish recording)


Checking for toggle bit mask.

Please press an arbitrary button repeatedly as fast as possible.

Make sure you keep pressing the SAME button and that you DON'T HOLD

the button down!.

If you can't see any dots appear, then wait a bit between button presses.


Press RETURN to continue.

..............................

No toggle bit mask found.

Successfully written config file.


엔터만 치고 star recording 에서 아무키나 눌러주면 되는데

처음에는 반복을 인식하는데

두번째는 반복 인식을 안해서 미친듯이 눌러줘야 한다 ㅠㅠ

아무튼 다 하고 나면 다음과 같은 lircd.conf 파일 생성

# Please make this file available to others

# by sending it to <lirc@bartelmus.de>

#

# this config file was automatically generated

# using lirc-0.9.0-pre1(default) on Fri Jun 19 23:54:38 2015

#

# contributed by

#

# brand:                       /home/pi/lircd.conf

# model no. of remote control:

# devices being controlled by this remote:

#


begin remote


  name  /home/pi/lircd.conf

  bits           32

  flags SPACE_ENC|CONST_LENGTH|REPEAT_HEADER

  eps            30

  aeps          100


  header       4543  4506

  one           607  1621

  zero          607   508

  ptrail        614

  repeat        618   490

  gap          108417

  toggle_bit_mask 0x0


      begin codes

      end codes


end remote 


Step 6. /etc/lirc/lircd.conf로 복사해주고 서비스 시작

$ sudo cp lircd.conf /etc/lirc/lircd.conf

$ sudo service lirc start

[ ok ] Loading LIRC modules:.

[ ok ] Starting remote control daemon(s) : LIRC :. 




irrecord로 녹화하기 위해서는 키를 입력해야 하는데 지정된 녀석만 일단은 쓸 수 있다.

Now enter the names for the buttons.


Please enter the name for the next button (press <ENTER> to finish recording)

KEY_CHUP

'KEY_CHUP' is not in name space (use --disable-namespace to disable checks)

Use 'irrecord --list-namespace' to see a full list of valid button names

Please try again. 


사용가능한 키 이름은 아래와 같다.

$ irrecord --list-namespace

KEY_0

KEY_102ND

KEY_1

KEY_2

KEY_3

KEY_4

KEY_5

KEY_6

KEY_7

KEY_8

KEY_9

KEY_A

KEY_AB

KEY_ADDRESSBOOK

KEY_AGAIN

KEY_ALTERASE

KEY_ANGLE

KEY_APOSTROPHE

KEY_ARCHIVE

KEY_AUDIO

KEY_AUX

KEY_B

KEY_BACK

KEY_BACKSLASH

KEY_BACKSPACE

KEY_BASSBOOST

KEY_BATTERY

KEY_BLUE

KEY_BLUETOOTH

KEY_BOOKMARKS

KEY_BREAK

KEY_BRIGHTNESS_CYCLE

KEY_BRIGHTNESSDOWN

KEY_BRIGHTNESSUP

KEY_BRIGHTNESS_ZERO

KEY_BRL_DOT10

KEY_BRL_DOT1

KEY_BRL_DOT2

KEY_BRL_DOT3

KEY_BRL_DOT4

KEY_BRL_DOT5

KEY_BRL_DOT6

KEY_BRL_DOT7

KEY_BRL_DOT8

KEY_BRL_DOT9

KEY_C

KEY_CALC

KEY_CALENDAR

KEY_CAMERA

KEY_CANCEL

KEY_CAPSLOCK

KEY_CD

KEY_CHANNEL

KEY_CHANNELDOWN

KEY_CHANNELUP

KEY_CHAT

KEY_CLEAR

KEY_CLOSE

KEY_CLOSECD

KEY_COFFEE

KEY_COMMA

KEY_COMPOSE

KEY_COMPUTER

KEY_CONFIG

KEY_CONNECT

KEY_CONTEXT_MENU

KEY_COPY

KEY_CUT

KEY_CYCLEWINDOWS

KEY_D

KEY_DASHBOARD

KEY_DATABASE

KEY_DEL_EOL

KEY_DEL_EOS

KEY_DELETE

KEY_DELETEFILE

KEY_DEL_LINE

KEY_DIGITS

KEY_DIRECTION

KEY_DIRECTORY

KEY_DISPLAY_OFF

KEY_DISPLAYTOGGLE

KEY_DOCUMENTS

KEY_DOLLAR

KEY_DOT

KEY_DOWN

KEY_DVD

KEY_E

KEY_EDIT

KEY_EDITOR

KEY_EJECTCD

KEY_EJECTCLOSECD

KEY_EMAIL

KEY_END

KEY_ENTER

KEY_EPG

KEY_EQUAL

KEY_ESC

KEY_EURO

KEY_EXIT

KEY_F10

KEY_F11

KEY_F12

KEY_F13

KEY_F14

KEY_F15

KEY_F1

KEY_F16

KEY_F17

KEY_F18

KEY_F19

KEY_F20

KEY_F21

KEY_F22

KEY_F23

KEY_F24

KEY_F2

KEY_F

KEY_F3

KEY_F4

KEY_F5

KEY_F6

KEY_F7

KEY_F8

KEY_F9

KEY_FASTFORWARD

KEY_FAVORITES

KEY_FILE

KEY_FINANCE

KEY_FIND

KEY_FIRST

KEY_FN

KEY_FN_1

KEY_FN_2

KEY_FN_B

KEY_FN_D

KEY_FN_E

KEY_FN_ESC

KEY_FN_F

KEY_FN_F10

KEY_FN_F1

KEY_FN_F11

KEY_FN_F12

KEY_FN_F2

KEY_FN_F3

KEY_FN_F4

KEY_FN_F5

KEY_FN_F6

KEY_FN_F7

KEY_FN_F8

KEY_FN_F9

KEY_FN_S

KEY_FORWARD

KEY_FORWARDMAIL

KEY_FRAMEBACK

KEY_FRAMEFORWARD

KEY_FRONT

KEY_G

KEY_GAMES

KEY_GOTO

KEY_GRAPHICSEDITOR

KEY_GRAVE

KEY_GREEN

KEY_H

KEY_HANGEUL

KEY_HANJA

KEY_HELP

KEY_HENKAN

KEY_HIRAGANA

KEY_HOME

KEY_HOMEPAGE

KEY_HP

KEY_I

KEY_INFO

KEY_INSERT

KEY_INS_LINE

KEY_ISO

KEY_J

KEY_K

KEY_KATAKANA

KEY_KATAKANAHIRAGANA

KEY_KBDILLUMDOWN

KEY_KBDILLUMTOGGLE

KEY_KBDILLUMUP

KEY_KEYBOARD

KEY_KP0

KEY_KP1

KEY_KP2

KEY_KP3

KEY_KP4

KEY_KP5

KEY_KP6

KEY_KP7

KEY_KP8

KEY_KP9

KEY_KPASTERISK

KEY_KPCOMMA

KEY_KPDOT

KEY_KPENTER

KEY_KPEQUAL

KEY_KPJPCOMMA

KEY_KPLEFTPAREN

KEY_KPMINUS

KEY_KPPLUS

KEY_KPPLUSMINUS

KEY_KPRIGHTPAREN

KEY_KPSLASH

KEY_L

KEY_LANGUAGE

KEY_LAST

KEY_LEFT

KEY_LEFTALT

KEY_LEFTBRACE

KEY_LEFTCTRL

KEY_LEFTMETA

KEY_LEFTSHIFT

KEY_LINEFEED

KEY_LIST

KEY_LOGOFF

KEY_M

KEY_MACRO

KEY_MAIL

KEY_MAX

KEY_MEDIA

KEY_MEDIA_REPEAT

KEY_MEMO

KEY_MENU

KEY_MESSENGER

KEY_MHP

KEY_MINUS

KEY_MODE

KEY_MOVE

KEY_MP3

KEY_MSDOS

KEY_MUHENKAN

KEY_MUTE

KEY_N

KEY_NEW

KEY_NEWS

KEY_NEXT

KEY_NEXTSONG

KEY_NUMERIC_0

KEY_NUMERIC_1

KEY_NUMERIC_2

KEY_NUMERIC_3

KEY_NUMERIC_4

KEY_NUMERIC_5

KEY_NUMERIC_6

KEY_NUMERIC_7

KEY_NUMERIC_8

KEY_NUMERIC_9

KEY_NUMERIC_POUND

KEY_NUMERIC_STAR

KEY_NUMLOCK

KEY_O

KEY_OK

KEY_OPEN

KEY_OPTION

KEY_P

KEY_PAGEDOWN

KEY_PAGEUP

KEY_PASTE

KEY_PAUSE

KEY_PAUSECD

KEY_PC

KEY_PHONE

KEY_PLAY

KEY_PLAYCD

KEY_PLAYER

KEY_PLAYPAUSE

KEY_POWER

KEY_POWER2

KEY_PRESENTATION

KEY_PREVIOUS

KEY_PREVIOUSSONG

KEY_PRINT

KEY_PROG1

KEY_PROG2

KEY_PROG3

KEY_PROG4

KEY_PROGRAM

KEY_PROPS

KEY_PVR

KEY_Q

KEY_QUESTION

KEY_R

KEY_RADIO

KEY_RECORD

KEY_RED

KEY_REDO

KEY_REFRESH

KEY_REPLY

KEY_RESERVED

KEY_RESTART

KEY_REWIND

KEY_RFKILL

KEY_RIGHT

KEY_RIGHTALT

KEY_RIGHTBRACE

KEY_RIGHTCTRL

KEY_RIGHTMETA

KEY_RIGHTSHIFT

KEY_RO

KEY_S

KEY_SAT

KEY_SAT2

KEY_SAVE

KEY_SCALE

KEY_SCREEN

KEY_SCROLLDOWN

KEY_SCROLLLOCK

KEY_SCROLLUP

KEY_SEARCH

KEY_SELECT

KEY_SEMICOLON

KEY_SEND

KEY_SENDFILE

KEY_SETUP

KEY_SHOP

KEY_SHUFFLE

KEY_SLASH

KEY_SLEEP

KEY_SLOW

KEY_SOUND

KEY_SPACE

KEY_SPELLCHECK

KEY_SPORT

KEY_SPREADSHEET

KEY_STOP

KEY_STOPCD

KEY_SUBTITLE

KEY_SUSPEND

KEY_SWITCHVIDEOMODE

KEY_SYSRQ

KEY_T

KEY_TAB

KEY_TAPE

KEY_TEEN

KEY_TEXT

KEY_TIME

KEY_TITLE

KEY_TUNER

KEY_TV

KEY_TV2

KEY_TWEN

KEY_U

KEY_UNDO

KEY_UNKNOWN

KEY_UP

KEY_UWB

KEY_V

KEY_VCR

KEY_VCR2

KEY_VENDOR

KEY_VIDEO

KEY_VIDEO_NEXT

KEY_VIDEOPHONE

KEY_VIDEO_PREV

KEY_VOICEMAIL

KEY_VOLUMEDOWN

KEY_VOLUMEUP

KEY_W

KEY_WAKEUP

KEY_WIMAX

KEY_WLAN

KEY_WORDPROCESSOR

KEY_WWW

KEY_X

KEY_XFER

KEY_Y

KEY_YELLOW

KEY_YEN

KEY_Z

KEY_ZENKAKUHANKAKU

KEY_ZOOM

KEY_ZOOMIN

KEY_ZOOMOUT

KEY_ZOOMRESET

BTN_0

BTN_1

BTN_2

BTN_3

BTN_4

BTN_5

BTN_6

BTN_7

BTN_8

BTN_9

BTN_A

BTN_B

BTN_BACK

BTN_BASE

BTN_BASE2

BTN_BASE3

BTN_BASE4

BTN_BASE5

BTN_BASE6

BTN_C

BTN_DEAD

BTN_DIGI

BTN_EXTRA

BTN_FORWARD

BTN_GAMEPAD

BTN_GEAR_DOWN

BTN_GEAR_UP

BTN_JOYSTICK

BTN_LEFT

BTN_MIDDLE

BTN_MISC

BTN_MODE

BTN_MOUSE

BTN_PINKIE

BTN_RIGHT

BTN_SELECT

BTN_SIDE

BTN_START

BTN_STYLUS

BTN_STYLUS2

BTN_TASK

BTN_THUMB

BTN_THUMB2

BTN_THUMBL

BTN_THUMBR

BTN_TL

BTN_TL2

BTN_TOOL_AIRBRUSH

BTN_TOOL_BRUSH

BTN_TOOL_DOUBLETAP

BTN_TOOL_FINGER

BTN_TOOL_LENS

BTN_TOOL_MOUSE

BTN_TOOL_PEN

BTN_TOOL_PENCIL

BTN_TOOL_QUADTAP

BTN_TOOL_RUBBER

BTN_TOOL_TRIPLETAP

BTN_TOP

BTN_TOP2

BTN_TOUCH

BTN_TR

BTN_TR2

BTN_TRIGGER

BTN_WHEEL

BTN_X

BTN_Y

BTN_Z 


irw는 키를 읽어 오는건데 lircd.conf에 저장된 내용만 인식한다.

아무튼.. 아래와 같은 포맷으로 출력이 나온다.

$ irw

000000000000e210 00 KEY_RIGHT /home/pi/lircd.conf

000000000000e210 01 KEY_RIGHT /home/pi/lircd.conf

000000000000e210 02 KEY_RIGHT /home/pi/lircd.conf

000000000000e218 00 KEY_LEFT /home/pi/lircd.conf

000000000000e208 00 KEY_OK /home/pi/lircd.conf

000000000000e208 01 KEY_OK /home/pi/lircd.conf

000000000000e208 02 KEY_OK /home/pi/lircd.conf

000000000000e218 00 KEY_LEFT /home/pi/lircd.conf

000000000000e218 01 KEY_LEFT /home/pi/lircd.conf

000000000000e218 02 KEY_LEFT /home/pi/lircd.conf 



Posted by 구차니
embeded/raspberry pi2015. 6. 18. 13:03

떔질하다가 태워먹었나 -_- << 아마도 결론?

이번에는 잘 됨 ㅠㅠ
(C8 내 천원 ㅠㅠ)


먼가 파형이 이상하다는 말이 있긴한데..

음.. 잘못 잡은걸려나?

아무튼.. 파형은 나오니 일단 패스 ㅠㅠ



음.. 그럴린 없겠지만.. GND / Vs를 반대로 체크했나 -ㅁ-?

잘보니.. optical test signal과 output signal이 반대로 있네? 헐.. -_-?!



[링크 : https://www.sparkfun.com/datasheets/Sensors/Infrared/tsop382.pdf]


+

pi@raspberrypi ~ $ dmesg | grep -i lirc

[    5.288497] lirc_dev: IR Remote Control driver registered, major 246

[    5.522143] lirc_rpi: module is from the staging directory, the quality is unknown, you have been warned.

[    6.664110] lirc_rpi: auto-detected active low receiver on GPIO pin 18

[    6.771417] lirc_rpi lirc_rpi: lirc_dev: driver lirc_rpi registered at minor = 0

[    7.014398] lirc_rpi: driver registered! 


low active니 상관없으려나? 흐음...

Posted by 구차니
embeded/raspberry pi2015. 6. 18. 11:08

이따 밥 먹고 쉬는시간에 하나 달아봐야지 ㅋㅋㅋ



Posted by 구차니
embeded/raspberry pi2015. 6. 15. 21:30

다운클럭된(?) 옴니아 2였어 ㄷㄷㄷ




CPU 700 MHz single-core ARM1176JZF-S (model A, A+, B, B+, CM)

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


CPU 삼성 S3C6410 ARM 1176 800 MHz

[링크 : http://ko.wikipedia.org/wiki/삼성_옴니아_II]

Posted by 구차니
embeded/raspberry pi2015. 6. 15. 10:10

회사 들고 와서 오실로스코프 찍어봤더니

영 데이터가 안나와서 포기하고

걍 내 땜실실력이 초 구려서 태워먹었구나 라고 결론 <<



---

어제는 1.4만원(USB 허브 + SD 리더 + USB 젠더)

오늘은 IR Receiver


만원 안넘게 조절하다가 7개 했는데

10개 해보니 어라? 천원밖에 차이가 안나네?

10개 쿠궁!!!




됐고 4일이면... 다음주 월요일에나 받을수 있겠....

주말에는 이래저래 바쁘니 이래저래 회사로 돌려놔야겠...

Posted by 구차니
embeded/raspberry pi2015. 6. 14. 22:02

powered USB hub 사서

웹캠을 연결해도 문제가 발생


1개를 하던 2개를 허브에 연결하던

라즈베리 파이에 직접 연결하던


처음 한두프레임만 나오고 시스템이 바보가 된다.



혹시나 해서.. motion 패키지를 이용해

스트리밍을 해보는데 되는거 봐서는..

vlc 패키지에서 사용하는 libavcodec 이나

v4l 라이브러리가 문제가 있을지도..


아무튼

motion 패키지를 이용해서 스트리밍 할때

웹캠을 라즈베리 파이에 직접 연결해도 작동을 잘 하는거 봐서는

간당간당하게 소비전력 제한 이하로 냠냠냠 하고 있는 것으로 보인다.




결론1 : 라즈비안 vlc 따위 -_-

결론2 : 웹캠 종류에 따라 다르겠지만.. 라즈베리에 웹캠을 직접 연결해도 작동하는 녀석도 있다?

Posted by 구차니
embeded/raspberry pi2015. 6. 14. 21:46

테스트 환경

2015-05-05-raspbian-wheezy.img

라즈비안 파이 2

UVC 지원 웹캠

motion 패키지


[링크 : http://www.rasplay.org/?p=2673] 

[링크 : http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome]


$ sudo apt-get install motion


$ sudo vi /etc/motion/motion.conf

daemon on

width 640

height 480

framerate 15

webcam_maxrate 15

webcam_localhost off

control_localhost off

$ sudo vi /etc/default/motion

start_motion_daemon=yes


기본값으로는

8080 은 제어용 페이지 

8081은 웹캠 영상 페이지


thread 라는 용어로 여러개의 카메라를 쓸수 있을거 같긴한데... 끄응..


--

일단은 제어용 페이지


라즈베리 파이 / 라즈비안에 브라우저는 바로 띄우던데..

PC 버전의 크롬/IE는 띄위지 못해 VLC로 스트리밍 주소로 연결하니 나온다.


음.. 원본이 MJPEG 인가? 트랜스코딩된건가?


1개 채널만 하는데도.. cpu를 23% 정도 먹는게 두개? 하나인가?

아무튼 .. 단순산술로는 16채널까지 가능할지도?!

(물론 USB 카메라 대역폭이 불가능 하겠지만..)


Posted by 구차니
embeded/raspberry pi2015. 6. 14. 19:27

OSMC 용으로 오버클럭되어 FullHD 30p 에서도 문제없이 하도록 해놨다고 하시던데

흐음.. 850이면 CPU 제한 안풀고 가능한 오버클럭 수치인가 모르겠네...


arm_freq=850

core_freq=375

gpu_mem_256=112

gpu_mem_512=144

hdmi_ignore_cec_init=1

disable_overscan=1

start_x=1 


Posted by 구차니