J-Link EDU Mini 영입

더 편한 디버깅을 위해 J-Link EDU Mini를 구매했습니다. 언박싱부터 nRF52840-DK, NUCLEO-C031C6, Pico2 테스트까지 가볍게 훑어봅니다.
![[스마트 굴비] DIY IoT Matter 조명 - 완성](/blog/smart-gulbi-3/260624_221436_hu_245016a1999eef3e.webp)
nRF54L15 기반 DIY IoT 조명인 스마트 굴비의 메인보드를 테스트하고, Matter NFC 커미셔닝과 Home Assistant 연동부터 케이스 조립까지 완성합니다.

포토박스 2년 차, 결국 카메라를 들였습니다. 중고 A6000 바디로 만족하려던 찰나 렌즈를 추가하게 되는데.. 어떻게 합리화하는지 구경해보실래요..?

개발보드와 디버거, 거기다가 샘플 MCU 5개까지.. 이게 5달러의 행복..? 100원짜리 MCU로 유명한 CH32V003 MCU를 살펴봤습니다.

ST.. 아니 GD32!! 그 중에서도 저렴이 MCU인 GD32E230C8T6 개발보드와 공식 디버거 GD-Link V3를 간단히 살펴봤습니다.
![[스마트 굴비] nRF Connect SDK Matter 조명 구현](/blog/smart-gulbi-1/260404_232603_hu_b2ffae2fc8b58332.webp)
nRF54L15와 nRF Connect SDK 예제를 바탕으로 Matter 조명을 구현하며 초기 구조, Cluster 처리 방식, 콜백 흐름을 정리한 프로젝트 기록입니다. 아 그나저나 굴비 아니고 명태이긴 해요

3년 가량 사용하던 Notion 블로그(oopy)를 뒤로하고 Hugo 블로그로 이주하게 되었습니다. Hugo를 사용하게 된 이유, 설정한 과정 등을 소개합니다.

아니 아두이노에도 Home Assistant 설치 된다니까?!!! 내가 해봤다고!!!

지난 포스팅에서 ITX 메인보드를 랙에 박아줬죠. 이번에는 하드베이 차례입니다. 5개의 3.5인치 하드디스크, 4개의 2.5인치 SSD를 결합할 수 있는 하드디스크 핫스왑 베이 마운트를 설계하고 3D프린팅해 10인치 랙에 결합해보았습니다.

최근 유행한 10인치 랙 유행.. 저도 뒤늦게 참여하게 되었습니다. 기존 TrueNAS 서버를 업그레이드하며 미니 랙으로 유명한 DeskPi의 RackMate T1에 ITX 메인보드 랙마운트를 만들어 집어넣어 보았습니다.

임베디드가...Swift?! 남일인줄 알았던 WWDC24에서 공개된 Embedded for Swift를 찍먹해 보았습니다.

아두이노도 매터 한다!!!!! 눈 깜짝할 사이에 출시되버린 Arduino의 공식 Matter 개발보드를 살펴보고 예제를 테스트해봤습니다.

요즘 스마트폰에 자주 사용되는 LRA 진동모터와 드라이버가 내장된 모듈의 아두이노 예제입니다.
![[nRF52840, Zephyr] nRF Connect SDK 입문, AM2320 I2C 읽어보기 (blocking)](/blog/zephyr-first-try/1_hu_72c6caf1902b7753.webp)
nRF Connect SDK에 입문하며 I2C를 이용해 온습도 센서 AM2320을 읽어보았습니다.
![[Pico SDK] M2 mac에서 cannot read spec file 'nosys.specs’ 오류 발생 해결](/blog/fix-cannot-read-spec-file/1_hu_e23a1a695ec9be9b.webp)
오랜만에 Pico-SDK를 빌드하던 중 처음 보는 에러를 마주했습니다.

QR 링크 펼치기 몸체 모터 조립 #몸체, 서보모터 2개, 큰 나사 4개를 준비합니다. 위치에 맞게 서보모터를 배치한 후 나사를 이용해 결합합니다. 다리 결합 #앞서 조립한 몸체와 다리 부품 2개, 서보모터 혼 2개, 작은 나사 2개를 준비합니다. 몸체의 서보모터 …
![[NUCLEO-F103RB] ICM20948 가속도, 자이로, 지자기 I2C+DMA+INT (HAL)](/blog/icm20948-stm32/2_hu_1e3df734362eddbe.webp)
차세대 국밥 IMU인 ICM-20948의 STM32 HAL용 드라이버를 만들어보았습니다.
![[Embedded] MCU가 main()을 실행하는 과정 (feat. Vector Table)](/blog/about-vector-table/1_hu_f134bf038dec0667.webp)
MCU에 전원이 전원이 공급된 후 main 함수는 어떻게 실행될까요? MCU의 깊고 깊은 어딘가를 파보았습니다.
![[NUCLEO-F103RB] 누클레오 개발보드에서 USB 사용하기 (USB CDC VCP 테스트)](/blog/nucleo-usb-cdc-vcp/1_hu_3aca12b1d26f1892.webp)
MCU와 연결된 USB 포트가 없는 Nucleo 개발보드에 USB 포트를 만들어보았습니다.

Google Maps Find local businesses, view maps and get driving directions in Google Maps. goo.gl 지인들과 함께 대구 슈팅클럽에 방문했습니다. 예전에 가스 핸드건을 구매할 때 지인께 추천받은 …

목차 Utterances 말고 giscus #우피(oopy)에서는 댓글 플렛폼으로 Utterances를 플러그인 형식으로 제공합니다. 광고도 없고 깃헙 기반이라 마음에 들었지만 단 한가지 대댓글이 없다는게 아쉬웠습니다. 그러던 중 giscus라는 플렛폼을 알게 되었 …
![[2023 방통대 C 스터디] 12. [malloc.h] 양날의 검, 동적 메모리 할당](/blog/2023-knou-c-study-13/1.webp)
변수의 메모리 할당에는 할당 시점에 따라 정적 할당과 동적 할당 두 가지 방법이 있습니다. 정적 할당은 위 코드와 같이 변수에 사용할 메모리의 공간을 미리 정해두는 것입니다. 이렇게 만들어진 변수들은 컴파일 과정에서 할당될 메모리의 크기가 연산되고 프로그램에 저장됩 …
앞서 메모리에 대해 알아볼 때 변수와 함수 등 작성한 소스코드는 모두 RAM에 저장된다고 언급했었는데요, 당연하게도 함수 역시 포인터가 있습니다. 다만, 변수의 포인터는 배열을 만들거나 다른 함수에서 메모리의 데이터를 수정하기 위해 주로 사용하는 반면, 함수 포인터 …
![[2023 방통대 C 스터디] 8. [참조에 의한 호출] 마법!!!!](/blog/2023-knou-c-study-9/1_hu_80cf6e40f50d53ad.webp)
포인터는 어디에 사용할까요? 포인터는 메모리를 직접 조작할 수 있는 마법과도 같은 강력한 수단이기 때문에 아주 다양한 목적으로 활용할 수 있습니다. 포인터를 활용하는 몇 가지 예시를 소개해보도록 하겠습니다. 값에 의한 호출 # 위의 코드는 변수 a에 0을 저장하고 …
![[2023 방통대 C 스터디] 6. [배열] 문자열](/blog/2023-knou-c-study-7/1_hu_dc8b411324688fe3.webp)
정렬 아니고요, 변수 다발입니다. 배열이라는 명칭은 다양한 의미를 가지고 있어 햇갈리기가 쉽습니다. C언어에서의 배열은 동일한 자료형을 연속적으로 메모리에 저장하는 자료 구조입니다. 1, 2, 3, 4와 같이 숫자를 저장하면 수열(숫자 배열)이, a, b, c, d …
앞선 [[배열] 문자열](https://www.notion.so/508c5a67aae74afd8204dcaf7432c5a1?pvs=21) 에서는 문자열을 표현하기 위해 배열을 활용하였는데요, 배열에 숫자가 들어가면 수열이 되겠죠. 이번에는 수열에 배열을 활용해보도록 …
![[2023 방통대 C 스터디] 5. [포인터] 변수는 어디에 저장될까?](/blog/2023-knou-c-study-6/1_hu_71e7395e097e1d2b.webp)
주소 연산자 &foo; #앞선 [[변수] 박스 그 자체](https://www.notion.so/91d5ba2f2c9145ada6a44540baa17638?pvs=21) 섹션에서 변수의 저장에 대해 자세히 알아보았는데요, 이렇게 저장되는 모든 변수는 자신이 …
![[2023 방통대 C 스터디] 5. [구조체/공용체] 데이터 묶어주기](/blog/2023-knou-c-study-5/1_hu_2419d7bc4968b71.webp)
구조체/공용체 데이터 묶어주기 #C언어에서 데이터를 묶어서 사용할 때 구조체와 공용체를 사용합니다. 구조체 #구조체는 여러 개의 변수를 묶어서 하나의 데이터 타입으로 정의하는 방법입니다. 구조체는 다음과 같은 형식으로 정의됩니다. 예를 들어, 나이와 학년을 담는 조 …
![[2023 방통대 C 스터디] 4. [변수] 박스 그 자체](/blog/2023-knou-c-study-4/1.webp)
이전까지 변수의 종류인 자료형에 대해 알아보았으니 이제는 이걸 사용할 차례입니다. 우선 변수는 아래와 같은 방식으로 선언(declaration)합니다. 앞선 [자료형] C언어의 기본! 의 자료형의 이름을 먼저 작성하고 그 뒤에는 변수의 이름을, 그 뒤에는 코드 한 …
![[2023 방통대 C 스터디] 11. [memory.h] 데이터를 복사할 땐,](/blog/2023-knou-c-study-12/1.webp)
앞서 알아본 string.h 라이브러리를 사용하면 문자열을 간편하게 복사할 수 있었습니다. 그럼 문자열 이외의 숫자 배열이나 구조체의 배열 등은 어떻게 복사할까요? 일반적인 자료형의 변수부터 배열, 주조체 등 모든 변수들은 메모리에 저장되기 때문에 메모리 속의 내용 …
![[2023 방통대 C 스터디] 10. [string.h] 파이썬은 되던데…](/blog/2023-knou-c-study-11/1_hu_b3c98c8ecd31cce2.webp)
C언어와 가장 많이 비교되는 파이썬은 모든 자료형이 객체(Objetc)로 구현되기 때문에 연산을 객체 내부의 메소드를 이용해 진행합니다. 예를 들어 문자열을 비교할 때 표면적으로는 is 라는 비교 연산자를 사용하지만 내부적으로는 str Class에 구현된 …
![[2023 방통대 C 스터디] 3. [자료형] C언어의 기본!](/blog/2023-knou-c-study-3/1_hu_e2814bb15f6a8229.webp)
앞서 작성했던 간단한 프로그램은 단순히 출력을 하기 때문에 데이터를 어딘가에 저장할 필요가 없었습니다. 하지만 이후 배울 키보드 입력 함수를 이용하다 보면 데이터를 어디에 저장하고 사용해야 할 필요가 생기게 됩니다. 모든 프로그래밍 언어에서는 이를 위한 변수 기능을 …
![[2023 방통대 C 스터디] 2. Hello, World!](/blog/2023-knou-c-study-2/1.webp)
이제 본격적으로 C언어 프로그래밍을 시작할 차례입니다. 프로그래밍 입문의 신고식이라 할 수 있는 Hello, World! 프로그램을 작성해보며 C의 기본적인 문법을 알아보도록 하겠습니다. Hello, World! #아래 소스코드는 터미널 창에 “Hello, …
![[2023 방통대 C 스터디] 1. C언어와 친해지기](/blog/2023-knou-c-study-1/2_hu_8a7dbd7331721ca6.webp)
C? #C언어는 1972년에 벨 연구소의 데니스 리치와 켄 톰슨이 개발한 프로그래밍 언어입니다. 초기에는 유닉스 운영체제의 개발 목적으로 만들어졌으며, 이후에는 시스템 프로그래밍 언어로 널리 사용되었습니다. C언어는 절차적 프로그래밍 언어로, 명령어들의 집합으로 구 …
![[ESP32-C6] ZigBee로 Home Assistant Z2M에 연동하기](/blog/esp32-c6-zigbee-home-assistant/1_hu_68443f93717fd6bb.webp)
ESPRESSIF Zigbee 맛보기, ESP32-C6-DevKitC-1 핸즈온 ZigBee가 왜 여기서 나와...? ESP32-C6에 뒷통수맞고 부랴부랴 구매하였습니다. varofla.com 지난 ESP32-C6-DevKitC-1 핸즈온에서 기본 HA 프로필에서 …