BOSIO × BoAYo 개발 문서 전체 소스 ↗
운영 · 배포와 부팅

FullStack 실행 절차

M=32 실행 경로, 구성 요소 버전 고정과 자동 시작 서비스를 설명합니다.

FullStack은 OutputCore·SphericalWM·BoAYo 버전을 고정하고, SphericalWM이 ProjectionCore를 고정합니다. 현재 M=32 경로와 기존 M=16 자동 배포 경로는 별개입니다.

새 복제본에서 앱 실행

빠른 시작의 M=32 WM을 실행한 뒤, 보드의 다른 터미널에서 FullStack 루트를 기준으로 BoAYo를 실행합니다.

export PYTHONPATH="$PWD/components/bosio_SphericalWM/overlays/dual_projection/display_incremental:$PWD/components/bosio_SphericalWM/sw"
export BOAYO_STARTUP_DASHBOARD=1
cd components/BoAYO/boayo
/usr/local/share/pynq-venv/bin/python3 boayo_native_desktop.py --launcher --apps apps.json

이는 수동 실행 절차입니다. bosio_stack.py deploy-start는 기존 M=16 배포를 유지하므로 M=32 보드에 그대로 실행하면 다른 경로를 선택하게 됩니다.

검증된 보드의 자동 시작 구성

2026-10-18 검증 보드의 런타임은 /home/xilinx/bosio_boayo_m32_20261017, BoAYo는 그 아래 boayo/입니다. 비트스트림은 /home/xilinx/bosio_display_transform_20261017/bosio_output_projection_transform.bit와 같은 이름의 HWH를 사용합니다. 저장소의 기본 dual.bit/HWH도 같은 bytes입니다.

bosio-window-manager.service의 scanout.conf drop-in이 새 비트스트림을 선택합니다. boayo-desktop.service는 WM 소켓 준비를 기다리고 BOAYO_STARTUP_DASHBOARD=1로 Dashboard를 엽니다. 시작 대기 제한은 240초입니다. PL 로드와 HWH 처리 때문에 WM 준비에 약 46초 걸린 사례가 있어 서비스 active만 확인하고 즉시 준비 완료로 처리하지 않습니다.

서비스 파일은 WM 출력 설정과 BoAYo M=32 서비스에 있습니다. 특정 보드 경로를 기록한 파일이므로 새 보드에서는 먼저 런타임·드라이버·투영 helper·네이티브 라이브러리와 bit/HWH를 배치하고 실제 경로에 맞춰 설정해야 합니다. 복제만으로 그 절대 경로가 생성되지는 않습니다.

상태와 로그

systemctl is-active bosio-window-manager.service boayo-desktop.service
systemctl cat bosio-window-manager.service boayo-desktop.service
journalctl -u bosio-window-manager.service -u boayo-desktop.service -n 100 --no-pager

WM 상태에서 장면·IMU·VDMA 오류·HDMI 잠금·추가 underflow와 등록된 창을 확인합니다. 보드 시작 직후의 underflow 1회와 이후 증가를 구분하세요. DTF1 설정은 하드웨어 리셋 시 기본 방향으로 돌아오며 API 호출이 부팅 설정을 저장하지 않습니다.

업데이트할 때 함께 맞출 항목

bit와 HWH, OutputCore 드라이버, WM 런타임 및 submodule 버전을 함께 맞춥니다. 실행 중인 WM 외에 다른 프로세스가 Overlay를 로드하거나 투영 엔진을 직접 시험하지 않습니다. 기존 bit/HWH와 서비스 설정을 보관한 뒤 교체하고, 복구할 때도 해당 버전의 드라이버·서비스를 함께 복원합니다. 최신 검증 커밋·해시를 기준으로 확인하세요.

BOSIO × BoAYo · 문서 저장소 · 구현 원본은 각 소스 저장소에서 확인하세요.