---
title: "Phoenix flight computer"
url: "https://maker.wiznet.io/matthew/projects/phoenix-flight-computer/"
markdown_url: "https://maker.wiznet.io/matthew/projects/phoenix-flight-computer/md"
type: "UCC: User Created Content"
author: "Andrew Yang"
author_url: "https://github.com/rocketproplab/phoenix-flight-computer"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "Andrew Yang"
original_url: "https://github.com/rocketproplab/phoenix-flight-computer"
published: "2025-10-28"
language: "en"
likes: 0
views: 411
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# Phoenix flight computer

> Phoenix flight computer with W5500 Ethernet: deterministic valve control via binary states, three risk-tiered modes, and MIT-licensed Arduino C++ code.

Original author: Andrew Yang (source: https://github.com/rocketproplab/phoenix-flight-computer)

## Article

## Overview

This repository contains the **flight computer software** for **Phoenix**, the Rocket Propulsion Laboratory’s flagship liquid-propellant rocket. The project formalizes launch and ground-operations logic as **deterministic state sequences** and encodes valve states in **binary pairs** to ensure safe, unambiguous behavior during **Launch**, **Fueling**, and **Dev** modes. Networking is explicitly specified as **WIZnet W5500 Ethernet**, and the codebase is **Arduino/C++** under the **MIT license**. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

---

## Original Language & Author

The material is authored and maintained in **English** by the **Rocket Propulsion Laboratory** (RPL). As context, Phoenix is RPL’s **flagship LOX/LNG program**, currently targeting competition and flight milestones in **Summer 2026**. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

---

## Key Highlights

**Mode Model with Risk TiersLaunch Mode (Low risk)**, **Fueling Mode (Medium risk)**, **Dev Mode (High risk)**—each constrains valve operations appropriate to the activity. Dev Mode allows free switching and is explicitly cautioned. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Binary-Encoded Valve States (6 digits, 2 per valve pair)**

Pair meanings: `00` flow closed / vent closed, `10` flow open / vent closed, `01` flow closed / vent open, `11` **forbidden** (flow and vent cannot open simultaneously).

Mapping (left→right): **(arm | fuel valve 1 | fuel valve 2)**; each has **(flow, vent)** bits. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Canonical SequencesPRE-ARM** `00|00|00` — default; all closed.

**ARMED** `10|00|00` — arm flow open.

**ABORT** `01|01|01` — all vent valves open (emergency).

**LAUNCH** `10|10|10` — arm then both fuel flows open (point of no return). ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Input Priority (Physical Controls)Abort (button)** has highest priority (opens all vents).

**Arm (switch)** toggles arm flow.

**Launch (button)** opens fuel flows 1 & 2. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Networking & Hardware CalloutsEthernet:** WIZnet **W5500** LAN module is called out in the launch terminal specs (useful to WIZnet Makers assessing field adoption). ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Docs & License**

Repository includes `**docs/diagrams**`, a **Draw.io** link for the plumbing/valve diagram, and `**lib/w5500**`. License is **MIT**. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

---

## Why It Matters (for WIZnet & Makers)

**Safety via Explicit State Machines:** The binary encoding + forbidden state (`11`) model makes unsafe combinations impossible by construction—excellent pedagogy for critical-operations logic. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Real-World W5500 Usage:** The project names **W5500** outright, offering a public, safety-critical **adoption example** beyond hobby demos. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Reusability & Teaching:** Clear modes, prioritized inputs, and diagrams are easy to fork into **test stands, ground boxes, or simulators**. The **MIT license** further lowers reuse friction. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

---

## Quick Reproduce (Checklist)

**Clone**

```plaintext
git clone https://github.com/rocketproplab/phoenix-flight-computer
cd phoenix-flight-computer
```

**Open in Arduino IDE / PlatformIO** and select the MCU/board per your lab hardware (the repo is Arduino/C++; confirm SPI pins and IO mapping). ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Wire W5500** and verify SPI/CS per your controller; consult **docs/diagrams** and the linked plumbing schematic for valve/line mapping. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Exercise Mode Transitions:** PRE-ARM → ARMED → LAUNCH / ABORT. Ensure the **forbidden (**`**11**`**)** pattern is unreachable in tests. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Safety Note:Dev Mode** is marked **High risk**—validate with dummy loads and interlocks before touching live propellant lines. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

---

## References

**GitHub (English):** *rocketproplab/phoenix-flight-computer* — modes, binary mapping, W5500 callouts, MIT license. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Program Context:** RPL **Phoenix** overview (LOX/LNG, flagship program; Summer 2026 target). ([Rocket Propulsion Laboratory](https://www.rocketproplab.org/phoenix?utm_source=chatgpt.com))

## Overview

USC **Rocket Propulsion Laboratory(RPL)**의 액체추진 로켓 **Phoenix**를 위한 **발사 컴퓨터(Flight Computer) 소프트웨어**입니다. 저장 탱크·연료 밸브·벤트 밸브의 상태를 **이진 비트 패턴**으로 정의하고, **Launch / Fueling / Dev** 세 가지 운용 모드와 **Abort/Arm/Launch** 입력을 통해 안전·결정론적으로 제어합니다. 네트워킹은 **WIZnet W5500 Ethernet** 모듈 기반으로 명시되어 있으며, 소스 코드는 **C++/Arduino(.ino)** 형태, 라이선스는 **MIT**입니다. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**Phoenix Flight Computer**는 UC San Diego의 **Rocket Propulsion Laboratory(RPL)**가 개발 중인 액체추진 로켓 **Phoenix**를 위한 **발사·지상 제어 소프트웨어**입니다. 소프트웨어는 **Launch / Fueling / Dev**의 운용 모드와 **Abort / Arm / Launch** 입력을 바탕으로, 밸브(플로우/벤트) 조합을 **6비트 이진 패턴**으로 엄격히 관리합니다. 네트워킹은 **WIZnet W5500 Ethernet** 모듈을 명시적으로 사용합니다.

---

## Original Language & Author

원문은 **영어(English)**로 작성되었으며, 저장소는 **Rocket Propulsion Lab(USC)** 조직이 운영합니다. 해당 프로젝트는 RPL의 **Phoenix**(액체 메탄/액체 산소, 2026 여름 발사 목표) 프로그램의 일부로 소개됩니다. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

원문 저장소는 **영문(GitHub)으로 공개되어 있으며, 소유 주체는 Rocket Propulsion Laboratory (UC San Diego) GitHub Organization(@rocketproplab**)입니다. 이 오거나이제이션은 **2017년 봄 설립된 UC San Diego 학생 로켓 연구 동아리**로, 학생 주도의 로켓/엔진/전자·지상국 개발 프로젝트 코드를 공개하고 있습니다.

UC San Diego **Rocket Propulsion Laboratory**는 **학생 주도(student-led)** 조직으로, 우주 탐사에 필요한 기술을 직접 설계·제작·시험하는 교육·연구 환경을 제공합니다. 현재 **Phoenix**를 **주력(Flagship)** 프로젝트로 운영 중이며, **액체 메탄( LNG )/액체 산소( LOX )** 추진 조합을 사용해 **2026년 여름 발사 목표**를 공식 페이지에서 밝히고 있습니다. Phoenix는 “화성 현지 자원으로 제조 가능한 추진제”를 전제로, 장기 탐사를 위한 연료 체계의 실현 가능성을 탐구합니다.

---

## Key Highlights

**모드 구성과 리스크 등급Launch Mode (Low risk)**, **Fueling Mode (Medium risk)**, **Dev Mode (High risk)**로 나누어, 단계별 밸브 제어와 운용 상황을 구분합니다. Dev Mode는 밸브를 자유 제어할 수 있으므로 특별한 주의를 요구합니다. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**밸브 상태의 이진 인코딩6비트(6자리) 이진수**로 시퀀스를 정의하고, **2비트씩**을 한 쌍으로 묶어 **플로우/벤트**의 조합을 나타냅니다.

`00`: flow close / vent close

`10`: flow open / vent close

`01`: flow close / vent open

`11`: **금지 상태**(flow와 vent를 동시에 열 수 없음)

왼쪽부터 **(arm | fuel valve 1 | fuel valve 2)** 순서로 매핑합니다. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**상태 전이 예시 (출력 명시)PRE-ARM**: `00|00|00` (기본, 모두 닫힘)

**ARMED**: `10|00|00` (arm 플로우만 오픈)

**ABORT**: `01|01|01` (모든 라인을 벤트 오픈)

**LAUNCH**: `10|10|10` (연료 플로우 오픈 → 발사 상태) ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**우선순위가 있는 입력(Buttons/Switches)Abort(버튼)**: 최상위 우선순위로 모든 라인 벤트 오픈

**Arm(스위치)**: arm 플로우 오픈/클로즈

**Launch(버튼)**: 연료 1·2 플로우 오픈(발사 트리거) ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**물리 인터페이스 & 네트워킹Ethernet**: 명시적으로 **W5500 Ethernet LAN 모듈** 사용(하드웨어 스펙 항목에서 안내) — WIZnet Maker 커뮤니티에 특히 유의미. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**구성 요소 / 문서**

저장소는 `.ino` 스케치, `lib/w5500`, `docs/diagrams`를 포함하며, 구글 드로잉 링크로 **배관·밸브 다이어그램**을 제공합니다. 라이선스는 **MIT**. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

---

## Why It Matters (WIZnet Maker 관점)

**현실 세계의 안전 임무 로직**: 발사·연료 주입·개발 테스트 각각에 **리스크 레벨**을 두고, 금지 상태(`11`)를 규정함으로써 하드웨어 오작동을 방지하는 **명확한 상태기계(State Machine)** 설계를 보여줍니다. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**W5500 채택 사례**: 이더넷 통신을 **WIZnet W5500**으로 고정 명시—산업/학술 프로젝트에서 W5500을 **신뢰 가능한 발사 시스템 I/O**로 채택한 오픈 사례입니다. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**교육·재사용 가치**: 이진 인코딩·버튼 우선순위·모드별 제한 등 **결정론적 제어 패턴**을 그대로 포크·리스핀하여 테스트베드/지상국 시뮬레이터에 적용하기 좋습니다. MIT 라이선스로 **상용/교육 재사용** 장벽도 낮습니다. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

## Why WIZnet W5500 in a Flight Computer?

**HW TCP/IP 오프로딩**: 스택이 칩 내부( MAC/PHY 포함 )에 구현되어 **MCU 부하와 지터를 낮추고**, 임무 로직에 CPU 여유를 확보합니다.

**단순·견고한 인터페이스**: **SPI 연결**만으로 안정적인 TCP/UDP 통신 확보 — 지상국/발사대 환경에서 **예측 가능한 네트워킹** 구성에 적합합니다.

**검증된 생태계**: 산업/교육 현장에서 널리 쓰이는 모듈로, 드라이버·예제가 풍부해 **재현성**이 높습니다. (그룹 스펙에 W5500 사용을 명시)

---

## Quick Reproduce (Checklist)

**클론**

```plaintext
git clone https://github.com/rocketproplab/phoenix-flight-computer
cd phoenix-flight-computer
```

**IDE/보드 준비**

Arduino IDE(또는 PlatformIO)에서 프로젝트 오픈 → 사용 MCU/보드 설정. *(저장소에 구체 MCU 표기는 없으므로, 팀 문서/하드웨어 스택에 맞춰 설정 필요)* ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**네트워킹/IO 확인**

`lib/w5500` 및 W5500 모듈 연결 핀·SPI를 보드 사양에 맞춰 점검, 배관·밸브 다이어그램 문서를 참고해 IO 매핑 확인. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**모드/입력 시나리오 테스트**

PRE-ARM → ARMED → LAUNCH/ABORT 등 상태 전이를 로컬 시뮬레이션 또는 하드웨어 인더스트리얼 릴레이/밸브 드라이버와 함께 점검. 금지 상태(`11`)가 절대로 발생하지 않도록 검증. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

**안전 규정**

Dev Mode는 **고위험(High risk)**으로 명시—실기 테스트 시 밸브·가스 라인 더미 로드로 먼저 검증할 것을 권장. ([GitHub](https://github.com/rocketproplab/phoenix-flight-computer))

---

---

Source: https://maker.wiznet.io/matthew/projects/phoenix-flight-computer/
