Linux/Ubuntu2016. 10. 5. 20:49

odroid 쓰다 보니 커널이 자동 업데이트 되면서 정상작동하지 않아

특정 패키지(그러니까.. 커널?)를 업데이트 되지 않도록 할 필요가 있다.


These lines are irrelevant to kernel upgrades. And also that is not good to comment them. You will not be able to install some packages if you do it.


You can freeze any package including kernel packages by


sudo apt-mark hold <package_name>

for example


sudo apt-mark hold linux-image-generic linux-headers-generic

But you need to check which kernel meta-package is installed for LTS versions. It may be linux-generic-lts-utopic, etc. 

[링크 : http://askubuntu.com/questions/678630/how-can-i-avoid-kernel-updates]

+ 2016.11.14

Hold a package:

sudo apt-mark hold package_name


Remove the hold:

sudo apt-mark unhold package_name 


[링크 : http://askubuntu.com/questions/18654/how-to-prevent-updating-of-a-specific-package]


어.. 설치가 안되어 있는데 왜 엉긴거지?

$ apt-cache search linux-image-generic

linux-image-generic - Generic Linux kernel image

linux-image-generic-lts-raring - Generic Linux kernel image

linux-image-generic-lts-saucy - Generic Linux kernel image

linux-image-generic-lts-trusty - Generic Linux kernel image

linux-image-generic-lpae - Generic Linux kernel image

linux-image-generic-lpae-lts-saucy - Generic Linux kernel image

linux-image-generic-lpae-lts-trusty - Generic Linux kernel image

linux-image-highbank - Linux kernel image for the armhf architecture.

linux-image-omap - Linux kernel image for the armhf architecture.

linux-image-generic-lts-utopic - Generic Linux kernel image

linux-image-generic-lts-vivid - Generic Linux kernel image

linux-image-generic-lts-wily - Generic Linux kernel image

linux-image-generic-lts-xenial - Generic Linux kernel image

linux-image-generic-lpae-lts-utopic - Generic Linux kernel image

linux-image-generic-lpae-lts-vivid - Generic Linux kernel image

linux-image-generic-lpae-lts-wily - Generic Linux kernel image

linux-image-generic-lpae-lts-xenial - Generic Linux kernel image 


'Linux > Ubuntu' 카테고리의 다른 글

linux cpu hotplug  (0) 2016.10.11
ubuntu php4 설치  (0) 2016.10.06
dhcp 받아오기 실패시 static ip로 설정하기 (timeout 시)  (0) 2016.10.05
proprietary driver on lubuntu  (0) 2016.09.09
gnome-disks 벤치마크  (0) 2016.09.05
Posted by 구차니
embeded/odroid2016. 10. 5. 20:39

다시 보니..

안드로보이가 4개 안뜨길래

생각을 해보니.. 아.. 커널 업데이트 되면서 그렇구나...


$ sudo odroid-utility.sh 


2 - 1

   ┌──────────────────────────────────────────┐

   │ Main Menu                                │

   │                                          │

   │  1  HDMI Configuration                   │

   │  2  Update your Kernel/Firmware          │

   │  3  Install/Update XBMC (Ubuntu Only)    │

   │  4  Resize your root partition           │

   │  5  Xorg On/Off                          │

   │  6  Rebuild Xorg DDX (fixes ABI errors)  │

   │  7  Change Hostname                      │

   │  10 Pulse Audio Control (on/off)         │

   │                                          │

   │                                          │

   │         <Select>         <Exit>          │

   │                                          │

   └──────────────────────────────────────────┘

   ┌───────────────────────────────────────────────────────────┐

   │ Kernel Update/Configuration                               │

   │                                                           │

   │  1 Update Kernel                                          │

   │  2 Install firmware files to /lib/firmware                │

   │  3 Update boot scripts                                    │

   │  4 Update udev rules for ODROID subdevices (mali, cec..)  │

   │  5 Update the bootloader                                  │

   │  6 Exit                                                   │

   │                                                           │

   │                                                           │

   │              <확인>                <취소>                 │

   │                                                           │

   └───────────────────────────────────────────────────────────┘ 



아무튼 odroid-utility.sh를 통해서 커널을 업데이트(실은 다운그레이드?)하니

정상적으로 리부팅이 된다.

'embeded > odroid' 카테고리의 다른 글

커널에서 로고 띄우는 갯수가...  (0) 2016.10.06
molex 50-37-5043 커넥터 고찰?  (0) 2016.10.06
odroid USB uart  (0) 2016.10.05
odroid eMMC 중고 지름  (0) 2016.10.05
odroid eMMC 설정  (0) 2016.10.04
Posted by 구차니
Linux/Ubuntu2016. 10. 5. 18:18

dhclient.conf에서 lease를 이용하면 된다고 한다.


timeout 10;

lease {

interface "eth0";

fixed-address 10.0.0.10;

option subnet-mask 255.255.255.0;

renew 2 2022/1/1 00:00:01;

rebind 2 2022/1/1 00:00:01;

expire 2 2022/1/1 0:00:01;


or you can assign a second IP to the interface like /etc/network/interfaces


auto lo

iface lo inet loopback

iface eth0 inet dhcp


auto eth0:1

iface eth0:1 inet static

address 10.10.10.2

netmask 255.255.255.0

[링크 : http://stackoverflow.com/questions/12727175/set-static-ip-if-not-obtained-from-dhcp-script]


The timeout statement


timeout time ;


The timeout statement determines the amount of time that must pass between the time that the client begins to try to determine its address and the time that it decides that it's not going to be able to contact a server. By default, this timeout is sixty seconds. After the timeout has passed, if there are any static leases defined in the configuration file, or any leases remaining in the lease database that have not yet expired, the client will loop through these leases attempting to validate them, and if it finds one that appears to be valid, it will use that lease's address. If there are no valid static leases or unexpired leases in the lease database, the client will restart the protocol after the defined retry interval.Lease Declarations



The lease declaration


lease { lease-declaration [ ... lease-declaration ] }


The DHCP client may decide after some period of time (see PROTOCOL TIMING) that it is not going to succeed in contacting a server. At that time, it consults its own database of old leases and tests each one that has not yet timed out by pinging the listed router for that lease to see if that lease could work. It is possible to define one or more fixed leases in the client configuration file for networks where there is no DHCP or BOOTP service, so that the client can still automatically configure its address. This is done with the lease statement.


NOTE: the lease statement is also used in the dhclient.leases file in order to record leases that have been received from DHCP servers. Some of the syntax for leases as described below is only needed in the dhclient.leases file. Such syntax is documented here for completeness.


A lease statement consists of the lease keyword, followed by a left curly brace, followed by one or more lease declaration statements, followed by a right curly brace. The following lease declarations are possible:

[링크 : https://linux.die.net/man/5/dhclient.conf]


odroid 설정파일

$ vi /etc/dhcp/dhclient.conf

# Configuration file for /sbin/dhclient, which is included in Debian's

#       dhcp3-client package.

#

# This is a sample configuration file for dhclient. See dhclient.conf's

#       man page for more information about the syntax of this file

#       and a more comprehensive list of the parameters understood by

#       dhclient.

#

# Normally, if the DHCP server provides reasonable information and does

#       not leave anything out (like the domain name, for example), then

#       few changes must be made to this file, if any.

#


option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;


#send host-name "andare.fugue.com";

send host-name = gethostname();

#send dhcp-client-identifier 1:0:a0:24:ab:fb:9c;

#send dhcp-lease-time 3600;

#supersede domain-name "fugue.com home.vix.com";

#prepend domain-name-servers 127.0.0.1;

request subnet-mask, broadcast-address, time-offset, routers,

        domain-name, domain-name-servers, domain-search, host-name,

        dhcp6.name-servers, dhcp6.domain-search,

        netbios-name-servers, netbios-scope, interface-mtu,

        rfc3442-classless-static-routes, ntp-servers,

        dhcp6.fqdn, dhcp6.sntp-servers;

#require subnet-mask, domain-name-servers;

#timeout 60;

#retry 60;

#reboot 10;

#select-timeout 5;

#initial-interval 2;

#script "/etc/dhcp3/dhclient-script";

#media "-link0 -link1 -link2", "link0 link1";

#reject 192.33.137.209;


#alias {

#  interface "eth0";

#  fixed-address 192.5.5.213;

#  option subnet-mask 255.255.255.255;

#}


#lease {

#  interface "eth0";

#  fixed-address 192.33.137.200;

#  medium "link0 link1";

#  option host-name "andare.swiftmedia.com";

#  option subnet-mask 255.255.255.0;

#  option broadcast-address 192.33.137.255;

#  option routers 192.33.137.250;

#  option domain-name-servers 127.0.0.1;

#  renew 2 2000/1/12 00:00:01;

#  rebind 2 2000/1/12 00:00:01;

#  expire 2 2000/1/12 00:00:01;

#} 


어? odroid에 해봤는데 안되네.. 머지??!?!

아무튼.. dhcp는 link가 탐지되어야 하니 최소한 랜은 꽂혀서 hub에 연결은 되어야 dhcp client가 가동된다.


+

$ sudo vi /etc/dhcp/dhclient-enter-hooks.d/debug

RUN="yes"

                                echo "$var='${!var}'" >> /tmp/dhclient-script.debug 


[링크 : https://lists.debian.org/debian-user/2010/10/msg00375.html]

위의 내용을 바꾸면 /tmp/dhclient-script.debug 에 로그가 쌓이는데


Wed Oct 5 21:23:43 KST 2016: entering /sbin, dumping variables.

reason='PREINIT'

interface='eth0'

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

Wed Oct 5 21:23:54 KST 2016: entering /sbin, dumping variables.

reason='FAIL'

interface='eth0'

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

Wed Oct 5 21:24:10 KST 2016: entering /sbin, dumping variables.

reason='PREINIT'

interface='eth0'

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

Wed Oct 5 21:24:11 KST 2016: entering /sbin, dumping variables.

reason='TIMEOUT'

interface='eth0'

new_ip_address='192.168.219.130'

new_network_number='192.168.219.0'

new_subnet_mask='255.255.255.0'

new_broadcast_address='192.168.219.255'

new_routers='192.168.219.1'

new_domain_name_servers='1.214.68.2 61.41.153.2'

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

Wed Oct 5 21:24:14 KST 2016: entering /sbin, dumping variables.

reason='FAIL'

interface='eth0'

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

Wed Oct 5 21:27:14 KST 2016: entering /sbin, dumping variables.

reason='FAIL'

interface='eth0'

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

Wed Oct 5 21:27:40 KST 2016: entering /sbin, dumping variables.

reason='PREINIT'

interface='eth0'

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

Wed Oct 5 21:27:41 KST 2016: entering /sbin, dumping variables.

reason='BOUND'

interface='eth0'

new_ip_address='192.168.219.130'

new_network_number='192.168.219.0'

new_subnet_mask='255.255.255.0'

new_broadcast_address='192.168.219.255'

new_routers='192.168.219.1'

new_domain_name_servers='1.214.68.2 61.41.153.2'

old_ip_address='192.168.219.130'

old_network_number='192.168.219.0'

old_subnet_mask='255.255.255.0'

old_broadcast_address='192.168.219.255'

old_routers='192.168.219.1'

old_domain_name_servers='1.214.68.2 61.41.153.2'

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


운 좋게(?) timeout 한번나서 설정되었지만.. 내가 의도한 녀석은 아니고..

정상적으로 dhcp를 통해 받아와서야 BOUND로 표기되었다...

lease는 그냥 timeout 인건가.. 아니면 timeout을 길게줘야하나?



내용에 의하면.. 내가 원하는... DHCP 값을 못 받아 올 경우

기본 값으로 설정하는 용도로는 맞지 않다는 거군....

Expire

The DHCP client has failed to renew its lease or acquire a new one, and the lease has expired. The IP address must be relinquished, and all related parameters should be deleted, as in RENEW and REBIND.


Fail

The DHCP client has been unable to contact any DHCP servers, and any leases that have been tested have not proved to be valid. The parameters from the last lease tested should be deconfigured. This can be handled in the same way as EXPIRE.


Timeout

The DHCP client has been unable to contact any DHCP servers. However, an old lease has been identified, and its parameters have been passed in as with BOUND. The client configuration script should test these parameters and, if it has reason to believe they are valid, should exit with a value of zero. If not, it should exit with a nonzero value.

The usual way to test a lease is to set up the network as with REBIND (since this may be called to test more than one lease) and then ping the first router defined in $routers. If a response is received, the lease must be valid for the network to which the interface is currently connected. It would be more complete to try to ping all of the routers listed in $new_routers, as well as those listed in $new_static_routes, but current scripts do not do this.


[링크 : https://linux.die.net/man/8/dhclient-script]

[링크 : https://www.freebsd.org/cgi/man.cgi?dhclient-script(8)]


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

'Linux > Ubuntu' 카테고리의 다른 글

ubuntu php4 설치  (0) 2016.10.06
ubuntu apt를 통해 자동 업데이트 되지 않도록 하기  (0) 2016.10.05
proprietary driver on lubuntu  (0) 2016.09.09
gnome-disks 벤치마크  (0) 2016.09.05
lynx 마우스 사용하기  (0) 2016.08.18
Posted by 구차니

문득 얼마전 지하철에 있던 크레마 크레타 터치를 만져보고 떠올라서 끄적끄적



 전자책의 현재

솔찍히 말하자면 전자책은 아직은 가치가 없다. 칼라로 나오지도 않고, 많이 나아졌다지만 깜박이는 문제도 있고 페이지 넘기는데 오래 걸린다. 그리고 아직 한국에서는 전자책이 싸지도 편하지도 않다. 모든 책은 다 DTP를 통해서 편집하고 출판할텐데 왜 이렇게 전자책으로 나오는게 적을까? 어쩌면 전자책은 싸게 나와야 하니까 신간을 비싸게 뽕 뽑지 못하므로 전자책으로의 출판이 더뎌질수 밖에 없는 현실적이고 경제적인 이유가 있을지도 모르겠다.


 전자책의 미래

언젠가는 칼라 e-Ink도 나올테고 깜박임 없이 그리고 더 고해상도의 더 큰 그리고 가벼운 전자잉크 패널이 나올지도 모른다. arm cpu들도 점점 더 전기를 조금 먹고 성능은 더 빨라질테고 그러면 종이책과 비슷한 속도로(?) 페이지가 갱신될지도 모른다. 메모리는 점점 더 커지고. 더 고해상도의 전자책이 공급되고, 모든 책들이 언젠가는 전자책으로 먼저 접할수 있는 시대가 올지도 모르며, 실시간 업데이트로 정오표를 통해 판본 별로 볼 수 있는 날이 올지도 모른다.(의미는 없을지 모르지만)



 내가 상상하는 전자책

내가 만든다면... 이런 녀석을 만들지도..

1. 더 큰 전자책

>> 양손으로 들 수 있는 듀얼 모니터 제품으로 출시

>> 아이패드 사이즈로 두 페이지를 한번에 출력할 수도, 크게 볼 수 도 있는 버전

>> 듀얼 모니터가 접히는 녀석이면 더 좋겠지만 LCD 처럼 플렉서블하게 나올진 미지수니 일단은 접이식으로


2. 터치 센서나 촉감 센서 추가

>> 페이지 양옆에 센서를 추가하여 책의 가장자리를 훑으며 페이지 넘기는 제스쳐 추가


3. 근거리 전력송신

>> 솔찍히 의미가 있을진 모르겠지만 1m 정도의 거리에 근거리 전력송신(저출력)이 가능해진다면

>> 디스플레이 부분과 배터리 부분을 분리하여 가방에 배터리를 넣고 더 가벼운 전자책으로 사용

>> 어짜피 전자책 특성상 페이지를 갱신할때만 배터리를 소모하니 가능할...지도?

>> 아니면 본체에는 한 200mA 정도의 소용량 배터리와 추가 배터리로 2000mA 정도의 보조 배터리 디자인



적어 놓고 보니 딱...

리브레토 W100 e-ink 버전이네 ㅋㅋㅋ

Posted by 구차니
embeded/odroid2016. 10. 5. 11:14

흐음...


사자니 돈 아깝고...

[링크 : http://www.hardkernel.com/main/products/prdt_info.php?g_code=G134111883934]


2.5mm pitch니까 조금 어거지로 해서 2.54mm 핀헤더로 어떻게 안되려나? ㅠㅠ

[링크 : http://odroid.com/dokuwiki/doku.php?id=en:usb_uart_kit]


커넥터 비싸... ㅠㅠ 망할 몰렉스

[링크 : http://eleparts.co.kr/EPX3G74U]

'embeded > odroid' 카테고리의 다른 글

molex 50-37-5043 커넥터 고찰?  (0) 2016.10.06
odroid reboot가 안되는 경우  (0) 2016.10.05
odroid eMMC 중고 지름  (0) 2016.10.05
odroid eMMC 설정  (0) 2016.10.04
odoroid 지름... 예정?  (0) 2016.10.03
Posted by 구차니
embeded/odroid2016. 10. 5. 10:51

일단.. 8GB 2개 질러서

둘다 적용해보고

그 다음에... 심심하면(?) sd 어댑터에 연결해서 라즈베리에 해봐야지



[링크 : http://cafe.naver.com/joonggonara/338041369]

'embeded > odroid' 카테고리의 다른 글

odroid reboot가 안되는 경우  (0) 2016.10.05
odroid USB uart  (0) 2016.10.05
odroid eMMC 설정  (0) 2016.10.04
odoroid 지름... 예정?  (0) 2016.10.03
odroid u3 전력소모량 체크  (0) 2016.10.01
Posted by 구차니
embeded/odroid2016. 10. 4. 13:02

찾아보니.. eMMC는 부트영역이 따로 설정되서 그냥은 못 건드리니

uboot에서 명령을 통해서 설정해야 하는 듯?


일단 SD 메모리만 꽂고(eMMC가 부팅 우선순위를 가지니)

1. 복구 이미지를 SD에 구워서 부팅후 eMMC를 꽂으면 복구

2. uart를 이용해서 uboot에서 "movi init 1" 와 "run copy_uboot_sd2emmc"명령을 통해 복구


Case 1: Using the Recovery image


1.Download Recovery Image file.

2.Unzip with 7-Zip (Windows) or Linux using “xz -d”

3.Prepare a microSD card and flash the attached image. flashing → refer this link

4.Boot with the microSD without eMMC.

5.Turn on U2/U3 and wait a few seconds and blue LED will blink.

6.Plug your eMMC module into U2/U3

7.Plug micro-USB cable into U2/U3 and connect other side to your PC USB host or ODROID's USB host port.

  (This is a trigger to start the recovery)

8.After recovery process (only a few seconds), the blue LED will turn off automatically.

9.Finish. Install OS on your eMMC with as usual.


Case 2 : Boot from SD card and access the eMMC


You need the USB-UART and serial terminal program like a Putty.


1. Boot the board with a Ubuntu SD Card without eMMC.

2. Enter into the u-boot prompt by Enter key or Space key in 3 seconds.

3. Install the eMMC module on the board.

4. Issue a command to connect the eMMC.


Exynos4412 # movi init 1

5. Copy the boot code from SD to eMMC.


Exynos4412 # run copy_uboot_sd2emmc

6. Remove the SD card and power on with the eMMC. The Blue LED should be on by eMMC boot loader.


[링크 : http://odroid.com/dokuwiki/doku.php?id=en:emmc_recovery_u3]


[링크 : http://odroid.com/dokuwiki/doku.php?id=en:emmc_recovery]

    [링크 : http://odroid.com/dokuwiki/doku.php?id=en:emmc_recovery_u3]

    [링크 : http://codewalkerster.blogspot.com/2014/02/how-to-recovery-emmcemmc-50-u-boot-on.html]


링크도 깨져있고..XU4용은 안드로이드고..

그냥 eMMC 구매하는건 포기할까?

웬지 이걸써서 라즈베리에서 SD 리더용 어댑터로 부팅이 안될거 같은데..


+

[링크 : http://codewalkerster.blogspot.com/2014/02/how-to-recovery-emmcemmc-50-u-boot-on.html]

[링크 : http://forum.odroid.com/viewtopic.php?f=53&t=969]

[링크 : http://forum.odroid.com/download/file.php?id=2841] u3용 이미지

exynos4412_emmc_recovery_from_sd_20140629.zip


'embeded > odroid' 카테고리의 다른 글

odroid USB uart  (0) 2016.10.05
odroid eMMC 중고 지름  (0) 2016.10.05
odoroid 지름... 예정?  (0) 2016.10.03
odroid u3 전력소모량 체크  (0) 2016.10.01
odroid 가버너 관련  (0) 2016.09.12
Posted by 구차니
embeded/odroid2016. 10. 3. 20:26

eMMC 8GB 냐 32GB냐... (중고라서 1만 / 2만.. 고민되네)



일단 스펙상으로는


32Gbyte eMMC Version 5.0 interface from Sandisk. 

Note! Exynos4412 eMMC host version is 4.41


[링크 : http://www.hardkernel.com/main/products/prdt_info.php?g_code=G140489172644]


나중에 쓸만하면... 라즈베리에다가 eMMC 리더 사용해서 SD에 꽂으면 성능이 좀더 오를려나?

'embeded > odroid' 카테고리의 다른 글

odroid eMMC 중고 지름  (0) 2016.10.05
odroid eMMC 설정  (0) 2016.10.04
odroid u3 전력소모량 체크  (0) 2016.10.01
odroid 가버너 관련  (0) 2016.09.12
odroid u3 kernel build  (0) 2016.09.11
Posted by 구차니
embeded/odroid2016. 10. 1. 18:47

powersave 2.66W

>> kernl -j4 2.67W

>> kernl -j2 2.86W


performance 2.77W

>> kernel -j4 6.3W



음.. 의외로 조금 먹네?

'embeded > odroid' 카테고리의 다른 글

odroid eMMC 설정  (0) 2016.10.04
odoroid 지름... 예정?  (0) 2016.10.03
odroid 가버너 관련  (0) 2016.09.12
odroid u3 kernel build  (0) 2016.09.11
odroid cpufrequtils를 이용한 클럭 조절  (0) 2016.09.11
Posted by 구차니
embeded/Cortex-M4 Ti2016. 9. 28. 20:54



[링크 : http://stackoverflow.com/questions/31887470/get-the-timestamp-from-microcontroller-tm4c123-in-c]

[링크 : http://forum.43oh.com/topic/7533-tm4c129-hibernation-rtc-and-calendar-mode/]


tm4c123x 에서 tm4c129x로 가야 할지도 모르겠네 -_-

[링크 : http://www.deyisupport.com/.../an01296-Differences-Between-TM4C123x-and-TM4C129x-MCUs.pdf]

'embeded > Cortex-M4 Ti' 카테고리의 다른 글

tm4c HibernateEnableExpClk() 차이점  (0) 2016.10.22
tm4c ..어라? hibernate...  (0) 2016.10.20
tm4c uart fifo/buffer 문제  (0) 2016.09.28
lm3s tm4c 시스템 클럭 차이점  (0) 2016.09.24
ek-tm4c123gxl launchpad 클럭  (0) 2016.09.24
Posted by 구차니