신형 ESP32에 Sv32 MMU 탑재, 리눅스 구동하며 라즈베리파이와 격차 좁혀
- 최신 ESP32가 완전한 RISC-V 32비트 MMU(Sv32)를 탑재해 리눅스를 구동함
- 영상·오디오 출력과 넉넉한 GPIO를 갖춰 레트로 기기 소프트웨어 에뮬레이션 후보로 거론됨, 40MHz 코어로 GPIO를 제어하면서 나머지 두 코어는 연산에 쓸 수 있음
- 카메라 관련 스펙은 엇갈림. ESP32-P4는 MIPI CSI가 있으나 성능이 모자라고 S31은 성능이 되나 CSI가 없음
- 리눅스가 7.1부터 RISC-V XIP를 제거해 저RAM 기기에서 커널을 NOR 플래시에서 바로 실행하기 어려워짐. 에스프레시프 포트는 이 때문에 6.18을 사용함
- 무선은 2.4GHz 802.11ax만 지원해 5GHz 부재가 지적됨. ESP32-C5가 5GHz를 지원하는 대안으로 제시됨
Hacker News opinions
이 최신 버전엔 제대로 된 MMU 같은 게 들어간 것 같아서 꽤 많은 게 가능해질 듯.
그냥 'MMU 같은 게'가 아니라 완전한 RISC-V 32비트 MMU, 즉 Sv32임.
영상 출력에 오디오 출력까지 있고 GPIO도 넉넉해서 옛날 기기 소프트웨어 에뮬레이터로 딱임. 40MHz 코어 하나로 GPIO 굴리고 남은 둘로 연산하면 되거든.
가격 생각하면 진짜 좋은 플랫폼임. ESP 기반 에뮬레이터가 이미 꽤 있음. 콘솔 여러 개, ZX Spectrum 에뮬레이터, tiny386 같은 386 에뮬레이터도 있고 486도 머지않아 가능해질 듯. USB랑 남는 코어가 주변장치 에뮬레이션 고민을 풀어줄 거임.
P4는 카메라용 원시 성능이 모자란 대신 MIPI CSI가 있고, S31은 성능은 되는데 CSI가 없음. 에스프레시프 수수께끼 같은 선택이지.
챕터 제목이 'Peripherals already change how it looks'라는 게 말이 됨? AI로 떡칠한 건 그렇다치고 최소한 문장이 되게 교정은 좀 하고 올리자.
기사 작성자인데 AI 기사 아님. 며칠 아파서 그 제목을 못 봤고, 원래는 주변 장치 지원이 제품 포지션을 바꾼다는 뜻이었음. 고치겠음. 근데 Sv32 문서랑 데이터시트 보느라 시간 꽤 썼는데 AI라는 딱지는 좀 억울함.
기사가 MCU랑 뭔지 모를 SBC를 착각하는 것 같음. 헤드라인부터 그렇고.
나는 xda-developers 뉴스 쪽은 안 읽음. 기본적인 기술 오류가 너무 많아서. 포럼도 버그랑 릴리스를 글로 관리하는 게 2020년대에 말이 되나 싶고.
나는 집 방마다 ESP32 박아두고 Home Assistant랑 Bermuda로 BLE 기기 위치 추적 중임. 헤더 납땜이 첫 작업이었는데 지금은 커스텀 PCB 만들고 핼러윈 장식에 포그 머신도 달았음. 더 센 ESP32면 방마다 깔린 걸 몇 개로 줄이고 콘센트랑 배터리 전환도 될 듯.
ESP32 이름 붙은 보드들 간 능력 차이가 점점 커지고 있음. 누가 'ESP32에서 돌아간다'고 하면 하드웨어 어느 수준인지 알기가 어려워짐.
2.4GHz WiFi만 있는 건 좀 아쉽다.
작은 보드에 작은 배터리 물릴 거면 라디오 하나, 안테나 하나가 나음. 근데 여기 802.11ax라서 802.11n보다 훨씬 좋음. 5GHz가 필요하면 ESP32-C5가 대안이고 Thread, Zigbee도 지원함.
라즈베리파이 재단이 200달러짜리 컴퓨터 만드는 게 발전이라고 생각하니 밥그릇 좀 뺏겼으면 함.
기사가 비교 대상 Pi가 뭔지는 안 밝혔는데 200달러짜리는 분명 아님. 원래 Pi나 Pi 3 레벨이랑 '리눅스 돌아가고 포트 많다'는 의미에서 비교하는 듯.
안타까운 건 리눅스가 7.1부터 RISC-V에서 XIP를 없앤 거임. NOR 플래시에서 커널을 RAM 복사 없이 바로 실행하는 건데 저RAM 기기엔 거의 필수임. 에스프레시프 포트가 6.18 쓰는 이유가 정확히 그거고.
리눅스가 극도로 제약된 기기에는 점점 안 맞아지는 것 같음. MCU 쪽은 RTOS가 대체 중이고 풀 OS가 필요하면 NetBSD가 후보인데, 예전엔 ESP32가 MMU가 없어서 못 했고 이번엔 가능해질 수도 있음. 근데 작업량은 꽤 될 듯.
ESP32용 범용 OS 중엔 SolarOS가 좋음. Python이랑 Lua 런타임 주고 API도 계속 늘어나는 중. LilyGO T-Deck에서 구식 PDA처럼 쓰고 있음.
추상적인 스펙 나열엔 별 관심 없음. 프로젝트 요구사항 없으면 그저 기능 수프일 뿐이고, MCU 대 SBC 이분법 자체가 우스운 수준으로 선택지가 넓어졌음. 결국 쓸 응용을 보고 고르면 됨.