Sunday, October 21, 2018

Altimeter UX prototype

I just pushed a change to the Airball code that adds a prototype of an altimeter to the bottom of the display. Here is what it looks like, playing on my computer with a bit of auto-generated test data:

The idea is to try to fit an altimeter and a sensitive VSI in a small space. Note how the VSI needle "flattens" against the top or the bottom of the display, so you can still see that you have a "large" climb or descent rate, but it need not take up lots of screen space. The range of the needle on the right side is +/- 100 fpm.

The reason for having an altimeter is that altitude station keeping is often an important component of the set of things a VFR pilot is supposed to be doing. And if we can integrate this into the One True VFR Instrument [tm] then we can make things much easier on a pilot.

Also, a nefarious ;) goal is to try to indeed make Airball the One True VFR Instrument [tm] that a simple day-VFR LSA or other aircraft can install.

Finally, the cool thing is that all this information is derived from airdata!

Sunday, September 9, 2018

Oshkosh 2018 recap

It's been a while since we blogged, and it's been rather hectic. But fear not, the project proceeds apace. First, news of our epic adventure to Oshkosh 2018!

Jeremy and I took off from Carson City, Nevada (KCXP) and landed at KOSH two nights later. In the meantime, we were weathered in and ended up sleeping the first night at Hulett Municipal Airport (W43) in Wyoming. The second night, we slept in Madison, Wisconsin in a proper hotel. And the following morning, we took off and did the harrowing approach into KOSH, where Jeremy's landing got him a "Nice job, T-tail!" from the controllers!

For the return trip, Jeremy flew me to KORD where I took a commercial flight back home to KSFO. Our flight into KORD was IFR including some actual, and Jeremy did an awesome job of barreling in along with the fast jets and landing just before the taxiway turnoff. Again, he earned some thanks from the controllers!

This is Airball in flight:

This is Camp Haybale [tm] at W43:

And the full photo album of our trip can be found here:

Oshkosh 2018

We met with a huge number of great people, many of whom were excited to collaborate with us, and we with them. We will be sharing more of this as things actually materialize.

We also attended the 2018 Founder's Innovation Prize awards, where we were delighted to see Mike Vaccaro, Chris Jones, and Cecil Jones win first prize for their project, Enhanced Aural AOA Logic. Congratulations to them for a job very well done!

Friday, July 20, 2018

Introducing a new and improved, fully custom, and very compact Airball display

For several months, I have been working on a new display for Airball to go with the fancy new probe. You've seen some appearances of my display prototypes in Airball takes a 30-hour trip to Houston and back and Insanely bright new display by Jeremy. The display seen in those pictures, though, is my hardware verification prototype and is rather clunky and unwieldy. The idea with that prototype was to combine all the hardware I wanted to use for the real display, get it up and running and tested, and prove that it can all work together and do what we need it to do.

The minimum hardware Ihab specified for the Airball display (based on his earlier design and prototyping work with existing displays) was:

  • A Raspberry Pi or similar embedded CPU (probably ARM) running Linux.
  • A small (4" or so) daylight-readable TFT display.
  • An XBee radio to receive data from the probe.
  • A rotary encoder knob of some sort to configure the software.
In addition, as a result of my own testing, in order to make the solution work, I added a couple of additional requirements:
  • Controllable brightness for the TFT's backlight, as daylight readable displays are insanely bright at night.
  • A real-time clock to allow logging of flight and debug data with accurate timestamps.
I also had a few of my own design criteria:
  • Compact – make the system as compact as possible to ensure it is usable in as many aircraft as possible, and without getting in the way too much.
  • Sturdy – ensure that the system doesn't feel fragile; it should be sturdy enough to be tossed around a bit without breaking, and shouldn't feel cheap or rattly.
  • Aesthetically pleasing (to me, at least) – the design should be cute, rounded, and not too clunky or boxy.
The hardware verification phase of my design was successful (if completely unwieldy to transport and use!), so I went ahead and designed a completely custom solution using all of the various components I had tested, and tastefully fit it into a 3D printed enclosure. Although I've been working slowly on the design for months, last week I pushed hard to get the design completed and make it real. On Friday last week, I finally sent the circuit board order in for fabrication, and ordered all components. On Wednesday, I received the circuit boards and  started assembly, and after working through a few issues, as of this afternoon it's fully up and running.

Without further ado... here's the new Airball Display v1:

It's very slim:

Compared to the hardware verification prototype from earlier posts:

Looking inside of the case, the main space is taken up by the custom circuit board, which carries all of the components and nestles the display perfectly into the case:

The case itself consists of three custom-designed 3D-printed parts, a front and back case (both blue) which sandwich the circuit board, and a TFT mounting frame (black):

The TFT mounting frame mounts to the circuit board and holds the TFT safely and securely in exactly the right position to line up with the display connector (40-pin flat flex cable) and the cutout for the viewing area.

Once the circuit board is fully assembled and mated to the display, the whole unit can be removed from the case as a single completely functional unit for debugging and troubleshooting, as well as to make assembly into the case much easier:

Without any parts soldered, the circuit boards look like this:

For the technically minded, the following major components were used in this project:
  • Raspberry Pi Compute Module 3 – an SO-DIMM 200-pin form factor version of the Raspberry Pi 3, designed to be integrated into custom solutions. I validated the CM3 using the Raspberry Pi Compute Module IO Board V3 development board.
  • NewHaven Display NHD-4.3-480272EF-ASXN – a 4.3" 480x272 daylight-readable TFT display.
  • Texas Instruments TFP401A – an HDMI to PanelBus (40-pin parallel RGB) converter chip to convert the Raspberry Pi's HDMI signal into something that can drive the TFT. I validated the TFP401 using the Adafruit TFP401 breakout (modified to remove the LED driver circuit and connect to my custom dimming circuit below).
  • A custom TFT LED backlight dimming circuit – featuring a Bourns potentiometer as user input, an Microchip/Atmel ATtiny85 running custom firmware to sample the potentiometer and output a PWM signal, and TPS61169 boost converter LED driver to drive the 25.6V backlight from 5V. In order to validate this part of the circuit, I designed, built, and tested a separate small breakout board, which I integrated into my hardware validation prototype.
  • Maxim Integrated DS3231 real-time clock – a high-precision real-time clock chip with crystal built in. I validated the DS3231 using a generic Chinese breakout board.
  • A Bourns rotary encoder used as user input for configuration.
  • A custom 4-layer circuit board designed in Autodesk EAGLE fabricated (perfectly and quickly!) by PCBWay in China.
  • A custom 3D-printed enclosure and support components designed in Autodesk Fusion360 and printed at home on a Prusa i3 Mk3.
The design and library files for v1 as ordered are committed and pushed to GitHub, and for your convenience (or curiosity), you can also find the full schematic in PDF form as well, so you can read it without Autodesk EAGLE.

Ihab and I are about to head to Oshkosh on Saturday in my DA40... so the new Airball Display v1 will get some flight time on it very soon! See you there!

Wednesday, July 18, 2018

Congrats 2018 EAA FIA finalists!

The EAA has announced the finalists and honorable mentions for this year's Founder's Innovation Prize competition!

You may recall we sent in our Airball entry for the 2017-2018 EAA Founder's Innovation Prize. We were not chosen for a funding renewal this year, but we appreciate the opportunity to participate, and writing our report was a great way to focus our efforts and plans for the future.

We will be at the event in Theater of the Woods in Oshkosh next Tuesday cheering on our colleagues and hearing about their cool ideas! And during the "intermission", as past winners, we will be answering audience questions about our progress.

See you in Oshkosh!

Friday, July 13, 2018

Test flight by Tom Jones (KSNS)

As noted earlier, Tom Jones is a friend of mine who flies a Rans S-6S out of KSNS. He recently did a data gathering flight with the latest Airball system. Like his friend Jim Shumaker, he got the thing running with no help from me -- apart from a minor confusion about the multiple USB ports that we have on the prototype display!

This is Tom's airplane at KSNS:

And this is the awesome video he made, which apart from its documentary qualities also counts as bona fide Airball advertising:

Here are his remarks, verbatim:

Date: 7-1-18

Aircraft: RANS S-6S, standard wing

Pilot: Tom Jones

Elevation of Flight: 100’ to 5,700’ MGL

Temperature: 71F to 85F

Weather: Warm, Inversion Layer, Light Winds (<5 mph), Smooth Air Above 2,000'
Sensor Installation: Right Wing, Main Strut, Mounted Mid-Span between Jury Strut & Main Strut/Wing Interface

Display Installation: Instrument Panel RAM Mount

Evaluation Aircraft had an Inclinometer mounted to the instrument panel and has instrument panel mounted Blue Mountain Avionics Gen 4 EFIS. This EFIS features an electronic Inclinometer function. In general the two instruments track well. However in high angles of attack and steep turns the Inclinometer ball tends to experience a left bias, up to 1/2 of a ball diameter from the EFIS.


Installation of Sensor: The custom mount fabricated for the RANS S-6S worked well with no observed movement.

Installation Display: No issues mounting the display.

Operation of Sensor: No issues in operating

Operation of Display: Issue connecting external battery to Display. Initially tried connecting standard USB connector to Display. With Ihab's clarification - mini USB connects to display and standard USB connects to external battery. No other issues experienced. Boot time was under 1 minute. Not sure of purpose of the 4 standard USB connectors?

WiFi Connection: Self connecting no issues. No WiFi issues in using this device with my Stratus 2S. Display typically showed a signal strength from 50% to Full; on average 75%.

Display: In general the display was clear, about the same brightness as the Blue Mountain EFIS. With my sunglasses (unpolarized) on it was difficult to see the red reference line. The blue ball was easy to see. Note: Skies were clear, the sun was at the zenith and the aircraft had a clear sky light. It was difficult to record video with the Cannon video camera, due to glare.

The Air Ball was sensitive to change in comparison to the Inclinometer and EFIS. The ball was bouncing (jitter) around which I found to be somewhat irritating.

In general cruise (80 to 120 mph) the beta drift was minimal. At higher angles of attack the ball drifted to the left.

On steep turns to the left - Air Ball tracked well w/ the Inclinometer.

On steep turns to the right - Air Ball tracked well w/ the EFIS.

On landing the ball drifted to the edge or just off the display.

On the return leg I had to adjust the beta bias. I’m not sure why - if it was mechanical related or due to temperature drift or something else?

Otherwise the Air Ball performed flawlessly. As alpha was reduced the ball would move to the top of the display and visa versa. As the aircraft was yawed to the left the ball would move to the left and visa versa. As air speed was increased the ball would get larger and visa versa.

1. On case of display identify mini USB as Power In.

2. Recommend adding a user controlled damping function - user adjustable sampling / averaging of data points or possibly having a user adjustable sampling rate. This should help reduce ball jitter.

3. Consider changing the color of the ball as a function of airspeed, i.e. White, Green, Yellow, Red.

4. In the center of the ball you might consider displaying airspeed.
Once again I am grateful to Tom for this awesome and well-organized report. A few quick notes:

USB port clarity: Our bad! Prototype hackery hardware for the win!

Jitter: Totally agree with Tom that we need filtering and that it should be user adjustable. We have shied away from filtering so far because we don't want to mask away the "instant wind-sock" aspect of the instrument, but now's the time to smooth out the jitter.

Brightness: Jeremy's new displays will fix that!

Beta bias: We know about that and we're working to add the accelerometer. All told, I suspect something may have bumped the probe out of alignment while the plane was sitting on the ground between Tom's outbound and return flights, but if that's not the case and there was some discrepancy, we'll find it soon enough!

User interface suggestions: Thank you. We have thoughts about adding V speed tick marks around the size of the ball, as part of a more comprehensive Airball-based VFR instrument (see below), so we will take all these thoughts together and see where they lead us.

Test flight by James Shumaker (KSNS)

My friend Tom Jones owns and flies a Rans S-6S out of KSNS -- more on Tom and his activities in a future post. He invited me to come to the KSNS Airport Tenant Appreciation Day recently. I dropped off an Airball system with him and flew back to my home airport of KRHV.

He introduced me to Jim Shumaker, who flies a Citabria out of the same airport, and does aerobatics! Jim was the first of these two folks to take Airball up for a spin!

I just waved my arms and mumbled a few words about how Airball works, and showed them how to physically mount the stuff. Apart from that, Jim was able to get the whole thing working independently, days after I'd left. Here is Jim's airplane:

This is his verbatim feedback, which he has kindly given me permission to post here:
I'm a bit late getting back to you about my flight with the airball but I did some Aerobatics with it and found it was consistent in showing angle of attack so the strap on installation worked very well. It indicated Critical angle consistently whether I was flying at 50 mph power off or 80 when in a tight turn.

I was unable to get the slip skid to center at different airspeeds. It would move to the left when it was calibrated for at low speed and then a higher speed was flown. It would move to the right if it was calibrated at cruise and then the plane slowed down.
However, The ball getting small when getting closer to the critical angle of attack did not work for me. Generally things are emphasized by getting larger, not smaller. When the ball was small and the slip skid was near the outer limit the ball disappeared. It Probably would not happen when the ball was at its largest size. I tried narrowing the limits from 15 degrees slip/skid to 10 degrees, but that was not enough. When rolling out of an Immelmann turn the ball had disappeared off to the side so I could not tell my angle of attack at all and an Immelmann is one maneuver where the angle of attack would be very useful. 
Also, when the model airplane demonstration where the string with the blue cone was used for an illustration of the wind vector, the circle it represented moved left and right as indicated but it got LARGER as the vector got shorter and looked SMALLER as it got further away. Just another reason that larger when slower would make intuitive sense. If you are getting closer to stall it should look closer. 
In Acro the angle of attack would be useful when at very low speeds and unusual attitudes where it is hard to tell where the wind is coming from. It could even be negative and that is where it might be most helpful. I've been in spin entries that developed into spiral dives because the critical angle of attack was not maintained. It would have been useful to know the angle of attack then. but with the ball out of sight to the side it would be useless. The ball should always be visible no matter the angle of slip/skid or angle of attack. 
The size of the ball does not need to change as much as it does to be a useful indicator of the speed vector.
I am grateful to Jim for having done this flight and his feedback is invaluable.

Critical angle consistency: I'm glad to hear that. This is indeed the idea, and it is good that someone who's willing to do an acro tight turn can verify that!

Slip skid centering: Jim has noted the flow asymmetry problem we've been dealing with, and indeed noted that it changes with different flight conditions. This sort of seals the deal for us. We need to at least have the option of using an accelerometer for our yaw sensing. I would like to at least run some test flights with an accelerometer and aerodynamic yaw sensing and compare the data just so we can see it, but I think the laws of nature have put us pretty firmly along that decision path.

Smaller versus larger: Noted. :) Jim is an expert pilot and, I suspect, sees the Airball display as a source of hard data, since he already has a firm intuition of flight. We have had feedback from CFIs and less experienced pilots that the "larger ball = stronger wind" visualization really feeds their intuition. It may be that one Airball may not fit all. Perhaps the display can be customized for different levels of expertise, from the most "intuitive" and "cartoon" version, to the most "information dense" version. We will keep listening.

Ball out of sight: We have a nomenclature bug. :) We talk about yaw angle "limits" when we really mean the range of the screen. So Jim reasonably took the "limits" to be a limit on the excursions of the ball, and in so doing actually ended up increasing their excursions. We need to do a better job of nomenclature and provide a "quick start guide" to users.

AoA useful in acro: We are glad to hear that. One feature of our probe -- and our system in general -- is that it is not opinionated as to how you fly. Our probe is just a 5-hole alpha-beta probe. If the airflow is coming from the bottom, it reports a "positive" AoA. If the airflow is coming from above, it reports a "negative" AoA. This is in contrast to some other AoA systems that display "zero" in cruise and never go "negative". And the display Just Works [tm]. So supporting acro (including -- say -- inverted flight) should be a simple matter.

I would like once again to thank Jim for his feedback and we look forward to having him try out improved models, which are in the works!

Thursday, July 5, 2018

Relative wind demonstrator keychain

We've all had our CFIs demonstrate maneuvers to us by puppeting a little model airplane. In fact, it's hard to find a flight school without a few little models lying around, often (with a strong sense of irony) some cool WWII fighters that the hapless students stand a snowball's chance in Hell of ever getting to fly in their lifetimes....

What these models miss is the most important thing -- and, as a reader of this blog, you probably already know what we're going to say it is. It's the relative wind!

To that end, we have created a little trinket that you can use to visualize your aerodynamic state as you puppet your maneuvers. Move the little arrow around to simulate different angles of attack and yaw, and move the arrow closer to the plane (i.e. appearing bigger from the viewpoint of the pilot) to simulate a higher indicated airspeed. This is, of course, precisely the metaphor around which the Airball display is built!

We're going to be giving these out at Oshkosh this year, so if you want one, be sure to find us and get yours!

The production line

To get these made, I 3D printed the parts on my Prusa i3 MK2S printer. I made tray after tray, using up a whole reel of yellow filament and a bunch of blue:

A few of the prints went sort of sideways, but that's part of the deal I guess:

Melissa and I then had a massive assembly party:

And the final result, a pile of almost 200 little doodads:

Tokki the whippet slept nearby. Poor guy has a hurt paw and has to wear the Cone of Shame:

Making your own

Each of these is made of a 2-piece arrow, an airplane, a keychain attachment and a little rubber band:

You first insert the keychain into the arrow body, and attach and secure a jump ring:

The hole in the body is large enough for the chain, but the jump ring won't fit, so that secures it. You then attach the body to the arrowhead with some cyanoacrylate glue and use the rubber band to secure the arrow to the airplane:

The keychain parts are from and are here, $7.49 for a pack of 100:

The STL files for printing the plastic parts are in this Google Drive folder:

Oshkosh 2018 airplane model

The filament is Hatchbox 1.75mm PLA, in the standard Blue and Yellow colors.

Hope to see you at Oshkosh!

Wednesday, June 20, 2018

Insanely bright new display by Jeremy

Jeremy just sent me a couple of inflight photos of the new display prototype in full sunlight under a Diamond DA40 canopy over the California in the middle of the day. Behold the brightness:

It's brighter than his Garmin G1000. This is crucial since it allows our instrument to be a reliable situational awareness aid regardless of the conditions.

Monday, June 18, 2018

Airball vlog by Robert Sogomonian

Jeremy's and my friend Robert Sogomonian made a vlog of an interview and flight test with Airball! Check it out here:

Friday, June 15, 2018

Stick and Rudder available online

The book Stick and Rudder, by William Langewiesche, is now out of copyright and available online! Check it out here:

We at Airball are huge fans! [*]

I believe that, if you cannot explain what you do to a smart 6th grader, you probably have no idea what you are doing. This has informed all my work, on the Airball project and elsewhere.

In Stick and Rudder, I believe we have the best application of that ethos to aviation. Mr Langewiesche manages to describe the phenomenon of flight correctly, but with nary an equation or unnecessary fancy term. In Chapter 7, "What the Airplane Wants to Do", starting on page 109, this is particularly evident -- he boils down what engineers model via differential equations into step-by-step explanations, pretending that time is broken up into tiny "slices" and imagining what happens at each slice and how it affects the next slice. This is technically acceptable at all levels -- it also happens to be the finite difference method for solving differential equations on a computer. But you would not see such needless name-dropping in the book. It's all focused on building intuition.

We believe that, if Mr Langewiesche were alive today, and based on illustrations like these in his book, he would be excited about Airball.

[*] -- The book, being a product of the 1940s, is rather condescending towards women pilots. We are most definitely not fans of that aspect of it.

Monday, June 11, 2018

How far Airball has come, and looking to the future

Way back in 2015, Ihab had already been thinking about measuring air data cheaply and accurately and had substantially designed the Airball probe as we have built it today.

In April 2015, he described his idea in An Inexpensive Operational Airdata Probe, laying out the basic probe design, and–more importantly–the math behind it. While the probe in that paper is assumed to be plumbed to its electronics sitting somewhere else (rather than sitting inside the probe as they do today), the basic design of the nose of the probe was exactly the same as our current Airball probes:

In June 2016, Ihab submitted his winning Airball entry for the 2015-2016 EAA Founder's Innovation Prize. In that entry, he built upon his 2015 design and included a proposed design for a (now somewhat ancient-looking "yellow submarine") probe, as well as his innovative "airball" method of displaying the air data. He also included a mock-up for pretty much what the display unit looks like today:

In December 2017, I joined Ihab to collaborate on making this thing an attached-to-wings reality. Together, we've continued to prove, improve, and build upon Ihab's original basic design to produce our current generation of air data probe (built by myself) combined with a prototype display unit (built by Ihab), which no longer need to be renderings because they actually exist and work in real life:

After several weeks of busy "crunch" time for Ihab and myself, reviewing and revising and writing about our efforts, we are proud to announce having submitted Airball again for this year's EAA Founder's Innovation Prize. In our new entry, we describe the technical improvements we've made, our ongoing development efforts, and the in-flight validation we've done. We also describe our plans for the future and where Airball can go from here.

Take a moment to read our Airball entry for the 2017-2018 EAA Founder's Innovation Prize – and let us know what you think!

We look forward to hopefully seeing many of you at EAA AirVenture Oshkosh next month!

Monday, May 28, 2018

Building a display

Here I'm going to show you the steps to building one of our latest displays. This is just commodity Raspberry Pi hardware in a 3D printed enclosure, but it may be interesting to readers to see what goes into the device. We start with all the components laid out:

There's a 4.3" HDMI LCD display; a Raspberry Pi 3; an XBee breakout board; an actual XBee with a u.FL to RP-SMA connector and a 2.4 GHz antenna; a pushbutton encoder; a 3D printed enclosure with standoffs and screws; and a RAM mount base with screws. We have already wired the XBee breakout board and the encoder to the solder pads on the LCD display, which are wired into the Raspberry Pi.

Next we assemble the XBee into its socket. We mate the Raspberry Pi to the LCD circuit, and attach the (clumsy, I know, I know...) HDMI connector:

We then insert this into the back of our case:

And then we add our screws and standoffs to secure the LCD into the case (this also holds in the Raspberry Pi):

We then insert the encoder into its matched slot in the case:

And tighten the panel nut on the opposite side:

We then attach the u.FL to RP-SMA wire in the case panel mount slot, and attach the u.FL connector to the XBee:

Meanwhile, we screw the RAM ball to the case back. Note that it has a grid of #8 holes allowing the base to be positioned as you need it:

We then put some 3M VHB tape on the back of the XBee breakout and mount it to the case back:

Finally, we screw on the case back from behind:

We then attach the antenna and press the knob onto the encoder shaft:

This also works with a stubby antenna, depending on how far your probe is from your display and what's between them. Here is Linux booting up:

And here is an Airball display showing strong wireless signal (the battery status monitor is not yet working):