Show HN: I made a 3D printed VTOL drone
148 comments
·June 10, 2025the__alchemist
I'm curious how this compares to foam-frame designs. Being able to customize it is obviously a big advantage, as is the non-solid-infill of 3d-printed parts. I think for stiffness, 3d-printed frames don't work well for quadcopters compared to carbon fiber, but they sound like a nice alternative to foam for fixed-wing. I think the stiffness concern comes up in quads mainly when they do high-performance maneuvers that aren't a concern for the takeoff and landing this device does in that mode. (e.g. high accelerations/manevers of racing-style drones)
If anyone wants to try this: The parts he uses are all standard Chinese-made COTS you can buy on amazon and similar.
The ArduPilot firmware he uses is very flexible and robust, but setting it up is one of the worst UXs I've experienced. Commercial UASs almost universally use PX4 instead.
tsungxu
Yes I used single wall foaming PLA which is much less impact resistant and more brittle vs any foam, even cheap foamcore and especially EPP or EPO. This has definitely been an issue with crashing and rebuilding.
But my first and only other VTOL build was foamcore Readyboard and that took a 12 ft drop onto asphalt with only a slight compression in the fuselage. Never replaced it.
I would add dovetails or other clips for printed sections if I did another printed build.
Yes avionics and propulsion parts are COTS for speed, the Amprius pack is US manufactured but others are all made in China.
I'm starting to see some more Ardupilot used commercially too but yes the UX is janky and unintuitive.
the__alchemist
Hopefully now that it's in a polished state, you don't need to worry as much about impact resistance as you did when designing/tuning.
tsungxu
Thanks, I did crash it again, and that's why it was half assembled on the wall at the end. But yeah foaming PLA is extremely soft, almost feels like tough, thin paper.
stavros
PLA is pretty bad compared to foam when it comes to planes, as it's very heavy and very brittle. Any semi-hard landing will break parts off, and heavy planes fly badly.
The big advantage is that you can just print the part again, which almost makes PLA worth it.
ABS would probably be better, as it's much more durable and lighter, but it's still much heavier than foam, and printing ABS isn't great.
tsungxu
I used single wall foaming PLA which has filament density of ~0.45 g/cm3 at 250 degree nozzle temp, about 64% lower than normal PLA. But it is even worse for impact resistance than normal PLA. Weight was the primary driver for this plane
stavros
Yep, I've used that as well, but, as you say, it's just very bad for impact resistance. I think the sweet spot between weight and durability might be ABS or something like ASA.
alvah
Printing ABS is much improved with the later hobbyist-level 3D printers (Qidi and Bambu etc). My Qidi Plus 4 prints ABS as easily / well as PLA. Just remember to do it in a well-ventilated space.
stavros
Sorry, I meant about the ventilation, yeah. My Bambu doesn't care what material it is, they all print perfectly, but I hate the fumes.
Karliss
In case of commercial systems you are paying manufacturer to do the integration work and provide polished solution anyway, so setup UX not being user friendly isn't a major concern. In my opinion bigger factor for why most commercial UASs use PX4 instead of ArduPilot is licensing and PX4 maintainer friendliness towards commercial solutions. ArduPilot is GPLv3 and more geared towards community/hobbyists while PX4 is BSD. Commercial manufacturers don't want to disclose the source for their modified version of firmware with all the value added integrations they provide (or just deal with it even if their fork doesn't have anything interesting).
energywut
I have ~200 acres of land I fly a drone survey mission to map. Today, that piloting is done by dronelink and a DJI drone. The challenge is that it's about 3 hours of flight time, give or take, to cover the space, and a given battery is good for about 35 minutes of flight time.
I have 4 batteries, which means I basically need to be refilling my batteries as quickly as I consume them in order to keep flying continuously (unfortunately, even with a quad-charger, I cannot fully sustain this.)
I would LOVE to have a fixed wing drone that could fly over the area and snap close-to-nadir photos as it did so, but the complexity of building and programming a hand built drone seems so much higher than deploying an off the shelf DJI drone. Additionally, the land is steep, with a 1,000+ foot elevation difference, and rugged, and the neighboring land is airspace I cannot fly within, so I couldn't use it to perform my turns.
Author, or others, any thoughts on whether it's worth pursuing a fixed wing aircraft to perform this mapping mission? Or is the best bang for my buck to just buy enough batteries to fly the mission continuously on an off the shelf quadcopter?
tsungxu
Great question! I don't think there's any sub $5k VTOL you can just buy COTS that can get close to 3 hours of range. Also, nothing is as plug and play as DJI. If you're motivated enough to do a little DIY and learn how to use Ardupilot or PX4 (easier), you can buy a kit like the Heewing T2 VTOL and assemble yourself. But I don't think that will do more than two hours flight time, even with a similarly high energy density battery pack to what I used.
bagels
Instead of one drone, buy 10, and send them out in parallel, and charge them all simultaneously.
energywut
The FAA does not permit this, by default. You are allowed to remote pilot in command one drone at a time. I could apply for an FAA waiver (I have one to fly beyond VLOS). I've genuinely considered doing so, but I don't know how I could convince the FAA that I could safely monitor multiple drones simultaneously.
psadri
Horizontal scaling. I love this out of the box thinking.
abrbhat
200 acres should not take 4 hours. It should be coverable within 20-25 minutes with 75-65 overlap, flying height 120m with something like Mavic 3 getting a GSD of 3.5cm/px. Look at optimizing your flight overlaps and height.
lazide
It depends a lot on the terrain type - highly repetitive terrain requires higher overlap. It does sound like they have some broken setting somewhere though.
energywut
It's heavily pine forested mountain areas. With a 65-75% overlap, the SFM algorithms struggle to produce sufficient details. Additionally, because of the verticality of the terrain and very tall pine trees there's a need to have multiple angles to generate a good orthophoto. So the grid is denser than other environments for a reason. I'm continuously updating my flight plan based on the results generated -- squeezing density up/down based on observed results.
The 4 hours is an overestimate, it's probably genuinely closer to 3 hours flight time.
froj
I think this fixed wing drone https://ageagle.com/drones/ebee-x/ would fit your usecase.
yard2010
If you want and have time you can enter the world of FPV, building a drone yourself. You can change the frame, motors, ESCs, controllers etc. You have much more control compared to what you have with a DJI. It's very rewarding, too. But it takes time so it might not be the economic option.
nathan_f77
You could look into paying a satellite imagery company to take the photos: https://skyfi.com/en/pricing
energywut
The thing this doesn't do well, as far as I'm aware, is provide SFM data that can generate heightmaps or point clouds. Maybe I'm wrong!
Daviey
It would be a project, but the HeeWing's T2 Cruza VTOL is extremely interesting as you could put in both a high capacity battery and a good quality camera.
Baeocystin
For now, the answer is just buy more batteries and use a DJI drone. There is nothing else that comes anywhere close in terms of bang for your buck.
dsrtslnd23
what caught my eye are the SOTA battery cells used (Amprius SA08) - with pack costs of USD 1300. As you can see here: https://www.batemo.com/products/batemo-cell-explorer/?mode=n... - this is by far the best gravimetric energy density on the market.
normie3000
This is incredibly impressive. I'd love to hear more about what relevant skills & knowledge you started with, and how you worked out what you'd need to know to complete the project.
How much customisation did you need to make to Ardupilot? Is your drone's control unique, or somehow standardised?
tsungxu
Thanks! I'm using the standard Ardupilot control systems for hover, transition and cruise flight. On the firmware side, it's just some parameters and tuning that is customized.
What I started with - Had built one VTOL before from foamboard, not 3D printed. - Familiar with Ardupilot from that project and assembling a multicopter and COTS VTOL. - So I had a little experience building a structurally sound airframe for VTOL loads, but 3D printing was a wrinkle. - How I worked it out is a hard question. But it was being focused with design, flight testing and troubleshooting. LLMs, Youtube, forums, etc for help when needed. - Building in public helped paradoxically. It actually saves me time to build in public because of the motivation boost that helps me move faster and to share progress sooner. Even though there's a higher lift to document and share.
hadlock
Ardupilot is very, very mature software. A lot of the drone video coming out of Ukraine, the HUD overlay is likely from Ardupilot. If you can think of it, Arduipilot supports it. Airplanes, helicopter, VTOL, speedboat, even sailboats.
tonyarkles
As someone who works with ArduPilot professionally, I have very mixed feelings about it. It’s mature, definitely. It supports all kinds of vehicles, like you say. It’s beautifully modular and supports a crapload of flight control and sensor hardware. And there are definitely pieces of it that are aggravating and exceptionally janky.
The HUD overlay you’re referring to is technically Mission Planner (GCS software), not ArduPilot (flight control software). Mission Planner and ArduPilot both talk Mavlink, and they’re both developed by the same community. MP is flexible. You can set it up to do almost anything you’d ever want. It’s also terrible and exceptionally janky… but extremely powerful. And they’re both free.
I think the problem with both of them is that they’re good enough that there isn’t likely to be a huge critical mass developing a better alternative. On the GCS side there is also QGroundControl and APM Planner 2 (which was a fork or reimplementation of Mission Planner). Both of them have their own upsides and downsides, but neither one of them is as mature or as powerful/flexible as Mission Planner. PX4 on the flight controller side is popular commercially because it’s BSD-licensed instead of GPL, but the net result is that it has nowhere near as many features as ArduPilot because companies build proprietary features and don’t push them back upstream.
This stuff is definitely in the worse-is-better domain. ArduPilot is free, ArduPilot is amazing and ArduPilot sucks. :)
Anyway, off to bed. I’m in a long test campaign right now and we’ve got to be up at 0430 to fly the ArduPilot-based aircraft again before the weather goes sideways.
jojohohanon
I’m curious about the control surfaces. Since you have the four quadcopter motors, you could potentially just induce all three of yaw pitch and roll by powering those up.
I wonder if the reduction in weight from the now unneeded servos would pay for the extra battery drain.
tsungxu
Great question, but spinning lifting motors in cruise draws more power than it's worth for efficiency.
There's ways to use differential thrust for multiple cruise motors to roll if not positioned at spanwise Cg (e.g. wing mounted like in a commercial jet), but again, usually not efficient. Servos are a small mass fraction relative to other components.
kulhur
How would you get yaw?
jojohohanon
Same way you get it in a quadcopter. You increase rpm in the (say) clockwise rotating props and decrease it in the counter clockwise rotors.
Net effect is yaw counter clockwise, but zero net change in lift.
ImageDeeply
Very cool. Very impressive. I hope it inspires other to build things they're passionate about. "You can just do things. And learn things." No need to wait for permission, or classwork (much less a degree), or a guide/teacher.
tsungxu
Thanks and yes I'm glad you say that. Would love to see it. It's hard to convey how much faster and better your work will be if you are actually passionate about it.
cwmoore
“”” ‘A century ago, you needed at least a brother and a bicycle shop to pioneer flight. Today, you just need the right toolchain…’
Incredibly humbling! “””
The imagination to reality loop is most rapidly well-tuned for categories that exist.
snapetom
As someone who has always been curious about building one but haven’t dove into it, I’d love detailed plans and a beginner-oriented tutorial. I’d be happy to donate/patreon to an effort.
tsungxu
Appreciate that! It's just a lot more effort making long videos with the voiceover/clips/etc.
mlsu
This is the first I've heard of foaming PLA, definitely have to check that out.
Did you do the whole airplane with a small printer like the A1 / A1 mini? I would love to print airfoils but I'm struggling to imagine a way to link individual prints together in a way that preserves stiffness. My 100cm wing would need 10x (10x10cm) printed parts somehow attached to one another.
Until I figure this out it's foamboard building for the type of airplanes I want to build (glider)
tsungxu
A1, 256 x 256 mm lets me print these wings in four sections (including a double walled thin section for the boom mounts). With a high AR glider you'd probably need a few more. Carbon fiber spars + CA glue will do the trick for attaching them
tonyarkles
Yeah I printed one of the Titan Dynamics airframes (before they closed up at access for the hobby market) on a Prusa MK3S using foaming PLA and CF spars. The fuselage came out in three prints, the wings as one print each, and then the two wing tip extensions got combined into one print.
It would definitely have been tight on an A1 mini but the full size A1 would work great for sure.
tsungxu
I actually managed to batch print the wing sections which you can see in the video in the rebuild chapter. That works really well for wing sections because each takes up a minimal bed area
null
tamimio
I loved it! But I loved even more the idea of when a person has no prior experience or knowledge in something yet achieves great results in a short period of time. That build mindset is fascinating. The only issue is when applying for normal jobs, unless the interviewer can see through a person's passion, they usually assume you don’t have what it takes or won’t "raise the bar" for whatever they are after. That is, unless you lie or throw in all sorts of buzzwords to create a halo effect.
I have a question, though: Any info about the flight stack? Was it Pixhawk/Ardu, iNav, or something else?
tsungxu
Thanks! On the normal jobs point though, see Peter Ryseck's build which got him hired by Joby
georgel
Very awesome! Have you tried to see how much payload it could hold in addition to the drone's own weight?
tsungxu
Thanks, I've not! But given the battery mass fraction is 53% for this build, rule of thumb is about 30% of a VTOL's weight for battery if you want to include payload. So I could just use a smaller 6S battery.
Or I could probably add another ~0.5 lbs or a little more without issue. The lifting motors hover at 45% ish throttle so there is some headroom for more payload without reducing battery mass fraction.
I made this 130 mile capable VTOL drone in only 90 days. It can fly for 3 hours on a single charge. That would make it one of the longest range and endurance 3D printed VTOLs in the world.
This is the thing I'm most proud of building to date!
Before this project, I was a total CAD, 3D printing and aerodynamic modeling beginner. I had only built and flown one VTOL before.
SPECS
Wingspan: 3.9 ft (1200 mm) Length: 2.5 ft (770 mm) Weight: 5.6 lb (2.55kg)
Airframe: foaming PLA (Bambu PLA-Aero) and PETG structural parts printed on A1 printer, CFRP booms and spars
Battery: Li-ion silicon anode Amprius SA08 cells, 6s2p pack by Upgrade Energy Motors: 2807 AOS for lift and cruise (unoptimized) Lifting ESCs: 4 in 1 Holybro Tekko32 F4 45A Cruise ESC: Flycolor Raptor 5 45A Lifting and cruise props: 7042 Gemfan (unoptimized)
Flight controller: Speedybee F405 Wing GPS: M10
Firmware: Ardupilot 4.6.0
---
This video edit ended up shorter than I planned. Being my first Youtube video with significant post production effort, I underestimated the work required to make a longer in-depth video with voiceover, edited footage, etc.