← Back to Build Flying Cars

X1 Racing · two-seat flying car · design study · updated

Design Your Own X1 SkyRacer

Example machine: X1 SkyRacer, a rule-book-legal, folding two-seater: four 44 in lift ducts with coaxial fan pairs, twin ducted pushers, long-chord wings, and Dornier-style sponsons that carry the propane and the wheels. It stows in the 90 × 216 × 53 in hauler box.

Open source design on GitHub → · X1 Racing rule book

Front and rear three-quarter views: white and black fuselage with red pinstripe, smoked canopy, four white ring ducts on long wings, sponsons with wheels, twin pushers at the tail.
Flight configuration. Preview renders from the model geometry; run the Blender script for full materials.

See it in 3D drag to orbit · pinch or scroll to zoom

185.8 in span · folds to 86 × 53 in
Download .glb Generator script (x1_web_glb.py) Loading 3D model…

Key numbers flight · stowed · systems

Span185.8 inlimit 186 in (15.5 ft)
Length215.8 inlimit 216 in (18 ft)
Height, flight51.2 inno tail fin
Stowed W × H86.0 × 52.9 inbox 90 × 53 in
Lift fans84 ducts × coaxial pair, 13 / 17 blades
Lift duct44.0 in ID5 in tall, bulged motor pod
Forward fans2 × 26 in IDducted pushers, limit 36 in
Propane tanks238 L223 L needed for 200 lb at 80 % fill
Ballast500 lbin the front seats, may be traded for instrumentation; race weight 3,500 lb, at the 3,500 lb recommended max

Packaging

Fuel & energy

  • Sponson tanks: 2 × 11.8 in × 48 in capsules, 72 L each, low on the flanks between the stowed ducts.
  • Transverse tank behind the firewall: 13.8 in × 46 in, 93 L.
  • 7.5 kWh LTO accumulator (162 Toshiba SCiB cells, 373 V) in a case on the belly floor under the generator, fully inside the fuselage.
  • Red fuel fillers on top of each sponson.

Cabin & chassis

  • Two seats side by side: 55 in at the hips, 45 in at the shoulders.
  • About 33 in from seat to canopy crown; recline or lower the seats for helmeted adults. Races run with no one aboard; the front seats carry the 500 lb of ballast (or instrumentation in its place).
  • Engine bay for the OPFPLG (opposed free-piston linear generator): about 53 in long × 39 in wide × 18 in tall, above the accumulator.
  • 4.5 L OPFPLG outside the bay: the exhaust tailpipe exits under the fuselage ahead of the pushers, and propane vapour lines run to 3D-printed heat exchangers behind each pusher fan, whose stator vanes condense the propane.
  • Four 8 in wheels under the sponsons: 68 in track, 42 in wheelbase.

Balance: with the 500 lb of ballast in the front seats, the race CG sits about 9 in ahead of the rear axle, so the craft sits level on its wheels. With the ballast removed it is only about 2 in ahead, so a tail skid is still worth having.

Folding flight → hauler box

Flight view, stowed view inside a red wireframe hauler box, stowed front view and stowed top view: the ducts stand on edge alongside the fuselage.
Each side has a wing hinge and a duct hinge, both on the craft's length axis. The ducts end up on edge, parallel to the fuselage.
StationWing hingeDuct hingeStowed position
Front69° down159°Stands on edge beside the nose, 2.6 in off the ground
Rear70° up160°Hangs on edge beside the engine bay, top at 52 in

Rule check measured from the model every run

RuleItemBuiltLimitStatus
§3.2Span, tip to tip185.8 in186.0 inOK
§3.2Length215.8 in216.0 inOK
§3.2Height, flight51.2 in110.4 inOK
§3.2Stowed width86.0 in90.0 inOK
§3.2Stowed height52.9 in53.0 inOK
§3.2Stowed length215.8 in216.0 inOK
§3.6Lift duct inner diameter44.0 in44.0 inOK
§3.6Forward duct inner diameter26.0 in36.0 inOK
§3.6Lift fans (4 locations × coaxial pair)88OK
§3.6Forward-flight fans22OK
§3.3/3.6Propane tank capacity238 L≥ 223 LOK
§3.3Race weight (full propane + full ballast, no pilot)3,500 lb≤ 3,500 lbOK
§3.3Ballast capacity, front seats500 lb≥ 500 lbOK
§3.4Two side-by-side bare-frame seats22OK

What the §3.2 size limits mean in practice: folded, the craft fits inside a 90 in wide × 216 in long × 53 in tall box, sized to fit a standard race-car hauler trailer. Unfolded for flight (span up to 15.5 ft, length up to 18 ft, height up to 9.2 ft), it fits in a standard two-car garage. See it in the X1 SkyRacer Transport Study.

Flight model JSBSim · PX4 · ArduPilot

The X1 SkyRacer also comes with a flight model built from the same geometry, so it can fly in JSBSim and in simulators built on it, such as PteroSim with PX4 or ArduPilot. Each 44 in duct is modelled as one coaxial unit, every fan is limited by the power available, and the OPFPLG burns propane at 60 % thermal efficiency, so the numbers below follow from 1,500 hp continuous and 2,000 hp burst. They are estimates until there's test-stand data.

X1 SkyRacer first flight, simulated in PteroSim (credit: PteroLabs) · Watch on YouTube
Race weight3,500 lb2,800 lb dry + 200 lb propane + 500 lb ballast, no one aboard. Realistic 190 lb lift units, 100 lb pushers and the 216 lb LTO pack make it 3,106 lb dry, so the model assumes a 9.9 % mass reduction
Power1,500 / ≈ 1,910 hpcontinuous / burst: the generator gives 1,500 hp and the 7.5 kWh LTO accumulator adds up to 308 kW, under the 2,000 hp output ceiling
Max lift4,450 / 5,240 lbfcontinuous / burst; T/W 1.27 / 1.50 at race weight (rule book encourages > 2)
Hover≈ 1,070 hp668 / 1,082 lbf per front / rear coaxial duct, upper fan 55 %
Top speed≈ 155 mphon burst power for about 3 min, ≈ 135 mph continuous
Endurance≈ 38 minflat out at 1,500 hp on 200 lb propane (60 % thermal efficiency); a full 44 min race allows ≈ 1,250 hp average; ≈ 53 min in a hover
Ballast removed3,000 lb≈ 870 hp to hover, T/W 1.49 / 1.75
FileForWhat it is
X1_SkyRacer.xmlJSBSimMass and inertia; 8 lift fans as 4 coaxial duct units and 2 pushers, limited by shaft power (1,500 hp continuous, about 1,910 hp burst with the 7.5 kWh LTO accumulator); propane burn at 60 % thermal efficiency; yaw from rotor torque; aero through ±180°; wheels; propane tanks
x1_skyracer.paramsPX4Control allocation for 8 coaxial lift rotors + 2 pushers
x1_skyracer.parmArduPilotQuadPlane, OctaQuad X lift + forward throttle
glb/PteroSim, Unreal, any game engineOne GLB per part, in game-ready colours with nav lights: the exterior body, the 8 lift fans, the 2 pushers and the 4 wheels, each pivoting on its own axis so it can spin or roll. No internal parts
x1_skyracer_manifest.jsonAny sim or gameRotor index ↔ Blender object ↔ GLB file, spin directions, positions and mount points, mass properties
x1_pterosim_kit.pyYouRegenerates all of the above from the Blender geometry, no Blender needed; change the assumptions at the top

Fly it in FlightGear free flight simulator · Windows · Mac · Linux

The X1 SkyRacer is also a ready-to-fly aircraft for FlightGear, the free, open-source flight simulator. It uses the flight model above, with a flight computer that flies it like a drone: there are no control surfaces, so your inputs become thrust on the eight lift fans.

Install

  1. Download and install FlightGear (2020.3 or newer).
  2. Download the X1 SkyRacer for FlightGear (.zip) and unzip it.
  3. Make a folder for add-on aircraft outside the FlightGear install, e.g. Documents/FlightGear/Aircraft, and move the X1_SkyRacer folder into it.
  4. Start FlightGear, open the Add-ons tab, and under Additional aircraft folders click Add and pick that folder.
  5. Go to Aircraft, search for X1 SkyRacer, select it and press Fly! If it doesn't appear, restart FlightGear.

Controls

InputDoes
Throttle (Page Up / Down)Climb or descend. 45–55 % holds altitude, 75 % climbs ~10 ft/s, 30 % descends ~6 ft/s, under 10 % is ground idle
Stick / arrow keysBank and pitch, up to 30°. Let go and it levels itself. At speed, bank to turn
Rudder (keypad 0 / Enter)Turn the nose
[ / ]Pusher thrust down / up. Full pushers ≈ 155 mph on burst power, ≈ 135 mph once the accumulator's burst energy is used
Shift-FFold / unfold for the hauler (on the ground, throttle closed)
Equipment → Fuel and PayloadBallast loads full (250 lb per front seat, 500 lb) for race weight. Lower it to fly lighter. The flight computer trims for it

First flight: throttle to 75 % to lift off, back to 50 % to hover, then tap ] to fly forward. To land, [ back to zero, pitch up a little to slow down, throttle to 30 %, and close it after touchdown. The flight model was tested in JSBSim; tell us how it flies in FlightGear.

Blender model Blender 3.6 / 4.x

The whole craft is generated by one Python script. In Blender, open the Scripting workspace, paste the script into a new text block, and press Run Script. It builds the model in metres, keys a Fold animation (frame 1 flight, frame 60 stowed), and saves a .blend and a .glb to ~/X1_SkyRacer. To include the engine parts that show outside the bay (exhaust, propane lines, pusher heat exchangers), save the OPFPLG engine script x1_opfplg_blender.py into ~/X1_SkyRacer first; without it the craft builds without them.

For simulators, see the flight model above. PteroSim adds custom airframes through PteroLabs: send them the flight model kit and the .glb. To fly it yourself, see Fly it in FlightGear above.

Download .py Download engine script (.py) Loading script…
View script source (x1_skyracer_blender.py)

    

Build your own prompt + image → model + flight model

Start from a picture. Your sketch, an SI (super intelligence) concept or a photo sets the look; the prompt holds your design to the X1 Racing rule book, so it still fits the hauler box and passes the rule check. You get a Blender model and a flight model for it.

1
Pick an inspiration image. Use your own, or download ours below.
2
Copy the prompt and paste it into your SI assistant (one that accepts images). Attach the image to the same message.
3
Check its read of your image. The SI describes what it sees and asks up to 3 questions before writing any code. Correct anything it got wrong.
4
Run the script in Blender (Scripting → paste → Run Script). It builds the model, writes a JSBSim flight model, and prints a rule check and a flight check.
Default inspiration image: the X1 Racing homepage flying car, front three-quarter view, stars-and-stripes livery, smoked canopy, ring-ducted lift fans and twin rear ducted fans, parked on a helipad under a stormy sky.
No image of your own? Use this one. Download inspiration image

The image sets the look, the rules set the size

  • The SI copies the body shape, canopy, proportions and colours from your image.
  • Span, length, height, the 44 in lift ducts, the fan count and the hauler box come from the rule book. Where the image breaks a rule, the rules win and the SI tells you what it changed.
  • Your script also writes a JSBSim flight model from your own geometry: mass and CG from where your parts sit, your rotor positions, your wheels. Its flight check warns if the CG is outside the duct rectangle or a rotor runs past 80 % just to hover.
  • Use original designs only. Logos, wordmarks or characters in your image are left out.
  • Want a closer match? Turn your image into a 3D mesh with an image-to-3D tool such as Tripo, import it into Blender as a reference, and have the script model over it. The mesh itself won't fold or pass the rule check.
Download prompt Loading prompt…

  

Open source design on GitHub repo · rule book · share your design

The X1 SkyRacer is open source and built for public input. The latest SkyRacer design, the OPFPLG power plant (opposed free-piston linear generator) and the X1 Racing rule book all live in one public repository on GitHub. Browse it, clone it and build on it. Race. Iterate. Accelerate.

The repository is public and read-only: anyone can view and clone it, and only invited collaborators change it, so an issue is the way in. You can also reach us through x1racing.com or @realx1racing on X. The official rule book is at x1racing.com/rule-book; if the copy on GitHub ever differs, the website wins.

Updates

← Back to Build Flying Cars