X96 AirP4 간단 리뷰 및 Coreelec 설치하기
안녕하세요?
이 기기를 차후 HA 기기로 검토하는 중에 아무리 해도 저희에게 익숙한 Armbian 이 설치되지 않았습니다.
그런데 금일 새벽 CoreElec 를 설치해보니 거의 모든 동작이 완벽하게 작동이 됩니다.
제가 원하던 것은 우분투 서버 정도의 기능에 모든 기능이 작동되는 것이였는데요. 어쩔 수 없이 CoreELEC 의 힘을 빌려서 KODI + HA 의 플랫폼으로 검토하게 되었습니다.
이렇다 보니, 어느 운영체제를 사용하던지 간에 문제가 없어서 일단 CoreELEC 를 설치해보도록 하겠습니다.
1. 제품 개봉기
측면에 USB2.0 / SD카드 슬롯 / USB3.0 포트가 있습니다.
후면에 DC어댑터 단자 / 광출력 / HDMI 포트 / ETHERNET 포트 / AV (CVBS) / USB2.0 포트가 있습니다.
리셋 버튼은 AV 단자 안에 있음으로 그 부분을 공략하여 처리하면 됩니다.
전면부에는 부팅하면 시계가 나오고 카드가 탈착되었는지 / HDMI 인지 CVBS 인지 정보가 나옵니다.
2. 안드로이드 부팅
안드로이드 모양은 하나같이 중국 박스처럼 생겼습니다.
특이하게도 이 모델은 P4 버전으로써, 100M 이더넷인줄 아는데요 1000M으로 나오고 있습니다.
차후에 속도 측정으로 한번 알아보도록 하겠습니다.
상기 사진에서 알 수 있듯이, S905X3 를 사용하고 있고 CortexA55 / Mali G31 을 사용하고 있습니다.
특히 G31 MP1 이라 1개 코어밖에 없어서 3D 작업은 거의 안된다고 보시면 됩니다.
AMVDEC 내장 VPU로 영상 재생에 특화되었다고 보시면 됩니다.
그리고 안드로이드의 경우 ARM64가 아닌 32비트를 사용하고 있습니다.
부트로더의 경우 uboot 을 사용하고 있어, SD카드로 부팅을 할 수 있습니다. uboot 코드를 보지는 않았지만, AV단자 안에 숨어있는 리셋버튼을 누르면 USB 나 SD카드 부팅으로 전환할 수 있도록 코드가 구성되어 있는 것 같습니다.
3. 기기 코드 네임
기기 코드네임을 보면 sm1 이라고 나옵니다. 본래 G?? 이런 이름으로 Amlogic CPU의 코드네임이 정해지는데요.
실제로 S905X2 의 경우 g12a 입니다. 그 다음 세대는 g13이여야 할 것 같은데 sm1 이라고 불리고 있습니다.
4. 설치 이미지 다운로드
https://github.com/CoreELEC/CoreELEC/releases/
5. SD카드 이미지 쓰기
4번 파일을 다운받고 압축을 풀면 img 파일이 나옵니다.
이 이미지를 etcher 로 SD카드에 다운로드 합니다. (일종의 dd 라고 보시면 됩니다.)
하기와 같이 이미지를 선택하고 드라이브를 선택합니다.
마지막으로 Flash 를 누릅니다.
한번 Write 가 시작되면, 끝나고 Verifiying 작업이 시작됩니다. 그 부분은 스킵하셔도 무방합니다.
그리고 SD카드의 COREELEC 이름으로 된 디스크로 이동하여 하기와 같은 작업을 합니다.
device_trees 폴더로 이동하여 하기 파일을 복사하여 최상위에 dtb.img 로 이름을 바꾸어 놓습니다.
sm1_s905x3_4g_1gbit.dtb |
6. 부팅하기
전원을 뺀 상태에서 SD카드를 꽂습니다.
그리고 AV 단자 안쪽으로 리셋버튼이 있기 때문에 그걸 누른 상태에서 전원을 넣고 대략 1초 뒤에 뗍니다.
하기와 같이 부팅이 진행됩니다.
와이파이 및 이더넷 그리고 블루투스 정상적으로 작동합니다.
7. 간단 점검
SSH 연결을 하여 하드웨어 상태를 간단하게 체크해보았습니다.
램 용량의 경우 하기와 같이 4GB가 잘 잡히는 것 같습니다.
CoreELEC:~ # free -h total used free shared buff/cache available Mem: 3.7Gi 294Mi 3.1Gi 12Mi 367Mi 3.4Gi Swap: 0B 0B 0B |
이더넷의 경우 특이하게 1기가로 나오네요.
오.. 좋습니다. 이러면 파일서버 겸으로 사용해도 문제가 없을 사양입니다.
CoreELEC:~ # ethtool eth0 Settings for eth0: Supported ports: [ TP MII ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supported pause frame use: No Supports auto-negotiation: Yes Supported FEC modes: Not reported Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Advertised FEC modes: Not reported Link partner advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Link partner advertised pause frame use: Symmetric Link partner advertised auto-negotiation: Yes Link partner advertised FEC modes: Not reported Speed: 1000Mb/s Duplex: Full Port: MII PHYAD: 0 Transceiver: external Auto-negotiation: on Supports Wake-on: ug Wake-on: d Current message level: 0x0000003f (63) drv probe link timer ifdown ifup Link detected: yes |
실제로 USB를 물려서 속도 측정을 하여 얼마가 나오는지는 체크를 해봐야할 것 같습니다.
내장 SDCARD 를 사용할 경우 하기와 같은 속도가 나옵니다.
역시 SDCARD 의 경우 HS200 모드로 동작하기 때문에 속도가 그렇게 많이 나오지는 않네요.
iperf 수치는 하기와 같습니다.
PS D:\다운로드\iperf-2.0.9-win64> .\iperf.exe -c 192.168.0.110 -t 60 ------------------------------------------------------------ Client connecting to 192.168.0.110, TCP port 5001 TCP window size: 208 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.0.8 port 10502 connected with 192.168.0.110 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-60.0 sec 6.60 GBytes 945 Mbits/sec |
기가비트가 맞습니다.
htop 으로 자원 상태를 확인해 보았습니다. 하기와 같이 CoreELEC 가 돌아가고 있어서 램 용량에 약간 손해가 있지만,
충분한 용량이라 문제가 없는 것 같습니다.
8. 향후 계획
CoreELEC 는 가만히 두고, docker 를 활용하여 HomeAssistant 구성을 해 보도록 하겠습니다.
혹시 느린 SD카드 대신 USB 부팅이 되는지? 이런 부분도 확인 예정에 있습니다.
감사합니다.