전체 글

전체 글

    [TI] pip 설치 방법

    아래와 같은 image에는 pip가 설치되어 있지 않다.tisdk-tiny-image-j721e-evm.tar.xz직접 SDK에 패키지를 설치할 수도 있지만, 이더넷 케이블만 연결되어 있다면 pip를 설치할 수 있다. 만약 설치되어 있지 않다면, get-pip.py 스크립트를 사용하여 설치할 수 있습니다. get-pip.py는 Python 패키지 관리자(PIP)를 설치하고 업데이트하는 스크립트다. TI SOC는 일반 PC와 달리 apt를 사용할 수 없기 때문에 인터넷을 통해 패키지를 다운 받는다. 사용하고 있는 보드에 이더넷 케이블을 연결 후 curl 또는 wget 명령어를 통해 get-pip.py 파일을 다운 받는다.wget:wget https://bootstrap.pypa.io/get-pip.pycu..

    Jetson Camera Debugging

    Jetson 플랫폼에서 카메라 브링업을 진행하다 V4L2 쪽이 아닌 에러가 발생하면 원인을 알아햐 하는데 원인을 알기 위해서는 Jetson 플랫폼에서 디버깅 방법을 알아야 합니다.테스트 환경Jetpack 5.xTrace추적 로그를 활성화시키기 위해 아래 터미널 창을 열어 아래 명령어 입력sudo suecho 1 > /sys/kernel/debug/tracing/tracing_onecho 30720 > /sys/kernel/debug/tracing/buffer_size_kbecho 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enableecho 1 > /sys/kernel/debug/tracing/events/freertos/enableecho 2 > /sys/k..

    [TI] QT 사용 방법

    테스트 환경Ubuntu 22.04SK-AM62A-LP09_02_00_05 Processor SDK본 글은 AM62A에 크로스 컴파일 된 Qt 라이브러리를 사용하고 Qt-Creator를 구성하기위한 글 입니다. 먼저 Ubuntu에서 qtcreator가 설치되어 있어야 합니다. 본 글에서 사용 된 Qt 버전은 버전 5.15.3입니다. HOST PC에 qtcreator를 설치 한다.sudo apt install qtcreator AM62a SDK 다운로드https://www.ti.com/tool/download/PROCESSOR-SDK-LINUX-AM62A/09.02.00.05 PROCESSOR-SDK-LINUX-AM62A Software development kit (SDK) | TI.comdownload ..

    dirty 태그 제거

    테스트 환경Ubuntu 22.04SK-AM62A-LP09_02_00_05 Processor SDKSDK 빌드를 진행하다 보면 커널 버전이나 드라이버 모듈 정보에 "dirty" 태그가 붙는 것을 확인할 수 있다.Git 버전 관리 시스템에서 트래킹하는 커널 소스 파일이 변경되었거나, 새로운 파일이 추가되었지만 아직 커밋되지 않은 경우 "dirty" 태그가 붙게된다. 커널 소스를 빌드할 때, 빌드된 커널의 버전 문자열(uname -r로 확인 가능)에 "dirty"라는 태그가 추가되고, 이 태그는 빌드 당시 커널 소스가 수정된 상태였음을 표시한다. 아래 BSP 파일안에 setlocaleverion이라는 스크립트 파일이 있는데, 파일 내 scm_version 함수 에서 "dirty" 태그를 붙게 한다. 이 스크립..

    Synology File Station Upload & Download API

    테스트 환경Ubuntu 22.04DSM Version 6DSM 로그인 웹 API 개발자 가이드를 확인해 보면 웹 API를 사용하여 DSM 로그인을 수행하는 방법을 설명하고 Synology NAS의 API를 기반으로 응용 프로그램을 확장하여 응용 프로그램이 HTTP/HTTPS 요청 및 응답을 통해 DSM 또는 DSM 패키지와 상호 작용할 수 있다고 한다. 본 글에서는 curl을 이용하여 해당 API를 진행한다. 가이드 문서를 보면 전체 API Work Flow는 아래와 같다.  먼저 애플리케이션이 Synology 프로덕션과 상호 작용하도록 하려면 애플리케이션이 먼저 계정과 비밀번호로 로그인해야 한다. 성공하면 API는 인증된 세션 ID를 반환하게 되는데, 반환한 세션 ID는 보관하고 다른 API 요청을 할..

    [09] TDA4VH - mcu_i2c0 활성화

    테스트 환경Ubuntu 22.04J78S4XG01EVMJ75S4XG01EVM Processor SDK Version 09_02_00_059.2 SDK 기준으로 muc_i2c0은 기본적으로 비활성화되어 있다. 이를 활성화하기 위해서는 dts 파일에 mcu_i2c0 항목을 추가 시켜주어야 한다. 회로도나 데이터시트를 보게 되면 SOC에 M35, G34핀이 mcu_i2c0 핀에 해당한다.현재 EVM 기준으로 mcu_i2c0은 PMIC 칩에 물려 있다.  pmic 데이터 시트를 확인해 보면 i2c1에는 0x48로 주소가 잡히게 되고, i2c2에는 0x12로 주소가 잡히게 된다고 적혀있다.i2c2는 mcu_i2c0을 나타내며, 정상적으로 활성화되어 있다면 0x12 주소가 잡혀야 한다.KERNELmcu_i2c0 활..

    [09] TDA4VH - emmc

    테스트 환경Ubuntu 22.04J78S4XG01EVMJ75S4XG01EVM Processor SDK Version 09_02_00_05먼저 emmc로 부팅하기 위해서는 여러가지 방법이 있는데 그 중에서 USB 장치 펌웨어 업그레이드 즉 DFU를 통한 방법으로 진행한다. 우선 DFU 모드를 구성하기 위해 부팅 스위치를 구성해야 한다. DFU 모드 부팅 스위치를 설정하려면 아래 이미지 확인한다.SW11[1-8] = 1000 0000SW7[1-8] = 0010 0000SW2[1-10] = 0101001010 USB 포트를 통해 보드에 전원이 공급되면 dmesg 명령어를 통해 USB 장치로 확인이 가능하다. 그 외에도 dfu-util을 사용하여 검색할 수 있습니다 .*dfu-util이 설치되어 있지 않다면 ..

    Jetson dynamic overlay

    테스트 환경AGX ORIN DevitJETPACK 6.1Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/overlay 위치에 있는 dynamic.dts 파일은 Orin 모듈을 Flash 할 시 해당 설정 값을 적용하여 부팅하낟.Flash Command:sudo ./flash.sh jetson-agx-orin-devkit internal flash할 때 참조되는 jetson-agx-orin-devkt.conf 파일을 보게 되면, 파일 하단에 OVERLAY_DTB_FILE 항목이 있다. 해당 항목에 Orin Module에 dynamic.dtbo가 설정되어 있다.dynamic.dts 파일을 열어보면 아래와 같이 구성되어 있다.일반적으로 JETSON에서 지원하는 ..

    [Kernel] Device Tree Overlay

    테스트 환경Ubuntu 22.04SK-AM62A-LP09_02_00_05 Processor SDKDevice Tree Overlay장치 트리 오버레이는 장치 트리 구조에 대한 수정 사항을 포함하는 바이너리 파일입니다. 원래 장치 트리 소스(DTS) 파일을 직접 수정하는 대신 오버레이를 사용하면 시스템을 다시 컴파일하거나 재부팅하지 않고도 변경 사항을 동적으로 적용할 수 있습니다. 오버레이 파일(*. dtbo)은 장치 트리 오버레이 소스(DTO) 파일을 컴파일하여 생성됩니다. 장치 트리 오버레이(DTO)를 사용할지 아니면 전체 장치 트리(DT)를 수정할지는 여러 요인에 따라 달라집니다. DTO를 사용하려면 일반적인 DT 구문에 익숙해야 하며, 기본 DT를 참조해야 오버레이 수정 사항을 이해할 수 있습니다...

    [Kernel] Device Tree

    테스트 환경Ubuntu 22.04SK-AM62A-LP09_02_00_05 Processor SDK디바이스 트리 디바이스 트리는 SoC의 내부 메모리 매핑 주변 장치, 외부 하드웨어 및 캐리어 보드를 포함한 시스템 하드웨어를 설명합니다. 일반적으로 칩 제조사는 캐리어 보드에 대한 참조 설계 와 모듈 및 캐리어 보드에 대한 일치하는 장치 트리를 제공하므로 보드 설계를 사용자 정의하고 일부 주변 장치를 연결할 때 설계 기반으로 사용한 캐리어 보드에서 장치 트리를 수정 해야 할 수 있습니다.캐리어 보드(Carrier Board)는 주로 System-on-Module(SoM) 또는 Compute Module과 같은 작은 모듈형 컴퓨터를 확장하고 연결하기 위해 설계된 하드웨어 보드입니다. 이 보드는 SoM에서 제공..