Look4Sat Android satellite tracking and pass prediction
Satellite tracker and pass predictor for Android, inspired by Gpredict
At a glance
- What is it?
- Look4Sat is an open-source Android satellite tracker built with Kotlin and Jetpack Compose. It predicts passes, displays orbital information, accepts custom TLE files, and performs its calculations offline, but its catalog depends on Celestrak and SatNOGS data.
- Who is it for?
- Look4Sat fits Android users who need satellite positions, pass schedules, footprints, and ground tracks without a constant network connection. It is less suitable for users who require a documented desktop control workflow or an application-independent satellite catalog.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 12 days ago.
- What is it written in?
- Mainly Kotlin, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
Look4Sat's mobile pass-prediction use case
Look4Sat targets radio operators who need to know when a satellite will be reachable from a fixed station. The README describes searches by NORAD Catalog Number or satellite name across a catalog of more than 9,000 active satellites supplied through Celestrak and SatNOGS. That scope covers more than one named mission. The topics associated with the repository include amateur radio, AMSAT, SatNOGS, SpaceX, and Starlink, but the documentation does not promise dedicated handling for every mission in that list.
The central output is a pass prediction calculated relative to the observer's location. Look4Sat can list active and upcoming passes, predict positions and passes for as many as 10 days, and show progress during the current pass. It also presents the active trajectory and information about transceivers. This makes it useful before an operating session, while a satellite is overhead, and when deciding whether a scheduled contact is realistic from a particular station.
The application is for Android rather than a desktop radio-control workstation. It is inspired by Gpredict, but the README does not document radio rotation, attachment to an amateur radio transceiver, or automatic Doppler tuning. Its documented scope is observation and prediction. People who need those station-control features should not infer their availability from the repository's radio-related topics.
Reliable predictions depend on correct station coordinates. The README explicitly tells users to set the station position in Settings. A rough city-level location may be adequate for general awareness, but the documentation does not discuss antenna height, terrain obstruction, Doppler effects, or the accuracy required for antenna alignment. Those omissions matter when a pass is used for a real contact.
Offline orbital calculation and TLE refresh
Look4Sat is built around an offline-first data flow. Celestrak and SatNOGS provide satellite information, while the application calculates orbital positions and passes locally. That means the prediction interface does not need a continuous connection once the required data is present. It also means that Look4Sat is not merely a front end for a live web service.
TLE data still has an age. The README recommends a weekly update, which reflects the time-sensitive nature of orbital elements. The documentation does not specify the exact refresh screen, cache format, automatic download policy, or behavior when an update fails. It also does not state whether every source record carries the same timestamp. Users who depend on long-range predictions should therefore inspect the freshness of the TLE data rather than assuming that the offline label means the data is current.
Custom orbital data enters through Three Line Element `.txt` files. This gives users a path beyond the bundled or retrieved catalog, but the README does not describe accepted file size, encoding, duplicate handling, validation errors, or whether import overwrites records with matching identifiers. It is reasonable to treat import as a documented feature, not as a fully specified catalog synchronization system.
The repository layout indicates a Kotlin application organized into `app/`, `core/`, `feature/`, and `build-logic/`, with Gradle build files at the top level. The README specifically names Kotlin, Coroutines, Jetpack Compose, and Navigation as application technologies. It does not publish a detailed architectural diagram, so the exact boundaries between modules cannot be confirmed from the available documentation.
Maps, footprints, and in-pass context
A pass list alone does not provide enough context for planning a contact. Look4Sat supplements predictions with current and upcoming passes, progress for an active pass, and a polar trajectory. The map can show the satellite's position, footprint, and ground track. These views connect the numerical schedule to the question an operator is likely to ask: where is the satellite relative to the station, and when can the station see or communicate with it?
The footprint is particularly relevant when judging geographic coverage, while the ground track shows the path beneath the satellite over time. The documentation states that these elements are calculated relative to the configured station location. It does not specify map tiles, coordinate reference details, map-provider configuration, rotation behavior, or whether offline maps are included. Satellite calculations can work offline according to the README, but that statement should not be expanded into a claim that every map layer is cached for offline use.
Transceiver information is also shown during an active pass. However, the README does not identify supported radio models, communication transports, or control protocols. Repository topics include `hamlib` and `sdr`, but those topic labels are not sufficient evidence that Look4Sat can configure a connected radio or SDR. This distinction is important for adoption because satellite observation and hardware control are separate problems.
The interface can also display detailed positional data. That is useful for cross-checking a pass against planning material, but the README does not document supported coordinate formats, export tools, alarms, notifications, or integration with external schedulers. Those capabilities should not be assumed from the screenshots or from common features found in other satellite-tracking applications.
Installing Look4Sat and making a first pass search
The README does not provide source-build commands, Gradle invocation steps, Android Studio configuration, or a signed APK procedure. It directs users to Google Play and F-Droid instead. The application identifier shown in the Google Play URL is `com.rtbishop.look4sat`. A first installation should therefore be made through one of those documented distribution channels rather than through an invented `adb install` or package-manager command.
After installation, set the station position in the app's Settings. This is the first configuration step because the README says orbital positions and passes are calculated relative to the observer's location. Then search for a satellite by name or by its NORAD Catalog Number. The database is described as containing more than 9,000 active satellites, with information made available through Celestrak and SatNOGS.
Select a matching satellite and review its active and upcoming passes. For an initial sanity check, compare one listed pass with another known planning source at the same station coordinates and time. The documentation does not define an expected accuracy tolerance, so this comparison is more defensible than assuming every event time will match exactly.
For a current pass, Look4Sat can show its progress, polar trajectory, transceivers information, map position, footprint, and ground track. To use custom data, import a Three Line Element `.txt` file. Since the documentation does not describe the import screens or validation results, retain the original file and confirm that the intended satellite appears with the expected orbital details after import. No rollback or configuration-export procedure is documented.
Catalog freshness and prediction limitations
The principal limitation is the separation between offline computation and source-data freshness. Look4Sat can calculate without a connection, but its results depend on the orbital elements it holds. The recommended weekly TLE update is an explicit maintenance task. A user who installs the application once and never refreshes its data may continue calculating passes from aging elements.
The README also leaves important prediction assumptions unstated. It does not discuss atmospheric drag, non-ideal station coordinates, antenna constraints, terrain masks, radio blackout, Doppler correction, or mission-specific schedules. This does not mean the application ignores such factors, because the implementation is not documented in enough detail. It means those points cannot be verified from the available project documentation.
A footprint may also look more useful than the operational data warrants. The app can draw a footprint and ground track, yet the documentation does not say how the visualization accounts for local terrain or antenna direction. Users should treat the map as a planning aid unless the project documents a specific accuracy model.
Look4Sat is the wrong tool when the requirement is a documented Gpredict-style desktop workflow, automated transceiver control, or continuous hardware operation. It is also a poor fit for users who will not maintain the TLE data. A different workflow may fit better when radio control is the primary task and pass visualization is secondary. The repository mentions the independent Raspberry Pi port Look4Sat-rPi, but its capabilities should be checked separately rather than inferred.
Release cadence, source availability, and GPL-3.0
The repository is not archived. Its last push was on 2026-10-11. Recent releases include v4.4.9 on 2026-10-11, v4.4.8 on 2026-09-27, and v4.4.7 on 2026-09-13. That release history indicates recent project output, although users still need to review each release's change list when assessing upgrade work. The README does not provide a formal support policy, Android compatibility matrix, or migration guide for these versions.
The source is available under the GPL-3.0 license, and the README describes Look4Sat as open-source, ad-free software. Distribution through Google Play and F-Droid gives users two documented installation paths, but their version availability is not stated. A user should confirm which version each channel serves before comparing behavior or filing an issue.
The GPL-3.0 designation affects how modified versions are distributed, but this review does not provide legal advice. For an engineer planning a private modification or redistribution, the applicable obligations should be checked against the repository's `LICENSE` file and the intended distribution model. The presence of Kotlin, Gradle modules, and a top-level `gradlew` file also means local source work will involve the Android build toolchain, although exact prerequisites and commands are not documented in the README.
Editorial conclusion
Look4Sat fits Android users who need satellite positions, pass schedules, footprints, and ground tracks without a constant network connection. It is less suitable for users who require a documented desktop control workflow or an application-independent satellite catalog. Before adoption, verify that your station location produces believable passes, confirm how you will refresh weekly TLE data, and inspect the app version available through your chosen Android distribution channel.
Frequently asked questions
What is Look4Sat used for?
Look4Sat is an Android satellite tracker and pass predictor for radio operators. It searches more than 9,000 active satellites and calculates positions and passes relative to the configured station location.
Does Look4Sat work without an internet connection?
Yes. The README describes Look4Sat as offline-first and states that calculations are made offline. Its orbital data still needs periodic updating, and a weekly TLE refresh is recommended.
How far ahead can Look4Sat predict satellite passes?
The documented prediction range is up to 10 days. The app can show active and upcoming passes, progress during the current pass, the polar trajectory, and transceivers information.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/rt-bishop-look4sat)Was this useful?