{"id":13588409,"url":"https://github.com/flightaware/piaware","last_synced_at":"2026-01-27T01:32:27.536Z","repository":{"id":20127180,"uuid":"23397186","full_name":"flightaware/piaware","owner":"flightaware","description":"Client-side package and programs for forwarding ADS-B data to FlightAware","archived":false,"fork":false,"pushed_at":"2025-05-14T03:52:49.000Z","size":1109,"stargazers_count":521,"open_issues_count":26,"forks_count":73,"subscribers_count":90,"default_branch":"master","last_synced_at":"2025-05-14T04:59:19.685Z","etag":null,"topics":["piaware"],"latest_commit_sha":null,"homepage":"","language":"Tcl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flightaware.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-08-27T16:32:36.000Z","updated_at":"2025-05-01T20:03:14.000Z","dependencies_parsed_at":"2023-01-12T08:46:05.559Z","dependency_job_id":"dfed316e-644d-41ea-be73-270642efa861","html_url":"https://github.com/flightaware/piaware","commit_stats":null,"previous_names":[],"tags_count":59,"template":false,"template_full_name":null,"purl":"pkg:github/flightaware/piaware","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Fpiaware","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Fpiaware/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Fpiaware/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Fpiaware/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flightaware","download_url":"https://codeload.github.com/flightaware/piaware/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flightaware%2Fpiaware/sbom","scorecard":{"id":403244,"data":{"date":"2025-08-11","repo":{"name":"github.com/flightaware/piaware","commit":"fb4c1aac219b9c83b0a8785ac52376e57421feab"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Maintained","score":3,"reason":"3 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 3","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 1/16 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: BSD 2-Clause \"Simplified\" License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 16 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T20:34:40.977Z","repository_id":20127180,"created_at":"2025-08-18T20:34:40.977Z","updated_at":"2025-08-18T20:34:40.977Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28795468,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T01:07:07.743Z","status":"ssl_error","status_checked_at":"2026-01-27T01:07:06.974Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["piaware"],"created_at":"2024-08-01T15:06:41.814Z","updated_at":"2026-01-27T01:32:27.462Z","avatar_url":"https://github.com/flightaware.png","language":"Tcl","funding_links":[],"categories":["Tcl"],"sub_categories":[],"readme":"PiAware\n===\n\nThe basic aim of the piaware package is to forward data read from an ADS-B receiver to FlightAware.\n\nIt does this using a program, piaware, aided by some support programs.\n\n* piaware - establishes an encrypted session to FlightAware and forwards data\n* piaware-config - used to configure piaware like with a FlightAware username and password\n* piaware-status - used to check the status of piaware\n* faup1090 - run by piaware to connect to dump1090 or some other program producing beast-style ADS-B data and translate between its format and FlightAware's\n* fa-mlat-client - run by piaware to gather data for multilateration\n\nThis repo is the basis of the piaware Debian install package available\nfrom https://flightaware.com/adsb/piaware/\n\nBuilding from source\n---\n\nThis repository provides only part of the overall piaware package.\nYou must also build fa-mlat-client and faup1090 and put them in the right places.\n\nPlease use [piaware_builder](https://github.com/flightaware/piaware_builder) to build the\npiaware package; this is a mostly automated build that knows how to assemble and build\nthe different parts of the piaware pacakge. It is used to build the Raspbian piaware\nrelease packages that FlightAware provides. It should also work on other Debian-based systems.\n\npiaware program\n---\n\nThe piaware program establishes a compressed, encrypted TLS connection to FlightAware and authenticates\neither by MAC address, or by a registered FlightAware username (or email address) and password.\n\nIt then starts faup1090 to translate ADS-B data from a raw Beast-format feed on port 30005 to a filtered\nADS-B format. The filtered data is uploaded to FlightAware over the previously established TLS\nconnection.\n\nEvery five minutes piaware also sends a message containing basic health information about the local machine\nsuch as system clock, CPU temperature, CPU load, basic filesystem capacity and system uptime.\n\nPiaware will start the multilateration client fa-mlat-adept on request. fa-mlat-client extracts raw messages\nfrom port 30005 and selectively forwards them by UDP to the FlightAware servers. UDP is used as this\nmessage forwarding is time-sensitive, but it's not too important if some messages get dropped. Multilateration\ncontrol messages are sent over the main piaware TCP connection.\n\nPiaware uses several techniques to keep the connection established and disconnect and reconnect if something goes wrong.\n\n\npiaware-config program\n---\n\npiaware-config provides a way for you to configure piaware's settings to control authentication, updates, and\nmultilateration.\n\nThe configuration is read once when piaware starts. If you change piaware's configuration, you should then restart\npiaware by:\n\n```\n$ sudo service piaware restart\n```\n\nDisplaying the current configuration\n---\n\nRunning piaware-config with no arguments will show the current configuration:\n\n```\n$ piaware-config\n```\n\nThe \"-showall\" argument will show all settings, including those that are using the default values:\n\n```\n$ piaware-config -showall\n```\n\nConfiguring updates\n---\n\nTo configure whether piaware will accept requests for automatic (requested by FlightAware) or manual (requested\nby you via the FlightAware website control panel) updates and restarts:\n\n```\n# disable auto updates:\n$ sudo piaware-config allow-auto-updates no\n# disable manual updates:\n$ sudo piaware-config allow-manual-updates no\n```\n\nUpdates default to enabled for Piaware sdcard images, and disabled for package installs.\n\nConfiguring multilateration support\n---\n\nMultilateration data is sent to FlightAware by default. To disable it:\n\n```\n# disable multilateration:\n$ sudo piaware-config allow-mlat no\n```\n\nConfiguring multilateration results\n---\n\nBy default, multilateration positions resulting from the data that you feed to FlightAware\nare returned to you by sending them to the local dump1090 process on port 30104; dump1090\nwill then include them on the web map it generates.\n\nThere are two controls for this. There is an overall enable/disable\ncontrol that can be used to entirely disable returning results if they are not needed:\n\n```\n$ sudo piaware-config mlat-results no\n```\n\nIf you want to send the results elsewhere, you can modify where they are sent and the format used:\n\n```\n  # Connect to localhost:30104 and send multilateration results in Beast format.\n  # Listen on port 310003 and provide multilateration results in Basestation format to anyone who connects\n\n$ sudo piaware-config mlat-results-format \"beast,connect,localhost:30104 basestation,listen,31003\"\n```\n\nThe default configuration now connects to port 30104, not 30004. The default FlightAware dump1090 configuration has\nbeen updated to match this. This change is to avoid accidentally feeding mlat results to an older dump1090\nthat is not mlat-aware and might end up feeding the results to places you don't want to feed them to. If you really\ndo want to feed to port 30004, and you know that's not going to cause problems with mlat results going where they\nshouldn't, you can return to the older behaviour by:\n\n```\n$ sudo piaware-config mlat-results-format \"beast,connect,localhost:30004\"\n```\n\npiaware-status program\n---\n\npiaware-status will examine your system and try to figure out what's going on.  It will report on whether dump1090, faup1090 and piaware are running or not and it will identify what program, if any, is producing data on port 30005 and whether or not piaware is connected to FlightAware.\n\nlog file\n---\n\npiaware logs to the file **/var/log/piaware.log**.  This is rotated weekly; older logs are at **/var/log/piaware.log.0**, **/var/log/piaware.log.1**, etc.\n\nfa_adept_client package\n---\n\nThe fa_adept_client package provides a class library for being a FlightAware aviation data exchange protocol (ADEPT) client.\n\nfa_adept_config package\n---\n\nThe fa_adept_config package provides functions for reading and writing the piaware config file.\n\npiaware package\n---\n\nThe piaware package provides functions used by various of the piaware programs.\n\nsystemd service file\n---\n\npiaware is started as a systemd service (\"piaware.service\"). It can be started and stopped with:\n\n    sudo systemctl start piaware\n    sudo systemctl stop piaware\n    sudo systemctl restart piaware\n\nThe current state can be checked with:\n\n    systemctl status piaware\n\n\nFlightAware\n---\nFlightAware has released over a dozen applications  (under the free and liberal BSD license) into the open source community. FlightAware's repositories are available on GitHub for public use, discussion, bug reports, and contribution. Read more at https://flightaware.com/about/code/\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflightaware%2Fpiaware","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflightaware%2Fpiaware","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflightaware%2Fpiaware/lists"}