나의 임베디드 개발 도전기

일주일 간의 재미있는 도전 과정을 간략하게 정리했습니다.

  1. 알리에서 재미있는 장난감 시계+온도계을 발견함
  • GeekMagic® SmallTV-Ultra
  • 제품 크기: 35mm x 39mm x 45mm
  • 화면: 1.5 인치 240x240px TFT IPS 디스플레이
  • 전원 공급: 5V DC, 1A 이상.
  • 가격: 8,600 원

2. 5일 후 도착, 셋업을 진행함

    • 먼저 스스로 AP 가 된 후에
    • 접속해서 공유기 정보를 입력
    • 리부팅을 하고 공유기에 연결해서
    • 날씨정보를 가져옴

    오! 신기하네.
    그 과정에서 openweathermap API를 이용하는 것을 발견
    잉! 정체가 뭐냐?

    1. 분해를 시작함
    • MCU: ESP8266
    • ST7789 디스플레이

    ESP8266은 Espressif 가 2014년에 출시한 WiFi 내장 32비트 마이크로컨트롤러
    WiFi 표준(2.4 GHz), TCP/IP 스택완전 내장
    어! 이거 장남감이 아니라 웹서버네.

    1. Antigravity 로 해킹 시작하기
    • VS Code C/C++ 익스텐션 설치
    • PlatfromIO 익스텐션 설치
    • Hello World 제작, 무선(OTA) 업로드

    5. 벽돌이 됨

      • 코드에 오류가 있었음
      • 벽돌이 된 후에는 무선으로 업데이트 불가!
      • USB-C 포트는 전원 전용 데이터 통신이 불가능

      놀랍게도 USB-C 포트 전원으로만 사용되고
      플래시 메모리에 바이너리를 무선으로만 업로드되는 방식
      보드에 직접 핀을 연결해 집어 넣을 수 있음을 알아냄.

      1. USB-to-Serial 어댑터 주문
      • 쿠팡에서 아두이노 시리얼컨버터 CP2102 USB to TTL 주문
      • 다음날 도착
      • 장치를 분해하여 내부의 RX/TX 핀에 USB-to-TTL 어댑터를 직접 연결
      • 접촉 불량으로 실패
      • 땜납과 인두를 주문할까? 고민

      7. 다시 알리에 들어가니 다양한 상품을 추천해줌

        • SmallTV-Ultra 와 함께
        • ESP32 개발 보드 주문
          그냥 3.5 인치 IPS (480×320) 디스플레이가 이뻐서

        8. ESP32 개발 보드 + SmallTV-Ultra 도착

          • SmallTV-Ultra 는 단박에 세팅 성공
          • ESP32 S3 개발을 위해 PlatfromIO 이용
          • 라이브러리 오류로 컴파일 불가
          • 개발사는 아두이노 IDE 사용했다고 함

          9. 아두이노 CLI 이용

            • PlatfromIO 포기
            • 아두이노 CLI 로 다시 시작
            • Antigravity가 훌륭하게 코드 생성
            • Hello World 제작 성공! “아두이노 CLI로 Hello World 빌드하고 ESP32에 업로드 해줘”
              “git 버전 1.1로 올리고 작업 내용 마크다운으로 정리해”

            10. 에뮬레이터 제작

              • 매번 바이너리를 컴파일 하고 디바이스에 올려야지만 화면을 볼 수 있네요.
              • 바이너리를 장치에 올리기 전에 미리 볼 수 있으면 참 편하겠어요
                “완성된 바이너리를 장치에 올리기 전에
                UI를 미리 볼 수 있는 웹기반 에뮬레이터 만들어줘”
                단번에 성공!

              바이브코딩의 장점은 새로운 영역의 도전을 쉽게 만들어준다는 것이죠.

              이상 1주일의 도전 기록이고
              이제 본격적으로 재미있는 작업 시작됩니다.

              Bookmark the permalink.

              답글 남기기

              이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다