Skip to content

Releases: EIDOSDATA/NUCODE_Arduino_Packages

NUCODE Zephyr Boards 0.4.0

Choose a tag to compare

@EIDOSDATA EIDOSDATA released this 30 Jul 17:33

NUCODE Zephyr Boards 0.4.0

ArduinoCore-Zephyr 0.90.0을 통합하고 Loader ABI를 0.4로 확장한 NU40-DK-Basic V2용 정식 Multi-host Release입니다.

주요 변경

  • ArduinoCore-Zephyr 0.90.0 통합
    • Commit: ad8741672fde649a98164fca969f1e05939fb31d
  • Loader ABI 0.4 및 Export Symbol 450개 적용
  • ABI 0.3 대비 다음 Symbol 추가
    • gmtime
    • k_mem_slab_init
    • k_mem_slab_free
  • ABI Fingerprint:
    • FC8E6F2598637D8DB69F717C02D67221105E8A2FACABCE809315969168EC44E7
  • GPIO Interrupt Callback의 Supervisor LLEXT MPU 실행 문맥 수정
  • Windows x86-64 지원
  • Linux x86-64 및 ARM64 지원
  • macOS Apple Silicon ARM64 지원
  • Native USB CDC+MSC/UF2 지원
  • COM Port와 MSC Device-ID 자동 매칭
  • Arduino IDE Build/Upload 진행률 표시
  • 증분 Build Cache 지원
  • Servo 1.3.0 지원
  • ArduinoBLE 및 NUBleUart 지원 유지
  • Safe Mode 및 Watchdog Fault-loop Recovery 유지
  • UF2 Journal 및 전원 차단 복구 기능 유지

검증 완료

  • Full Boardless Gate
  • Digital I/O 실보드 회귀
  • Analog Input 실보드 회귀
  • Interrupt 실보드 회귀
  • Serial 및 Native USB CDC 실보드 회귀
  • Wire/I²C 실보드 회귀
  • SPI 실보드 회귀
  • Servo 실보드 회귀
  • BLE NUS 연결 및 양방향 Echo
  • UF2 전송 중단 및 Timeout 복구
  • Reset 없이 정상 UF2 재시도
  • 네 개 Commit 중단 지점별 전원 차단 복구
  • Journal Slot 교대
  • Native USB CDC+MSC 동시 사용
  • 전원 재인가 및 Safe Mode
  • 두 NU40 보드의 양방향 COM↔MSC 선택
  • 선택하지 않은 NU40 보드의 Sketch 불변
  • 두 보드의 Loader 304 KiB Readback Hash 일치
  • Windows x86-64 Clean-host 실기 검증
  • Linux x86-64 Clean-host 실기 검증
  • Linux ARM64 Clean-host 실기 검증
  • macOS ARM64 Clean-host 실기 검증
  • 최종 0.4.0/nu11 Archive 정적 무결성 Gate
  • Windows 격리 환경에서 Install, Blink/Servo Compile, UF2 Upload, Activation 및 Serial 검증

0.4.0-rc.1에서 정식 0.4.0으로 승격하는 동안 Core, Loader, Sketch, Package 및 Host Tool Source의 기능 변경은 없습니다.

Platform Archive 내부 3,972개 파일과 Windows Tool 내부 3,625개 파일을 정규화 비교했으며, 차이는 Release 승인 Metadata와 Go VCS Build 정보뿐입니다. Linux/macOS Toolchain 원본 SHA-256도 RC1과 같습니다.

호환성 안내

Platform 0.4.0은 Loader ABI 0.4를 사용합니다.

Platform 0.3.0/0.3.1의 Loader ABI 0.3과 Fingerprint가 다르므로, 기존 보드는 Platform 0.4.0 Sketch를 업로드하기 전에 외부 SWD를 통해 Loader ABI 0.4를 한 번 설치해야 합니다.

Loader 설치 이후 일반 Arduino Sketch Upload는 Native USB MSC/UF2를 사용하며 Loader 영역을 변경하지 않습니다.

현재 미지원 및 향후 계획

  • PDM: Platform 0.4.1에서 Core 0.90.0 API 기준으로 구현 예정
  • RTC: Platform 0.4.2에서 구현 예정
  • BLE Pairing/SMP/LTK/암호화: Platform 0.5.0에서 구현 예정
  • macOS Intel x86-64
  • 회사 출하용 USB VID/PID

MCUboot는 사용하지 않습니다. Loader 최초 설치와 손상 복구는 외부 SWD로 수행하며, 일반 Arduino Sketch Upload는 Native USB MSC/UF2로 처리합니다.

Arduino Boards Manager URL

https://raw.githubusercontent.com/EIDOSDATA/NUCODE_Arduino_Packages/main/package_nucode_index.json

Release Assets

  • nucode-zephyr-0.4.0.zip
  • nu-zephyr-tools-14.3.0-nu11-windows_amd64.zip
  • nu-zephyr-tools-14.3.0-nu11-linux_amd64.tar.gz
  • nu-zephyr-tools-14.3.0-nu11-linux_arm64.tar.gz
  • nu-zephyr-tools-14.3.0-nu11-macos_arm64.tar.gz
  • release-manifest.json
  • SHA256SUMS.txt

SHA-256

  • Platform
    B245567DD33A5CC4633FDF04967C247A99F027D568D658D3BCCEB6AB956D3104

  • Windows x86-64 Tool
    0667E078BAB2983708599DF311D62826D544BD1A36D3F1145C7F9B5675A029B7

  • Linux x86-64 Tool
    11F5E314E3D011210811F08784F31F1A5A55BD6A8F80A3FDC14109F1E84C065F

  • Linux ARM64 Tool
    FEB3DBD1D31883ED3D240DBC141558B011A9BF1D59CB0F1D9738092A0C596D4E

  • macOS ARM64 Tool
    F9BACCD6E49753C473859D99196D1A5C9A8F1A636C3285635C07DC8E9469D90C

  • Package Index
    A4680A40672E829077A05554BE3AA0934EFF642B8A31A1504AF67E6E8A60B610

  • Release Manifest
    B6A8911A9B09D060BBBD5B42BA3E850252B9560DAD60A65BBDFA7252F49D5AE2

NUCODE Zephyr Boards 0.3.1

Choose a tag to compare

@EIDOSDATA EIDOSDATA released this 30 Jul 07:39

NU40-DK-Basic V2용 Arduino Zephyr Platform 0.3.1 정식 Multi-Host 배포입니다.

주요 변경사항

  • Windows뿐 아니라 Linux와 macOS Arduino 환경 지원
  • 공통 Go 기반 LLEXT/ZSK/NUSK/UF2 Artifact 생성 및 검증
  • Linux sysfs 기반 CDC↔MSC Device Identity 탐색
  • macOS I/O Registry 기반 CDC↔MSC Device Identity 탐색
  • Linux/macOS Native USB MSC/UF2 Upload 지원
  • Host별 Zephyr SDK 1.0.1/GCC 14.3.0 Tool Archive 제공
  • Unix 실행 파일 권한 0755 보존
  • Host별 Archive Manifest, CycloneDX SBOM 및 License Notice 제공

지원 Host

  • Windows x86-64
  • Linux x86-64
  • Linux arm64
  • macOS Apple Silicon arm64

macOS Intel x86-64는 지원하지 않습니다.

Multi-Host 검증 결과

Windows x86-64, Linux x86-64/arm64 및 macOS arm64에서 다음 경로를 통과했습니다.

  • Board Manager 설치
  • Clean Compile
  • 실제 NU40 USB Upload
  • Sketch Activation
  • Arduino Serial Monitor
  • Button 1 Safe Mode 진입
  • 정상 Reset 및 Sketch 복귀

유지되는 주요 기능

  • Loader ABI 0.3
    • Export Symbol 447개
    • ABI Fingerprint: 518241BDF02E635392A0BF183513A0E8999B9C174930731F6C8C7FA11128D2E1
  • Arduino Servo 1.3.0 지원
  • Arduino IDE Build 진행률 5~100%
  • Arduino IDE Upload 진행률 2~100%
  • MMD Object/Artifact Cache 기반 증분 Build
  • user_sketchsketch_staging 각각 356 KiB
  • Native USB CDC Serial과 MSC/UF2 동시 지원
  • MSC INDEX.HTM에서 NUWORKS 홈페이지 연결
  • MSC 볼륨 이름 NU40DK-UF2
  • UF2 중단·오류 후 Reset 없는 재시도
  • 이중 Journal 및 전원 차단 복구
  • NU_MEMORY.TXT Runtime 메모리 계측
  • Device ID 기반 CDC Port와 MSC 선택
  • Safe Mode 및 자동 Fault-loop Recovery
  • ArduinoBLE/NUBleUart 비암호화 Peripheral/NUS

호환성 안내

Platform 0.3.0은 동일한 Loader ABI 0.3을 사용하므로 기존 0.3.0 사용자는 Loader를 다시 설치하지 않고 Platform 0.3.1로 업데이트할 수 있습니다.

Platform 0.2.1/Tool 14.3.0-nu7은 지원 종료(EOL)됐으며 GitHub 배포와 Board Manager Index에서 제거했습니다.

Platform 0.2.1은 Loader ABI 0.2를 사용하므로 현재 ABI 0.3 제품과 호환되지 않습니다. 신규 설치, 재배포, 결함 수정 및 사용자 지원을 제공하지 않습니다.

현재 제한사항

  • PDM Microphone은 Platform 0.3.2에서 지원할 예정
  • BLE Pairing/SMP/LTK 및 암호화 연결은 Platform 0.4.0에서 지원할 예정
  • macOS Intel x86-64 미지원
  • MCUboot 미사용
  • Loader 최초 설치와 손상 복구에는 외부 SWD 필요
  • Nordic nrfutil은 재배포 조건으로 Package에 포함하지 않음
  • 현재 USB VID/PID는 개발/HIL용이며 출하 제품용 ID는 별도 적용 예정

Arduino Boards Manager URL

Arduino IDE의 Preferences > Additional Boards Manager URLs에 다음 URL을 추가합니다.

https://raw.githubusercontent.com/EIDOSDATA/NUCODE_Arduino_Packages/main/package_nucode_index.json

Release Assets

  • nucode-zephyr-0.3.1.zip
  • nu-zephyr-tools-14.3.0-nu9-windows_amd64.zip
  • nu-zephyr-tools-14.3.0-nu9-linux_amd64.tar.gz
  • nu-zephyr-tools-14.3.0-nu9-linux_arm64.tar.gz
  • nu-zephyr-tools-14.3.0-nu9-macos_arm64.tar.gz
  • release-manifest.json
  • SHA256SUMS.txt

SHA-256

  • Platform: C4788A443D3175E0D72F83179EC4C97FFEF9320E2C1E9806316A6658914208FC
  • Windows x86-64 Tool: FD6B6E8D9E763AB5E44F6552D3E0033F9187D6C4717A3FD103D2D537DBB3A7E5
  • Linux x86-64 Tool: E383EE92071C5EB1C4DD679835A9AB2F49C9F98E25C5B0B8A0AD62E16E1212C8
  • Linux arm64 Tool: DE6FBC6A23E1E8B1B33D0ADF38349D2481020731E0F84337B87F2B55467738D2
  • macOS arm64 Tool: 7659FA556C48C0289022916C8AC3FE9453251CE15842B19A759529E511EB5FE0
  • Package Index: 7145FE0C8DA26A399A978EF2D881E7254D8FA3A30B512EE6EFCDBE22B1123668
  • Release Manifest: 64E44A30764659B70435FA177F5F7F5BF25D8C6DDF9B5DA0E5BA19367D56A6F4

v0.3.0 Release

Choose a tag to compare

@EIDOSDATA EIDOSDATA released this 30 Jul 04:00

NUCODE Zephyr Boards 0.3.0

NU40-DK-Basic V2용 Arduino Zephyr Platform 0.3.0 정식 배포입니다.

주요 변경사항

  • Loader ABI를 0.3으로 갱신
    • Export Symbol 447개
    • ABI Fingerprint: 518241BDF02E635392A0BF183513A0E8999B9C174930731F6C8C7FA11128D2E1
  • Arduino Servo 1.3.0 지원
  • Arduino IDE Build 진행률 표시
  • Arduino IDE Upload 진행률 표시
  • MMD Object/Artifact Cache 기반 증분 빌드 지원
  • 변경 없는 빌드 및 단일 소스 변경 빌드 속도 개선
  • user_sketchsketch_staging을 각각 356 KiB로 확장
  • Native USB CDC Serial과 MSC/UF2 동시 지원
  • MSC INDEX.HTM에서 NUWORKS 홈페이지 연결
  • MSC 볼륨 이름을 NU40DK-UF2로 적용
  • UF2 중단·오류 발생 후 Reset 없는 재시도 지원
  • 이중 Journal과 전원 차단 복구 보강
  • NU_MEMORY.TXT Runtime 메모리 계측 지원
  • Device ID 기반 COM 포트와 MSC 드라이브 선택 강화

안정성 개선

  • Servo TIMER4 Interrupt 중 발생하던 ARMv7-M MPU 전환 Race 수정
  • 간헐적인 Software Reset 문제 수정
  • Loader Watchdog Timeout을 15초로 조정
  • UF2 Commit 중 Watchdog Feed 및 Page 단위 Flash 처리 적용
  • Sketch 종료 또는 거부 시에도 CDC+MSC 복구 경로 유지
  • Arduino IDE Serial Monitor DTR 동작 보강
  • Safe Mode와 자동 Fault-loop Recovery 유지

검증 결과

  • NU40-DK-Basic V2 두 대에서 COM↔Device-ID↔MSC 선택 검증
  • 선택하지 않은 보드 오선택 0건
  • Loader 영역 불변 검증
  • Reset 100/100 통과
  • UF2 재시도와 전원 차단 복구 통과
  • Servo 단일·다중 Channel과 Detach/PWM 공존 검증
  • BLE Central NUS 연결 및 양방향 Echo 검증
  • BLE 연결·미연결 상태에서 USB/Servo 10분 연속 동작 검증
  • Arduino IDE 2.3.10 Build·Upload·Serial Monitor 검증
  • 최종 Archive 격리 설치, Blink·Servo Compile과 COM15 Upload 검증
  • MSC INDEX.HTM의 NUWORKS 홈페이지 이동 검증

중요 호환성 안내

Platform 0.3.0은 Loader ABI 0.3을 사용하므로 기존 Platform 0.2.1의 Loader ABI 0.2와 호환되지 않습니다.

기존 0.2.1 Loader가 설치된 보드는 Platform 0.3.0 Sketch를 업로드하기 전에 외부 SWD를 사용해 Loader ABI 0.3을 한 번 설치해야 합니다.

Loader 설치 이후 일반 Arduino Sketch 업로드는 Native USB MSC/UF2 경로를 사용합니다.

현재 지원 범위

  • 지원 OS: Windows x86-64
  • 지원 보드: NU40-DK-Basic V2
  • Arduino IDE 및 Arduino CLI 지원
  • Digital/Analog/Interrupt
  • Native USB Serial
  • UART/I²C/SPI
  • ArduinoBLE/NUBleUart
  • Servo 1.3.0
  • Native USB MSC/UF2

현재 제한사항

  • Linux/macOS Package는 후속 배포 예정
  • BLE Pairing/SMP/LTK와 암호화 연결은 현재 미지원
  • MCUboot는 사용하지 않음
  • Loader 설치·손상 복구에는 외부 SWD 필요
  • Nordic nrfutil은 재배포 조건으로 인해 Package에 포함하지 않음
  • 현재 USB VID/PID는 개발용이며 출하 제품용 ID는 별도 적용 예정

Release Assets

  • nucode-zephyr-0.3.0.zip
  • nu-zephyr-tools-14.3.0-nu8-windows_amd64.zip
  • release-manifest.json
  • SHA256SUMS.txt

SHA-256

  • Platform: F900035BA3650A16561FEE0B41E34C5D626977FEB6FB9AA44E9E3C8B7276071F
  • Windows Tool: 3466FE7BF24EADE395E637EDC4970F367CA5497B7D18002A74CC78CE246905CA
  • Package Index: 68CB7D7EA61FFE4F13E5F13F4A4900F358B297E7FFEEB8675D7405B9915EE409