My Attempt at a $115 ADS-B Receiver Build for Foreflight

Why exactly can't the vast majority of it be a read only filesystem with the temporary variable stuff just getting wiped each boot? No reason I can think of that it couldn't be made to where improper power offs don't hurt a thing.
 
So do I update it with the latest pre release?

Depends on how "adventurous" you care to be, and how much testing you wish to do on the ground.

I'm personally happy if I only get the FIS-B. A lot of traffic isn't on ADSB as yet, and I find myself only glancing at the iPad and ForeFlight every few minutes, but I fly VFR so I'm supposed to be looking outside anyway.
 
Why exactly can't the vast majority of it be a read only filesystem with the temporary variable stuff just getting wiped each boot? No reason I can think of that it couldn't be made to where improper power offs don't hurt a thing.

You'd know better than most of us. In the old days, some of the memory was read only (physically couldn't be written) so if something tried writing there, the bootstrap code was still intact.

Is there anyway to partition memory in a Linux system to effectively make some of it read-only?
 
Forgot image from earlier
 

Attachments

  • image.png
    image.png
    68.9 KB · Views: 43
Depends on how "adventurous" you care to be, and how much testing you wish to do on the ground.

I'm personally happy if I only get the FIS-B. A lot of traffic isn't on ADSB as yet, and I find myself only glancing at the iPad and ForeFlight every few minutes, but I fly VFR so I'm supposed to be looking outside anyway.
Well since the release versions don't have a way to shut them down I guess you just have to kill the power. like everyone else.. .
 
Well since the release versions don't have a way to shut them down I guess you just have to kill the power. like everyone else.. .

I'm not sure if I'm the one you wished to respond to. However, I suppose one could open a browser window using the IP address for the rPi and follow the instructions below.

Unfortunately, Chris has yet to add a software OFF switch altho it's on the Wish List, so right now it's necessary to open a terminal window on your tablet, log into the RPi and shut it down gracefully. The default password on the RPi is "raspberry" (no quotes). Then you'll see a Linux command line with the $. At that point type

sudo init 0

hit the Return or Enter key, wait a moment. You'll notice most of the lights on the unit stop. Then you can pull the plug, kill the power, whatever.

As I understand that they will add the shutdown from the "console" window, I suspect they will just encode the SODU command listed in the instructions above in a control.
 
The shutdown and reboot buttons have been added to the last few betas on the webUI and work.

It's coming !!!!

Spectactular! Weather's been lousy around here, so I haven't been flying much, will have to go get the update.

tanks!
 
Why exactly can't the vast majority of it be a read only filesystem with the temporary variable stuff just getting wiped each boot? No reason I can think of that it couldn't be made to where improper power offs don't hurt a thing.

Someone developed a read only version. Not sure if it is being maintained.
 
Someone developed a read only version. Not sure if it is being maintained.

Interesting that it isn't a priority for the developer. Seems like making it to where unprotected shutdowns are fine would be a pretty major priority....

Easy to *****, glad they're doing it, could do the above myself, but simply don't have the time. So I'll be quiet :)
 
Preferable to "sudo shutdown -h now"?:dunno: (other than the fact it's much shorter!)

same thing, shorter. But if the Shutdown & Reboot buttons are now working, that eliminates the issue for non-CLI and non-*nix users.
 
Actually the button on the webUI is extremely fast at shutdown, however they coded it
 
So, is there a definitive "best list" of parts to order for dual band, AHRS, case, battery, soup to nuts?
 
Why exactly can't the vast majority of it be a read only filesystem with the temporary variable stuff just getting wiped each boot? No reason I can think of that it couldn't be made to where improper power offs don't hurt a thing.

Know of a similar project that's been around since the late 90s that simply sucks the entire file system into RAM and pivots root into it after uncompressing the boot image.

It boots from SD and can "permanently" store things back to the SD by mounting it and writing to it and unmounting it during run time, if the user wants to save certain troubleshooting data, but the standard run config is to simply run from RAM disk and when the power fails, it all goes away.

Configuration changes use the same mount mechanism of the SD card to store the config changes if needed and unmounting immediately thereafter. Config is usually done once in the lifetime of the product and then ignored thereafter.



Preferable to "sudo shutdown -h now"?:dunno: (other than the fact it's much shorter!)


Depending on the Linux flavor, shutdown is often a symlink to init and the same binary simply reads the variable that maps to the command called, to see how to behave.

Can also be a symlink to halt. All depends on what the distro decided to do.

Literally the same binary program on disk.

It's been a while since I looked to see which is which but it changes from time to time. The modern fun and games is to have everything under the systemd trying to act like a Mac. The thing has grown into a mini OS of its own, mostly to placate newbie UNIX kids who can't write a decent SysV start/stop script.

A number of Linux commands are based off the same binary. Most of this interesting fun and games hangs out in /sbin and stays away from doing strange things like that in /bin. I've seen systems with /sbin mounted read only to avoid replacement of system binaries by malicious code. Not as popular as enforcing policy with selinux these days.
 
Interesting exchange over on the red board as to why Stratux AHRS no longer feeds FF... sounds like it was deliberately done.

From CodeMonkey...

"The simultaneous feeding of data to both our operational use and flight simulator use ports was undesirable (unexpected, untested, and not a priority for us to debug, harden, and ultimately support at this time), as was the injection of Stratux AHRS data for operational use. We know what we get at this point with the Stratus 2 and FlightStream AHRS - both Appareo and Garmin have years of experience building certified inertial systems. Lots of time and testing is invested in getting that performance really dialed in, and other priorities are at the top of the stack currently.

Ultimately, we do want the final say in what data gets injected into ForeFlight, as we are liable for it. One customer recently descended safely out of IMC with Stratus 2 after an electrical failure in a Piper that occurred just after he flipped the gear switch. His daughter was on board. That's sobering."

Shame they decided to go down this path as opposed to embracing Stratux.
 
Shame they decided to go down this path as opposed to embracing Stratux.


Why? Displaying traffic or weather data is one thing.

Displaying aircraft control information from a device that the creators claim is not intended for use in flight, opens them up to a lot of potential problems.
 
Interesting exchange over on the red board as to why Stratux AHRS no longer feeds FF... sounds like it was deliberately done.

From CodeMonkey...

"The simultaneous feeding of data to both our operational use and flight simulator use ports was undesirable (unexpected, untested, and not a priority for us to debug, harden, and ultimately support at this time), as was the injection of Stratux AHRS data for operational use. We know what we get at this point with the Stratus 2 and FlightStream AHRS - both Appareo and Garmin have years of experience building certified inertial systems. Lots of time and testing is invested in getting that performance really dialed in, and other priorities are at the top of the stack currently.

Ultimately, we do want the final say in what data gets injected into ForeFlight, as we are liable for it. One customer recently descended safely out of IMC with Stratus 2 after an electrical failure in a Piper that occurred just after he flipped the gear switch. His daughter was on board. That's sobering."

Shame they decided to go down this path as opposed to embracing Stratux.

And yet, every aviation software out there has a disclaimer on it to mitigate "liability". ForeFlight's is at

http://www.foreflight.com/support/eula/

and I quote 'THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. FOREFLIGHT DOES NOT AND CANNOT WARRANT THE SERVICE FOR ACCURACY, RELIABILITY, COMPLETENESS, SAFETY OR FITNESS FOR LICENSEE'S PARTICULAR PURPOSES. '

Hilton doesn't have any problems with Stratux at this point. Of course his lawyers may not have noticed it yet.
 
And yet, every aviation software out there has a disclaimer on it to mitigate "liability". ForeFlight's is at

http://www.foreflight.com/support/eula/

and I quote 'THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. FOREFLIGHT DOES NOT AND CANNOT WARRANT THE SERVICE FOR ACCURACY, RELIABILITY, COMPLETENESS, SAFETY OR FITNESS FOR LICENSEE'S PARTICULAR PURPOSES. '

Hilton doesn't have any problems with Stratux at this point. Of course his lawyers may not have noticed it yet.

But are any of the current crop of commercial ADSB in units really that reliable ?
 
And yet, every aviation software out there has a disclaimer on it to mitigate "liability". ForeFlight's is at

http://www.foreflight.com/support/eula/

and I quote 'THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. FOREFLIGHT DOES NOT AND CANNOT WARRANT THE SERVICE FOR ACCURACY, RELIABILITY, COMPLETENESS, SAFETY OR FITNESS FOR LICENSEE'S PARTICULAR PURPOSES. '

Hilton doesn't have any problems with Stratux at this point. Of course his lawyers may not have noticed it yet.

Well, looking at the GitHub comments from the last week...

https://github.com/cyoung/stratux

This code... certainly doesn't look anywhere near ready for prime-time yet:

https://github.com/cyoung/stratux/commit/8410819ae2ef2454bdbdd68a2b9cce36c877a146

Oh I totally get it, that it's brandy-new and experimental and all, but I can also see why at this stage of the game, Foreflight doesn't want to be the display tool for stuff that looks like that code at the low level, yet.

Especially if they're using an interface, in a way untested and unexpected, by the folks at Foreflight.
 
Just sounds like they just don't want to play. Or they saw it as a threat to their stratus sales... Who knows, who cares, I left FF years ago.

Call Stratux experimental but in comparisons I have seen, the $150 and $800 boxes are on par for traffic and weather, AHRS for Stratux is still in development, but that's only a matter of time.
 
Interesting exchange over on the red board as to why Stratux AHRS no longer feeds FF... sounds like it was deliberately done.

From CodeMonkey...

"The simultaneous feeding of data to both our operational use and flight simulator use ports was undesirable (unexpected, untested, and not a priority for us to debug, harden, and ultimately support at this time), as was the injection of Stratux AHRS data for operational use. We know what we get at this point with the Stratus 2 and FlightStream AHRS - both Appareo and Garmin have years of experience building certified inertial systems. Lots of time and testing is invested in getting that performance really dialed in, and other priorities are at the top of the stack currently.

Ultimately, we do want the final say in what data gets injected into ForeFlight, as we are liable for it. One customer recently descended safely out of IMC with Stratus 2 after an electrical failure in a Piper that occurred just after he flipped the gear switch. His daughter was on board. That's sobering."

Shame they decided to go down this path as opposed to embracing Stratux.

Renewal time for my Foreflight sub; perhaps time to reconsider?
 
That's why it's a beta.


Yeah that's Google's excuse too, but their **** works. LOL.

Did you even read the bugs they're fixing? Those are amateur hour bugs for anyone who works embedded systems. Way amateur hour.

I can see Foreflight going "whoa! That's hideous code!" on the AHRS stuff... But having to come up with a nicer way to say it in public.

That AHRS branch is Alpha level code at BEST. IMHO anyway. Sloppy.
 
Well total actual "doing stuff" time to get that up and running was about 10 minutes, not including unboxing stuff and dd'ing the SD image.

Smoke tested the hardware with the release and then copied the latest 0.5 version onto the SD.

Looks like it works. And I'm surrounded by DEN traffic! Gasp! :) :) :)

Smoke test... 0.4...

[Edit: That's an Icom keyboard by the way, radio geeks...]

947e3eb49d1ea3b905beaafe2e2daf7e.jpg


438c7b73c592bd0e24d543f589facf1c.jpg


543cf60bd97c3bb87c5e7c13a2634019.jpg


And 0.5 latest... Ooh purrrty shutdown button. Haha.

e2def5ca1d449a2ca20b8d439f454b86.jpg


f95f795a666774aa69a0b120e197d35c.jpg


d04aaa114c530fc7d151018fb4bb9958.jpg


80991f34ddcafcfc125e761bdbeaf3fb.jpg
 
Yeah that's Google's excuse too, but their **** works. LOL.

Did you even read the bugs they're fixing? Those are amateur hour bugs for anyone who works embedded systems. Way amateur hour.

I can see Foreflight going "whoa! That's hideous code!" on the AHRS stuff... But having to come up with a nicer way to say it in public.

That AHRS branch is Alpha level code at BEST. IMHO anyway. Sloppy.


They freely and clearly state that AHRS is still early development, so no one is expecting miracles at this time.

If it was easy, you would be doing it, but you are not.
 
Renewal time for my Foreflight sub; perhaps time to reconsider?


Wouldn't worry about it unless you're planning to use the AHRS stuff and have the chipset connected to you Pi.

And judging by bugs being fixed there on GitHub, I wouldn't trust that AHRS code for too much yet.

It'll get there... Well, maybe...
 
They freely and clearly state that AHRS is still early development, so no one is expecting miracles at this time.



If it was easy, you would be doing it, but you are not.


Then it's reasonable for FF to say, "not a good idea for us to display it through an interface we didn't intend to be used in a way we haven't tested", then... Isn't it.

Pfffft on the last part. A quick look at this code base, and it's sucking in someone else's SDR module, defining a data format and frequency for the data (already done before Stratux and available openly to mimic or copy) and doing a translation into the serial stream format needed to talk to the aviation crowd. There isn't any rocket science in it.

If you're talking about the AHRS part, the last check in was to turn on a feature already in the chipset and to lower the valid data flag from 10 to 7 knots, as well as flip a variable type that was just flat used wrong. That last one is probably a result of a poor data sheet for the module, would be my guess. The git checkin didn't say.

Most of this is "packaging code", not new tech. ADS-B with various SDRs has been being done for quite a while now on Linux.

There's an open ticket to add network setting controls to it... Maybe if I get bored I'll make up a page to do that and do a pull request. Kinda want to look through this code base a little more first and get a build environment set up.

I'm happy they're doing it (for very small values of "they", there's only 12 contributors so far, and four of those added only a few lines of code... the vast majority of the work is two people, maybe three depending on where you draw the line, and the main guy seems nice enough in his YT video...). It'll be a nice toy if things are slow at work. Hacking is always interesting, but I don't see an itch to scratch for me yet. That network thing isn't really needed for anything but testing on a home LAN over Wifi.

Looks like they sucked in the latest from the guy who wrote the SDR dump tool also recently. That'll keep getting better too, but the Stratux guy didn't write that.
 
Why would anyone attempt to turn an iPad into an AHRS? Or am I reading this conversation wrong?
 

Collapse the antennas (as in, don't extend them). They'll work better, as they will then approximate a quarter wavelength at the ADS-B frequencies. Counter-intuitive that a smaller antenna would receive better, but it's true.

Side benefit is they take up less room!
 
Last edited:
Why would anyone attempt to turn an iPad into an AHRS? Or am I reading this conversation wrong?

Nobody is trying to do that.
The iPad (and Android) already has apps like ForeFlight and Garmin Pilot that use an external GPS and ADS-B receiver (like Stratus) which also has AHRS info, optionally displaying that in Syn-Vis on the iPad in conjunction with the nav data.
This project is trying to duplicate the Stratus (or GDL-39 for Android) with a cheaper DIY solution.
 
Last edited:
Nobody is trying to do that.
The iPad (and Android) already has apps like ForeFlight and Garmin Pilot that use an external GPS and ADS-B receiver (like Stratus) which also has AHRS info, optionally displaying that in Syn-Vis on the iPad in conjunction with the nav data.
This project is trying to duplicate the Stratus (or GDL-39 for Android) with a cheaper DIY solution.
OK, but I am surprised that people would depend on something like an iPad for AHRS information unless it is just for the gee-whiz factor.
 
Most of this is "packaging code", .

As are most things today, your apple or android device, the apps that run on them, even some of the largest business computer systems today - nothing wrong with object oriented code... just look at FlyQ... they reference the source of the ""packaging code" they used, most of it open sourced.
 
OK, but I am surprised that people would depend on something like an iPad for AHRS information unless it is just for the gee-whiz factor.

I think it depends on what you already have in your panel. If it's Wright Brothers' steam gauges (like a sizeable chunk of today's fleet), and by sticking your iPad on your yoke and a $100 gizmo on the glare shield you can instantly upgrade yourself to ADS-B with (some) traffic and weather, WAAS GPS, plus color moving map nav and SVT, I would think that goes a bit beyond the gee-whiz.
The AHRS sensor module itself now costs pennies, so that's not the issue, but you do need good software to properly analyze and present the data.
 
I think it depends on what you already have in your panel. If it's Wright Brothers' steam gauges (like a sizeable chunk of today's fleet), and by sticking your iPad on your yoke and a $100 gizmo on the glare shield you can instantly upgrade yourself to ADS-B with (some) traffic and weather, WAAS GPS, plus color moving map nav and SVT, I would think that goes a bit beyond the gee-whiz.
The AHRS sensor module itself now costs pennies, so that's not the issue, but you do need good software to properly analyze and present the data.
I'm probably the only person around here who sees no advantage in SVT over a vertical map depiction.

The panel I fly with is glass, but we have no ADS-B (no solution developed for the airplane yet), and no uplink weather (would be nice but since I've been flying without if for years I don't miss it). It has a moving map, but no detail other than waypoints, airports and VORs. Granted, it has TCAS for traffic and real radar.
 
I'm probably the only person around here who sees no advantage in SVT over a vertical map depiction.

You are not alone. :wink2:

SVT is probably useful in IMC or night but since I do neither, no need.

Cheers
 
I'm probably the only person around here who sees no advantage in SVT over a vertical map depiction.

The panel I fly with is glass, but we have no ADS-B (no solution developed for the airplane yet), and no uplink weather (would be nice but since I've been flying without if for years I don't miss it). It has a moving map, but no detail other than waypoints, airports and VORs. Granted, it has TCAS for traffic and real radar.

Well, focusing on the SVT, that would apply to commercial portable offerings as well, not just this DIY-focused thread.
And although I have never flown with SVT, I can certainly imagine how having that for improved "situational awareness" in IMC or marginal VMC can enhance safety. Of course ideally you'd want an official one in your panel, but assuming financial constraints, you want to maximize your safety per dollar spent.
 
Well, focusing on the SVT, that would apply to commercial portable offerings as well, not just this DIY-focused thread.

True... I wasn't imagining that someone was making a DIY AHRS. I was replying to the later posts about the coding problems in commercial offerings for iPad. The AHRS in our airplane is a 5, if not 6, figure item in itself, and there are two. Of course part of that figure is because they are certified and installed in a jet.
 
True... I wasn't imagining that someone was making a DIY AHRS. I was replying to the later posts about the coding problems in commercial offerings for iPad. The AHRS in our airplane is a 5, if not 6, figure item in itself, and there are two. Of course part of that figure is because they are certified and installed in a jet.

Well, independently of this thread, for my latest fun project, I've whipped up my own DIY AHRS (plus altitude) sensor hooked up to an app on my Android phone, for use as a poor man's backup instrument cluster. Still very much a WIP, but seemed to behave OK on the last test flight. :)

Screenshot_2016-01-06-13-20-58.png
 
Back
Top