Skip to content

Mega commit - #22

Open
swissskimmilk wants to merge 74 commits into
mainfrom
star-openrocket-merge
Open

Mega commit#22
swissskimmilk wants to merge 74 commits into
mainfrom
star-openrocket-merge

Conversation

@swissskimmilk

@swissskimmilk swissskimmilk commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

Another mega commit. Change includes

STAR ORK

  • Merged into the recovery calculator, so that it is all unified
  • Added wind analysis to the descent, including wind shear, lateral velocity at parachute deployment, using the proper added velocity vector and the relaxation time of the parachutes
  • Added full flight analysis
  • Added shared environmental setup for ascent and descent
  • Added flight dynamics analysis, using RocketPy
  • Available to all emails, only functions that use the Onshape API key is restricted to an authorized users list
  • Added units selection, applied throughout

DAQ Server

  • Dropped password to get control, just cycle the toggle now. Still restricted to authorized users
  • Improved navigation by adding tabs
  • Added the ability to select and edit configurations in the frontend
  • Finished up the session management so that runs can be started and stopped, even with using fake data. Includes race condition patches
  • Captures and displays log data from the boards.

Firmware

  • Renamed daqv2comms to daq-protocol
  • Added new packet type for logging messages
  • Improving logging system (see ethernet documentation for details) and allow server to select what level of logging should be done

… CSVs (fixes Fuel Main flashing open on debug toggle in IDLE)
…im generator) + purple Simulated Data / Session Stopped status badge
…essure_limits], operator-gated live config editing with download/upload, and dead-config scrub
…e-series overlay + angle-from-vertical, square ground track, larger legible charts
…ments, identifiers, deploy configs, openrocket subdomain + auth slug, landing card)
…der backend/recovery, tools/site-climatology/reference, unified health, tests (5 frontend-coupled quarantined for Phase 3)
…tabs, unified OrkConfig design + single header design bar, recovery Inter/engineering-palette index.css, UnitsProvider, vitest
…sign (Flight Dynamics apogee + CAD structure/spent-motor mass) or typed in; lateral velocity deferred
…/Caddy subdomain, fold userdata volume + OPENROCKET_S3 into star-openrocket-api, drop landing card, delete source
…g cad/recovery slices, never throw); remove dead recovery storage.py (unused RECOVERY_S3); add legacy-blob persist test
…e (fixed-height status line) so editing a value no longer jumps the page
… verbose-gated), unify verbose flag, demote per-packet/hex/debug noise to verbose, throttle OTA progress to 25%
…d by config mode byte (0-3), 1Hz buffered flush + ethernet-up announce
…only (/api/onshape, /api/build); any Berkeley login can use recovery/flight/cached models; friendly 403 in the model picker; landing copy
…grate the horizontal ground track (loads use resultant deployment airspeed, drift reads the track, shear lag modeled), lateral velocity at apogee on Vehicle; crosscheck drives ours+mastersheet from config wind; calm = byte-identical
…+crosscheck see the same wind), lateral velocity at apogee input + from-design toggle (RocketPy apogee velocity), design source wiring
…backend cache→GUI viewer + per-board log-mode control (0-3) + integration coverage; config editor read-only/cleanup
…(last Elodin ingest) broadcast 1Hz, so 'Simulated Data'/'Connected' means data is really flowing — never a stale or guessed status
…run starts as 'Data Pipeline Down', not a stale 'Simulated Data' flash from the previous run
…ty-only) so a bounced socket doesn't kick an armed operator back to viewer; a page reload still resets
… result survives the pipeline-startup race (daq_bridge bind + backend elodin re-subscribe) on session start
… (was external/DiabloAvionics), return project dir not the .ini path (fixes single-board flash), exclude the native test harness
…source as the TabBar) instead of the static nav-items flag, so it updates when the config changes
…itle to 'Notifications' with Clear inline on the same row (more list space); deprecate Raw Plots and All Plots views
…b, and route every display through the unit selection
…ED' in a8b8fc3) and make E2E extract it like Status/State instead of a colon regex
…00) — elodinConnected doesn't mean the systemd-started sim/daq_bridge are producing yet, so a cold start raced the 6s window (0 SENSOR_UPDATE flake)
… positional slot-2), per-board PT scan-rate groups, and explicit [gui.groups] page membership replacing role-name parsing
…fig.toml is deployed on idle and frozen during a session (edits become drafts applied at next start); live runs deploy the selected profile; add read-only config.toml view
… generated artifact; committed config/profiles/default.toml is the source of truth; getConfigPath + build.sh self-heal config.toml from it on a fresh checkout
…tes from the ACTIVE profile (config/.active_profile), not the repo default — so a deployed box regenerates its own config
…s — pin elodin-db to CI's v0.16.1 (setup.sh/setup_jetson.sh), robust source crate path, runnable README step 2, AssertPathExists on sensor-elodin, and honest session failures (reject start if elodin never comes up; don't log 'saved' for a run that recorded nothing); rename apps bootstrap.sh → bootstrap_apps.sh
…ld version → this branch, config-as-active-profile, firmware-pinned 192.168.2.20 NIC)
… start (service-controller, from config_base) so sim works on any box without start_systemd_sim.sh; daq_bridge hard-fails on a missing config instead of binding :5006 with 0 boards and reporting healthy
…lator refuses to rebind a hardware IP to loopback unless --allow-ip-fallback (emits fake data tagged as real boards otherwise); sensor-simulator unit refuses unless overlay says USE_SIM=1 (+ start-limit so it fails visibly); resume() re-reads pipeline.env instead of trusting persisted state; name sim runs daq_sim_<ts>. Bootstrap opens board UDP (ufw 5006/5008) on the board NIC
…ex not the (changing) name so an input no longer remounts and loses focus on every keystroke; rebuild the map preserving order on rename; order sensor roles by channel number with a commit-on-blur number field so the re-sort doesn't yank the row mid-edit
…lds keystrokes locally) so typing through an existing name no longer merges mid-type; duplicate name shows an error + reverts instead of silently swallowing a role; Add Role picks the first free channel 1..num_sensors (refuses when full) with a unique name
…ld + actuator ch/board) commit on blur (float-capable, clearable) so nothing flashes 0 or reorders mid-type; top-bar pressure gauges pick sensor role + limits key from dropdowns instead of free text; actuator roles now order by board/channel and Add uses a unique name like sensor roles
… (pressure) roles; selecting it auto-fills the label with the sensor name (still editable to shorten) and pulls in the matching [pressure_limits] key, replacing the separate limits dropdown with a read-only indicator
…r (explains it averages redundant sensors into one gauge; blank = single sensor)
…sor — treat the 'NEW' add-default (and empty) as uncustomized so selecting a sensor populates the label; new gauges start with a blank label
…der (Sensor / Label / Limits / Color / Order) and rebalance widths so each field is self-explanatory; limits indicator gets a clearer tooltip; avg-roles row unchanged
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant