REPOSITORY ANALYSIS

Jev Drone Simulation

Explore Jev Drone, a MuJoCo quadrotor simulation where Jev makes tactical judgments while local code owns camera perception, safety, guidance, and flight control.

E2 · source reviewedPublic material or source evidence was reviewed. A fixed-version source review requires checking a pinned revision; this is not a reproduction, performance endorsement, or safety guarantee.
Stars
170
Forks
19
License
MIT
Last commit
2026-09-22

What Jev does here

Uses range sectors, obstacle heights and target state to choose maneuvers and assess risk or target loss.

Separates tactical judgments from local guidance, reflexes and flight control.

The 2.5/50/500 Hz figures describe the author’s simulation architecture. They are not a flight-safety guarantee or validation on a real aircraft. README and integration source reviewed at a fixed commit; not independently run or benchmarked by this site.

What is Jev Drone?

Jev Drone, published as jev-drone, is an autonomous quadrotor experiment in MuJoCo. Ordinary code turns onboard depth and segmentation images into structured scene data; Jev chooses a bounded tactical action, scores risk, and judges whether the target is truly lost, while local control layers retain real-time flight and safety.

Jev owns
Choose tactics such as going around, climbing, braking, or reacquiring, and return risk and target-loss judgments.
Code owns
Camera processing, geometry, execution, the 50 Hz safety reflex, and the 500 Hz flight controller.
Evidence boundary
Pinned source and author-reported results were reviewed, but this site did not reproduce the experiment; simulation does not establish hardware performance.

How does Jev Drone work?

The system separates slower semantic judgment from fast deterministic control in four layers. Jev neither reads pixels nor drives motors; it reads JSON state prepared by code and supplies tactical advice from a background thread that can expire or be overridden.

  1. 15 Hz · camera perception NumPy converts depth and segmentation buffers into five range sectors, obstacle height, and target position.
  2. Up to 3 Hz · Jev tactics A call is made only when judgment is needed and the scene has materially changed; the README describes about 110 calls in a typical 65-second flight.
  3. 50 Hz · guidance and safety The safety reflex always keeps veto authority and can override a Jev recommendation when an obstacle is close.
  4. 500 Hz · flight control A geometric controller owns attitude, thrust, and motor mixing; Jev is outside this real-time loop.

Which three judgments share one request?

Choice · maneuver
Select hold course, go left, go right, climb, brake, or reacquire.
Score · risk
Place the immediate situation on an ordered scale from clear and open to about to collide.
Noul · target_truly_lost
Distinguish a brief occlusion from a genuinely lost target before abandoning the remembered bearing.

The key engineering lesson: state must contain the evidence

The early state contained only five horizontal range sectors, so Jev had no evidence that flying over an obstacle was possible. After the state included the obstruction’s top-edge height, whether that edge was visible, and the aircraft’s climb ceiling, climb became a supported option. This was a missing-evidence problem, not a prompt-strength problem.

Run the free no-Jev baseline first

This is the shortest path cross-checked against the pinned README and CLI. This site inspected the commands and flags but did not download the model or run the simulation. Verify MuJoCo and rendering locally before sending paid Jev requests.

1 · Install and run the local baseline

git clone https://github.com/RomanSlack/jev-drone.git
cd jev-drone
./setup.sh
export MUJOCO_GL=glfw
.venv/bin/python run.py --no-jev --fast --seconds 5 --seeds 0

2 · Then run a short Jev experiment

cp .env.example .env
# Add TYPESAFE_API_KEY to .env, then load it:
set -a && . ./.env && set +a
.venv/bin/python run.py --seconds 5 --seeds 0 --budget 5

--budget counts successful evaluations and should not be treated as an absolute request or cost cap. Do not add --fast when testing the network model, because simulation time would advance faster than the live requests.

Author-reported results and evidence boundary

The pinned README reports that the no-Jev heuristic stopped at 17.7 m in all three seeds, while one 65-second Jev run completed the 77.5 m course with 82% target visibility, 9% time pinned in the safety reflex, and zero collisions. These columns are not a seed-matched average, and the author also discloses an earlier three-seed arena where Jev and the baseline both scored 0/3. The defensible conclusion is that Jev supplied a maneuver the baseline could not express—not that Jev makes the drone better at everything.

Jev Drone FAQ

Does Jev Drone use a vision model?

No. Ordinary code processes the depth and segmentation images; Jev receives only the resulting JSON scene state.

Does Jev directly control the drone motors?

No. Jev supplies low-frequency tactical advice; the 500 Hz attitude and thrust controller and 50 Hz safety reflex remain local code.

Does this prove Jev can safely control a physical drone?

No. The repository demonstrates a MuJoCo simulation, and this site did not reproduce the experiment or validate hardware integration.