코딩 어시스트를 활용한 ESP32 코딩 성능 비교 실험 – Phase 1


최근 AI를 활용한 코딩의 접근성이 크게 향상되면서 프로그래밍의 진입 장벽이 현저히 낮아졌습니다.

그런데 AI 코딩 관련 논의가 주로 웹이나 앱 개발에 집중되어 있어, 임베디드 분야에서의 AI 코딩 어시스턴트 성능에 대한 정보는 상대적으로 부족한 상황입니다.

이에 임베디드 분야에서 AI의 실제 성능이 궁금하여, 쉽게 구할 수 있는 ESP32 디바이스를 대상으로 다양한 AI 코딩 어시스턴트의 성능을 비교 테스트해 보았습니다.

이번 실험은 일반적으로 많이 다뤄지는 웹이나 앱 개발이 아닌, FreeRTOS를 사용하는 임베디드 환경에서 각 AI 어시스턴트의 성능 차이를 확인하고, 향후 취미 코딩에 적합한 도구를 선정하기 위한 목적으로 진행했습니다.

원래 노션에 정리했던 실험 결과를 블로그에도 공유하니 참고 자료로 활용하시면 좋겠습니다.


실험 전 내용 공유

구현에 대한 사양서 중 현재 구현 부분만 기록하자면 아래와 같습니다.

. 실제 코딩을 위해 AI에게 제공한 문서는 더 자세하고 다양한 내용을 포함 중

### Phase 1 기본 구현

1. 블루투스 클래식 SPP 구현
 - 채널명 : ESP32_SPP_TEST

2. SPP1, SPP2 멀티 SPP 구현
 - SPP를 2개의 멀티로 구현되어야 된다.
 - SPP1은 SPP_UART 이름으로 구현한다.
 - SPP2는 SPP_SPI 이름으로 구현한다.

3. 멀티로 구성되는 SPP는 안전성을 대비한다.
 - SPP1을 먼저 초기화 작업을 진행 후
 - 500ms 후에 SPP2를 초기화 작업을 진행한다.

3. Dumy Data 전송 구현
 두 개로 구성된 SPP는 각각 연결 시 아래와 같은 Data가 Return 된다.
 - 동작 주기 : 100 ms
 - SPP1 : 14 Byte (A5 18 28 C8 00 11 22 33 44 55 66 77 88 5A)
 - SPP2 : 7 Byte (10 10 10 10 10 10 10)

처음은 가장 기초가 되는 내용 구현을 맞기는 것으로 가장 쉽게 RTOS에 대한 코딩 어시스트의 성능을 보기 좋지 않을까 합니다.


첫 프롬프트

실제 시험 시 넣는 첫 프롬프트는 아래와 같습니다.


DOC/기본 사양서.md 의 내용을 확인하고 어떻게 구현할지 계획을 세워보자

Phase 1을 구현하려고 하고 있어

무조건 기능 구현은 Step by Step으로 기능 구현(코딩) 이후 컴파일을 통해 빌드에 문제가 없는지 보고, 잠시 수동 테스트를 하는 시간을 갖어야해 그리고 문제가 없다면 다음 Step, 문제가 있다면 문제를 해결하는 방식으로 진행해야되

어쨌든 코드 구현에 있어서는 ESP32 전문가처럼 구현을 해줘
최대한 심플하고 명확한 코드로 구현을 하면 될꺼 같아, 코드에 대해서는 한글로 주석을 꾸준히 적어줘

그리고 구현 시 중요한 건 현재는 단계별로 만드는 거야, 문서에 나온 내용을 다 구현하려는게 아니라 지정한 'Phase' 내용에 대해서만 어떻게 구현할지 계획을 세우고 구현 순서를 잡아줘

자 그럼 계획을 세워보자!

이후 프롬프트는 코딩 어시스트의 반응에 따라 다르게 수행되었기 때문에 별도 기록하지는 않겠습니다.

참고로 트라이 횟수는 수정을 위한 프롬프트를 넣은 횟수가 아닌 처리 종료 후 ESP32 디바이스로 프로그램의 업로드 횟수 입니다.

즉 자동으로 올려서 테스트하는 것도 카운트 되지 않고, 이제 다 되었다고 멘트 카운트 횟수로 보시는 게 좋습니다.


사용 코딩 어시스트

  1. Codex – Plues ($20)

  2. Cluade Code – Max 5x ($100)

  3. Gemini CLI – free (제한적)

  4. Qwen CLI – free (제한적)

  5. Github Copilot – pro ($10)

  6. Cline

    • Cluade Code (연동)

    • Gemini API – free (제한적)

    • Grok F1 – free (한시적)

    • Github Copilot GPT5 mini (연동)

    • Github Copilot GPT4.1 (연동)


실험 결과

Codex + Gpt 5 Minimal

– 구현 성공, 10트 COM10:SPP1 / COM11:SPP2

  • 첫 시도고 잘못된 사양을 바로 발견되고 해서 조금 더 Try 하게 된 거 같음 해외 유튜버를 보니 mini로 코딩에 대한 성능이 많이 좋다길래 해보니 생각 외로 잘함 다만 아쉬운건 컴파일 확인은 잘해주는데 통신 테스트에 대해서는 사용자 수동이라 아쉬웠음

 

Claude Code

– 구현 성공, 7트 COM10:SPP2 / COM11:SPP1

  • 단순히 컴파일하고 빌드 오류만 보는게 아니라 시리얼 통신으로 확인까지 가능 많은 부분을 자동으로 테스트 확인해줘서 편했음 다만 파일을 알아서 여러개로 나눠서 구현하는 게 있음

 

Gemini CLI

– 구현 실패, 30트

  • 초반 무한 리셋 문제에서 막혀서 해결이 좀 시간 걸렸는데, 결국은 거의 막바지에 개선이 안됨 지정한 블루투스 이름으로 이름이 고정되지 않고(ESP_SPP_TEST가 아닌 ESP32로 잡힘), SPP 배정 순서가 고정이 아닌 순차로만 되고 개선을 못함. 그래서 포기.. 중간 중간에 Gemini CLI가 자기는 더 이상 도움이 안된다고 자꾸 GG치는 현상 나오는데 근접 방식을 바꿔서 하면 또 넘어가고 하지만 결국은 GG를 쳐버려서 진행이 불가능했음

       

 

QWEN3 CLI

– 구현 실패, 10트 하고 포기

  • 혼자서 pio menuconfig 메뉴로 들어가 놓고 멈추어서 진행이 불가라 포기함 어떻게 회피하든 결국은 BT 부분을 해결하려다가 menuconfig로 빠짐 아마 새로운 터미널로 menuconfig를 열어줘야 되는데 QWEN이 있는 터미널에 열어서 꼬이는거 같음. (기달려도 혼자 설정 안함)

 

Copilot + Auto

– 구현 성공, 12트 COM10:SPP1 / COM14:SPP2

  • Auto가 평이 나쁘지 않아 보여서 해봄. 코딩은 gpt 4.1를 많이 쓰는거 같은데 문제가 생기면 클로드나 GPT5를 자기 마음대로 쓰면서 해결함 컴파일과 기본 모니터링 로그 확인 정도는 혼자 해줘서 편했음

 

Copilot + GPT 5-mini

– 구현 성공, 22트

  • 사양서에 넣었던 내용을 계속 다 구현하려고 들어서 필요 이상의 구현을 자꾸 시도함. 그래서 트라이 횟수가 자꾸 늘어나는 문제가 있음. 가드 레일을 넣어도 자꾸 어김. 처음부터 Step by Step으로 하나씩만 지령을 시키니 잘 구현됨. 컴파일과 기본 모니터링 로그 확인 정도는 혼자 해줘서 편했음.
  • 다만 GPT 5-mini 특성인가 말이 너무 많아서 글이 눈에 안 보여서 문제임

 

Copilot + GPT 4.1

– 구현 성공, 20트

  • 전체적으로 이상하게 GPT 5-mini를 할때보다 글이 보기 좋게 나옴. 처음부터 Todo를 Step by Step으로 잘 잡아서 구현함 컴파일과 기본 모니터링 로그 확인 정도는 혼자 해줘서 편했음. 몇 가지 문제가 되긴 했는데 수월하게 넘어가서 괜찮았음

 

Cline + Claude

– 구현 성공, 19트 COM11:SPP2 / COM14:SPP1

  • Claude는 Claude Code를 사용 하는게 더 좋은 거 같음. 오류 해결 접근도 다른데 계획이 서로 너무 다름. 컴파일 오류는 잘 잡아주는데 테스트에 대해서는 자동으로 잡아주지 못해서 아쉬움

 

Cline + Gemini Pro

  • 구현 실패, 20트 넘기고 포기

  • Gemini CLI로 했을때와 동일하게 초기 무한 리부팅부터 막혀서 난감함 이상하게 Cline으로 하니 해결이 안되고 반복만 하고 있어서 그냥 포기 처리함

 

Cline + F1

  • 구현 보류

  • 너무 잦은 API 에러로 진행이 어려워 포기

 

Cline + GPT 5-mini

  • 구현 실패, 30트 넘기고 포기

  • 블루투스 오픈 구현 중 컴파일 에러부터 해결을 못하고 있어서 그냥 포기 신기하게도 Gline + Gemini Pro 처럼 초반 무한 부팅에 고생하는 모습을 보이나 Try하다 보면 고쳐짐 전체적으로 코파일럿 일때 모습이 겹쳐 보이지만 Cline 으로 인해 더 복잡해진 모습을 보임. Step by Step으로 지령을 넣어도 코파일럿이랑 다르게 제대로 접근을 못하는 모습을 보여줌. 그래도 버튼 식으로 선택권을 줘서 좋긴 했음.

 

Cline + GPT 4.1

  • 구현 실패, 20트 넘기고 포기

  • SPP1/SPP2 동작은 하나 고정 방식이 안됨, 순차 연결 방식만 알려주고 반복해서 포기 이번 역시 신기하게 초반 무한 부팅에서 고생하나 몇 번 만에 고쳐짐 다만 이번에는 거의 끝 부분에서 해결이 안됨. 버튼 식으로 선택권을 줘서 좋긴 했음

 


결론

ESP32 임베디드 환경에서의 AI 코딩 어시스턴트 Phase 1 테스트 결과를 보면, 최근 유명한 모델이 역시 성능이 잘 나왔던 같습니다.

  • Claude Code (7트라이): 가장 효율적인 구현, 자동 시리얼 테스트 기능 우수
  • Codex (10트라이): 안정적이고 체계적인 접근

 

하지만 가장 기억에 남는건 Github Copilot의 가성비였습니다.
고가의 도구들과 비교해도 충분히 경쟁력 있는 성능을 보여주었으며, 컴파일과 모니터링을 자동화해주는 편의성까지 갖추고 있어 좋아보였습니다.

 

반면 Cline은 명성에 비해 실망스러운 결과를 보였습니다.
단독 AI 모델들이 더 효율적으로 문제를 해결하는 것을 보면, 임베디드 환경에서는 오히려 복잡도만 증가시키는 것으로 판단됩니다.

 

그에 비해 유명한 무료 도구인 GeminiQWEN은 실망스러운 모습을 보여줘서 아쉬운 모습을 보여줬습니다.

 

어쨌든 Phase 1에서 성공한 모델을 대상으로 Phase 2 테스트를 진행 예정입니다.
아니면 Roo Code나 Kilo Code 같은 다른 어시스트 툴도 한번 테스트 해보아야겠어요.

댓글 남기기

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.