반응형

전체 글 819

AWS IoT Core를 이용한 기본 설정

AWS IoT Core를 이용한 기본 설정1. 개요AWS IoT Core는 AWS에서 제공하는 클라우드 기반 IoT 서비스로, 다양한 IoT 디바이스와 안전하게 연결하고 데이터를 송수신할 수 있도록 지원합니다. 본 포스팅에서는 AWS IoT Core의 기본 설정 방법을 소개하고, ESP32를 이용한 온도 센싱 디바이스 예제를 구현하여 AWS IoT 서버와의 연동을 설명하겠습니다.2. AWS IoT Core 설정2.1 AWS IoT 콘솔 접속 및 사물(Thing) 등록AWS 콘솔(https://aws.amazon.com/console/)에 로그인합니다.AWS IoT Core 서비스로 이동합니다.좌측 메뉴에서 Manage > Things를 선택합니다.Create Things 버튼을 클릭하고, 원하는 사물(T..

AWS IoT 2025.03.25

Android HAL 모듈 분석: Camera HAL과 Audio HAL

Android HAL 모듈 분석: Camera HAL과 Audio HALAndroid의 HAL(Hardware Abstraction Layer)은 하드웨어와 상위 애플리케이션 프레임워크 사이의 추상화 계층을 제공하는 중요한 구성 요소입니다. 이번 글에서는 HAL의 개념을 설명하고, 대표적인 HAL 모듈인 Camera HAL과 Audio HAL을 AOSP(Android Open Source Project) 코드와 함께 분석하겠습니다.1. HAL 개요HAL은 Android의 아키텍처에서 하드웨어 추상화 계층을 담당하며, 하드웨어와 직접 상호 작용하는 Native 코드로 구현됩니다. Android의 상위 레벨 API(Application Framework)는 HAL을 통해 하드웨어에 접근하며, HAL은 다시 ..

Android/Framework 2025.03.25

DMA(Direct Memory Access) 처리: 개념과 사용법, 그리고 RK3399 예제

DMA(Direct Memory Access) 처리: 개념과 사용법, 그리고 RK3399 예제DMA란 무엇인가?DMA(Direct Memory Access)는 CPU의 개입을 최소화하여 메모리와 주변 장치 간에 데이터를 직접 전송할 수 있는 기능입니다. 이를 통해 데이터 전송 속도를 대폭 향상시키고 CPU의 부하를 줄일 수 있습니다. DMA는 고속 데이터 전송이 필요한 임베디드 시스템에서 필수적인 기능으로 사용됩니다.DMA의 작동 원리CPU는 DMA 컨트롤러에 데이터 전송 작업을 요청합니다.DMA 컨트롤러는 데이터 소스와 목적지 주소를 설정합니다.데이터 전송이 진행되며, CPU는 다른 작업을 수행할 수 있습니다.전송 완료 시 DMA 컨트롤러는 인터럽트를 통해 CPU에 완료를 알립니다.이와 같은 방식으로 ..

Linux/Kernel Driver 2025.03.25

IoT 시스템 아키텍처: 디바이스 <-> AWS IoT 서버 간 데이터 흐름

IoT 시스템 아키텍처: 디바이스 AWS IoT 서버 간 데이터 흐름1. 서론사물인터넷(IoT, Internet of Things)은 다양한 물리적 장치들이 인터넷을 통해 데이터를 교환하고 상호 작용하는 기술입니다. AWS IoT는 이러한 IoT 디바이스를 효과적으로 관리하고 데이터를 처리할 수 있도록 지원하는 클라우드 기반 서비스입니다. 본 포스팅에서는 IoT 시스템 아키텍처와 디바이스에서 AWS IoT 서버까지의 데이터 흐름에 대해 상세히 설명하겠습니다.2. IoT 시스템의 기본 구성 요소IoT 시스템은 여러 구성 요소로 이루어져 있으며, 각각의 요소들은 서로 데이터를 주고받으며 특정한 역할을 수행합니다.2.1 IoT 디바이스 (Edge Devices)IoT 디바이스는 센서나 액추에이터를 통해 물리..

AWS IoT 2025.03.24

Android HAL과 Binder IPC 이해하기

Android HAL과 Binder IPC 이해하기1. 서론Android 시스템의 가장 중요한 특징 중 하나는 계층화된 아키텍처입니다. 이 아키텍처는 앱 개발자와 하드웨어 제조사가 서로 독립적으로 개발을 진행할 수 있도록 합니다. 특히, HAL(Hardware Abstraction Layer)과 Binder IPC(Inter-Process Communication)는 Android 프레임워크와 하드웨어 간의 원활한 연동을 가능하게 하는 핵심 요소입니다.본 글에서는 HAL의 역할과 구조를 설명하고, Binder IPC가 HAL과 상위 프레임워크 간의 통신을 어떻게 처리하는지에 대해 AOSP 코드를 활용하여 살펴보겠습니다.2. HAL(Hardware Abstraction Layer)이란?2.1 HAL의 역할..

Android/Framework 2025.03.24

Interrupt Handling in Embedded Linux

Interrupt Handling in Embedded LinuxEmbedded Linux에서 인터럽트는 하드웨어 이벤트를 처리하는 중요한 메커니즘입니다. 이번 포스팅에서는 Linux에서 인터럽트 처리에 대한 개념을 이해하고, Rockchip RK3399를 기준으로 인터럽트 기반 드라이버를 작성하는 방법을 단계별로 살펴보겠습니다.1. Linux에서 인터럽트 처리 이해1.1 인터럽트의 개념인터럽트는 하드웨어 또는 소프트웨어에서 발생하는 이벤트를 커널이 처리하도록 알리는 메커니즘입니다. 하드웨어 인터럽트는 CPU에 신호를 보내 특정 이벤트를 처리하도록 요청합니다.인터럽트의 주요 용어IRQ (Interrupt Request): 하드웨어 디바이스가 CPU에 이벤트를 알리는 신호.ISR (Interrupt Ser..

Linux/Kernel Driver 2025.03.24

AWS IoT에서 MQTT, HTTP, WebSocket을 이용한 통신 개요

AWS IoT에서 MQTT, HTTP, WebSocket을 이용한 통신 개요1. 서론AWS IoT는 다양한 프로토콜을 지원하여 디바이스와 클라우드 간의 원활한 통신을 가능하게 합니다. 이 중에서 MQTT, HTTP, WebSocket은 가장 널리 사용되는 주요 프로토콜입니다. 각 프로토콜은 서로 다른 특성과 장점을 가지며, 사용자의 요구 사항에 맞게 선택할 수 있습니다.본 포스팅에서는 AWS IoT에서 지원하는 MQTT, HTTP, WebSocket 프로토콜에 대한 개요와 각각의 특징, 활용 방안에 대해 설명하겠습니다.2. AWS IoT에서의 프로토콜 개요AWS IoT Core는 클라우드와 디바이스 간의 연결을 위해 다음과 같은 주요 프로토콜을 지원합니다:MQTT(Message Queuing Teleme..

AWS IoT 2025.03.23

HIDL과 AIDL의 차이

HIDL과 AIDL의 차이Android 시스템에서 프로세스 간 통신(IPC, Inter-Process Communication)은 필수적인 요소입니다. Android에서는 이를 위해 AIDL(Android Interface Definition Language)과 HIDL(Hardware Interface Definition Language)이라는 두 가지 주요 인터페이스 정의 언어를 제공합니다. 이 두 기술은 목적과 사용 방식에서 차이가 있으며, Android 프레임워크와 하드웨어 간의 연결을 담당하는 중요한 역할을 합니다. 이번 포스팅에서는 AIDL과 HIDL의 차이를 설명하고, 각각의 동작 방식과 실제 AOSP 코드 예제를 통해 비교해 보겠습니다.1. AIDL(Android Interface Defi..

Android/Framework 2025.03.23

USB Device Driver 작성 및 Linux Kernel에서 USB 인터페이스 사용 방법

USB Device Driver 작성 및 Linux Kernel에서 USB 인터페이스 사용 방법이 글에서는 Embedded Linux 환경에서 USB Device Driver를 작성하고, Linux Kernel에서 USB 인터페이스를 사용하는 방법을 설명합니다. 또한, USB Touch Device를 예제로 들어 Input Report를 처리하는 방법까지 다룹니다. 이번 예제는 Rockchip RK3399 기반 시스템을 기준으로 작성되었습니다.1. USB Device Driver란?USB(Device Driver)는 USB 장치를 제어하고 커널과 사용자 공간에서 데이터를 주고받기 위한 소프트웨어 계층입니다. 이를 통해 USB 장치가 시스템에서 정상적으로 동작하도록 합니다.USB 장치 드라이버는 보통 아래..

Linux/Kernel Driver 2025.03.23

AWS IoT Device Management

AWS IoT Device Management1. 개요AWS IoT Device Management는 대규모 IoT 디바이스를 안전하게 등록, 모니터링 및 관리할 수 있도록 지원하는 AWS의 서비스입니다. IoT 환경에서는 수천 개에서 수백만 개의 디바이스를 운영해야 할 수도 있으며, 이를 효율적으로 관리하지 않으면 운영의 복잡성이 증가하고 보안 위협이 발생할 가능성이 높아집니다. AWS IoT Device Management는 이러한 문제를 해결하기 위해 제공되는 강력한 솔루션입니다.이 글에서는 AWS IoT Device Management의 주요 기능, 사용 방법 및 실제 활용 사례를 설명합니다.2. AWS IoT Device Management의 주요 기능AWS IoT Device Managemen..

AWS IoT 2025.03.22
반응형