Coder Social home page Coder Social logo

rt-bishop / look4sat Goto Github PK

View Code? Open in Web Editor NEW
540.0 33.0 48.0 21.47 MB

Open-source satellite tracker and pass predictor for Android, inspired by Gpredict

Home Page: https://play.google.com/store/apps/details?id=com.rtbishop.look4sat

License: GNU General Public License v3.0

Kotlin 100.00%
android gpredict sdr satcom space satellite ham-radio hamradio amsat radio

look4sat's Introduction

Look4Sat: Satellite tracker

Look4Sat CI

Get it on Google Play Get it on F-Droid

Radio satellite tracker and pass predictor for Android, inspired by Gpredict

Track satellite passes with ease!

Thanks to the huge database provided by Celestrak and SatNOGS you have access to more than 5000 active satellites orbiting Earth. You can search the entire DB by satellite name or by NORAD catnum.

Satellite positions and passes are calculated relative to your location. To get reliable info make sure to set the observation position using GPS or QTH Locator in the Settings menu.

The application is built using Kotlin, Coroutines, Architecture Components and Jetpack Navigation. It is now and always will be completely ad-free and open-source.

Huge thanks to DownloadAstro team for their interest to the app and the interview published.

Main features:

  • Predicting satellite positions and passes for up to a week
  • Showing the list of currently active and upcoming satellite passes
  • Showing the active pass progress, polar trajectory and transceivers info
  • Showing the satellite positional data, footprint and ground track on a map
  • Custom TLE data import is available via files with TXT or TLE extensions
  • Offline first: calculations are made offline. Weekly update of TLE data is recommended.

look4sat's People

Contributors

ajohns1288 avatar ba7lwn avatar chronvas avatar ckuethe avatar easyvector avatar mrchi avatar quamilek avatar rt-bishop avatar tekk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

look4sat's Issues

Suggestion for increasing screen readability

Here is how Map view looks at my phone. Text is to large and some data is overlapping. Map copyright info is far to large.

screenshot2

It would help to have option to set font size for text.

Also, shorter generally recognized captions for field names may be used, like Alt instead Altitude, Lon instead of Longitude, Lat instead Latitude, etc...

Option to hide less needed satellite info on top of the map could be helpful. Only satellite ID is really important for everyday use. Other info is nice to see but not necessary.

Arrow that shows direction of satellite travel would be useful.

FR: Calculation of current frequency based on Doppler shift

It would be nice to have current frequency calculated with regards to Doppler shift.
Another useful feature would be if you could "send" the Az, El, Frq etc... via CAT (serial) or UDP (via network) to an ESP8266/ESP32 based board. Simple text/binary values would be sufficient.
Thank you for an amazing project!

No GPS reading

When I start the app with location service enabled and try to set the location via GPS, the app toast-notifies me that location services are disabled.
How can I fix that?

ISS times are incorrect, out by about 5 minutes!! Location confirmed.

I have verified my location. And tracked ISS with SSTV transmissions 2 days in a row now. And tracker app is wrong, and ive compared it with other websites to confirm this. Its about 5 minutes too early.

Im located in NSW australia. As an example use coords -31, 152 i put them in app, and then compare with heavens above website, 5 minutes difference. The app is wrong, confirmed by actual radio tracking.

Report Az for respective MaxEl

It'd be very helpful to have access to the azimuth associated with the MaxEl reported for each pass. Another option would be to display the tabulated AZ EL data used to create the polar plot (like gpredict).

Update 2.5.0 Broke TLE updates

Updated to 2.5.0 via playstore and now tle list is empty, even after re-entering nasabare source. No dialog is shown when attempting to update and cannot confirm what is taking place. Clearing cache and data did not resolve.

True north [Feature Request]

It appears to use magnetic north for the N position, not true north.

This is currently 23deg different where I live..

I would suggest correcting for Declination so the NSEW grid is showing true.
Explicitly show the magnetic north point on the edge. (a red N on the edge of the circle at the declination) so it is clear that it is true.

I would suggest manual entry of declination as the first step. (and also since it works when online urls become broken)

Beyond that you can download or calculate declination:

//Online Declination references:
//http://www.geomag.bgs.ac.uk/data_service/models_compass/wmm_calc.html
//https://www.ngdc.noaa.gov/geomag/calculators/magcalc.shtml#declination
//https://www.ngdc.noaa.gov/geomag/calculators/help/declinationHelp.html
//sample url//"https://geomag.bgs.ac.uk/web_service/GMModels/wmm/2015v2/?latitude=-37&longitude=174&altitude=0&date=2019-07-02&format=json"

Here is a qml file that was downloading declination:
MagMap.zip

Feature: Start on passes screen

Currently when opening Look4sat, the first screen that shows is the Satellites screen where we select which satellites to track. I think it would be useful if the default screen was the Passes screen, because I believe after initial setup, we would use the app mainly to check passes, not select new satellites every time.

[Suggestion] Hide "null" downlink / uplink frequencies

Hi @rt-bishop I've been using Look4sat for NOAA, meteor, ISS and amateur satellite passes and it works great with a clean UI.

I do have a suggestion that in the polar view, we hide uplink / downlink frequencies that are "null" as they are usually not very helpful (for me at least) and take up space. I recognise that this might be useful if people wanted to confirm that there's no uplink / downlink, so maybe make a switch for it in the settings?

Before:
Before

What I'm thinking of:
After

Satellites currently overhead show up even in future passes

I don't know if this is expected behavior but when you look at future satellite passes of a satellite that is currently overhead, you see the current satellite location on both the current and future passes.

As an example, here is an SO-50 satellite pass showing both the current pass and the next one scheduled, and you can see the current satellite location on the next pass as well.

Active pass:
Screenshot_20200912-085831

Next pass showing current position:
Screenshot_20200912-085824

I'm not sure if it is intended to be this way, but it did look a bit odd the first couple of times I saw it until I put 2 and 2 together.

Request apk file

Could you also provide apk file. We dont all have google play accounts.

Thanks

Footprint incorrectly rendered when sat at high latitudes

In the map view, sometimes when a satellite is at a high latitude, its footprint is not shaded correctly. The area where the footprint should be is not shaded, while all other area above the minimum latitude of the footprint is shaded (kind of like "inverted" if you like). See screenshots.

Correct:
Screenshot_20201201-121339407.jpg

Incorrect:
Screenshot_20201201-121344491.jpg

TLE file import filter too restrictive?

Thanks for adding the ability to import custom TLEs in #5. I was just playing with that this morning and noticed a couple of things.

First, zip file import doesn't work from either the network or from local storage, eg. https://tle.info/data/TLE.ZIP. I know I can uncompress the TLE on my phone, but if I'm wishing for things I wish that zip archives containing a single file could be decompressed on the fly, and maybe cached on the sdcard?

Second, only *.txt files can be imported. If I had to guess, I'd say it's MainActivity.kt#L160 because android probably doesn't know that *.tle is a text file too. I'm no android programmer so I'm not sure how to add a hint that *.tle is a reasonable file type to open too.

v2.0 tabs seem oddly ordered

First, I just want to say I am loving the improvements in v2 of the app.

This seems like a minor usability improvement but the order of the tabs in the app seems inconsistent with what I picture most users would use most often. I assume most users look at the pass list most often, or the world map, but those are not the initial screen that comes up when the app is opened. The satellite list is, but I at least don't modify the satellites I'm tracking very often.

I'm imagining that that tab is first to encourage users (definitely including myself!) to update the TLE data more often? In my opinion the tabs would make more sense ordered like this (from most accessed to least) so the most used tab is open on app startup:

  • Passes
  • World Map
  • Satellites
  • Settings
  • Info

Sleep timeout after pass [feature request]

L4S keeps the screen on (good), but I find myself leaving it on (for hours), and flattening the battery. [I have a dedicated android for hams apps etc, so it gets left when done]

  • The polar pass view could revert to sleep once the pass has finished or a minute after it has finished
  • the list view could have a timeout (e.g 5 mins)

Constellation view

Thank you for making this excellent app. A great replacement for the proprietry SatOrbit. Can I please request a constellation or planet (or simple sun and moon) view? My device does not have a compass or similar sensor so would help to locate directions. I currently use Look4Sat together with Planisphere but would be good to have all of the information on one screen. As Planisphere is open source and on F-Droid then it might be simple to locate the necessary code.

satorbit

img_1

Out of interest, are you planning to implement any other features from SatOrbit (sorry if off-topic)?

Ability to group/filter selected satellites

I was wondering if it might be possible to group the selected satellites into different folders. For example, based on what equipment you have with you you might only be able to work FM satellites so you would want to temporarily filter out linear satellites, etc. in the upcoming pass view.

Use Maidenhead locator as source for location.

@rt-bishop, this is app looks really great.

One nice feature I guess would be to get the location from a known maidenhead locator. This would allow the app to run almost without any privileges.

Once a maidenhead lib is included, you can easily show the grid locator from the location if allowed by the user :)

clear satellite data

Great app, finally a decent satellite tracker on Android.

However, there's one thing that bothers me:

I've set the TLE data URL to one that only contains amateur radio satellites, but the list is still huge.

I'd love a way to clear the list and only show the satellites that are included in the current dataset. :)

Something like a button that says "Purge TLE data", so that when I change the URL I only get a list of satellites in the dataset I'm using.

What do you think? :)

Feature Request: Time span filter

It would be nice to have the option to filter out passes which don't happen in a certain time span. Look4Sat also shows nightly passes, but during the night I don't receive satellites because I'm asleep then.
In addition to that, it would be nice if Look4Sat showed the pass list after starting the app, like in the versions before 2.0.0.

Feature request: Directional arrow showing the direction of movement of the sat on radar

This would be a REALLY nice feature to implement... and likely not too hard. Apps such as Heavens Above show the direction of movement of a satellite on their radar screen. It is simply a little arrow on the projected satellite path. Can you please implement the same feature on Look4Sat. It saves us having to go to the map and trying to figure out what direction the sat is coming in. We can simply look at the radar and instantly know the direction it is moving by looking at an arrow. Thanks for the app.

Screenshot_20210505-064245

Satllite dot on radar view becomes two dots as pass goes on

This behavior seems to have appeared in the past one or two updates.

What starts out as a single satellite dot on the radar view slowly splits apart as the pass goes on to show two dots at different points on the arc, with one traveling slightly slower than the other, and one of the two dots appearing "above" the red arc while the other is "below" the arc.

If I back out to the list of passes and then come back in to the radar view, there is once again only one satellite dot on the arc.
Screenshot_20210409-080205

Feature request: Notification of pass start

A notification of some kind would be helpful, for example at the start of the pass of the satellite or some defined time before that. If enabled, care should be taken about the situation, when ALL satellites are checked!

Feature request: load custom TLE file

This would be useful for spotting satellites for which TLEs aren't available or good enough. Celestrak publishes supplemental TLEs for starlink which may be better than those from JSPOC.

I'd like to be able to load a file of TLEs from a url or sdcard and then from that list select the objects to predict.

Thanks!

Publish on F-Droid

Great piece of software! What do you think about publishing it on F-Droid additionally?

Sporadically the pass list shows no passes and an endless "refresh" indicator

I've had this happen a number of times, but can't figure out what circumstances cause it to happen.

When I go to the pass list, I see what looks like an empty pass list and a refresh indicator that seems to go forever. However, the countdown timer at the top is accurate, so this looks like a display bug.

Screenshot_20200708-155752

If I got at the pass list from a specific pass polar view, and I try to go back to it, I get this screen with what looks like default/unformatted strings.

Screenshot_20200708-155741

I haven't found a way to resolve this except by closing and reopening the app.

Request: select all sats

Could you please add "SELECT ALL" feature to select all satellites? Thank you. (BTW: Great software, thank you very much!)

Feature request: Edit satellites frequencies

It will be nice to have the possibility to edit the uplink/downlink frequencies and also the possibility to enable or not displaying those frequencies.
Sometimes we are only interested in one frequency

Pressing ▶ before satellite list loads clears satellite selection

Steps to reproduce:

  • Go to a tab other than Satellites.
  • Switch back to Satellites.
  • Before the spinning animation disappears, i.e. before the satellite list is displayed, press the ▶ button at the bottom of the page.

Results:

  • All previously selected satellites are deselected.
  • No boxes are ticked in the Satellites tab, the Passes tab says "No upcoming passes", and the World Map tab doesn't show any satellites.

My suggestion is to hide or disable the ▶ button until the satellite list has loaded.

Antenna tracking from app

Hello, thank you very much for great app. It will be very intersting to have antenna tracking functionality from the app.
The easy and most compatible way is control rotctld over the network. This is very easy to do. From linux commnad line
echo "\set_pos 135.0 30.0" | nc -w 1 IP 4533
Is it possible to implement this feature to the app ??

Thank you.

Frequency info feature suggestions

I am novice user of this app so forgive me if i did not understand all the options yet. Here are my observations:

Frequencies list for satellites seems to be available only on satellite details screen which is accessible only from Passes screen.

From user point of view, it would be useful to access satellite and especially frequencies info regardless Passes. Thing is Passes list shows each pass so it my be lengthy list requiring scrolling to find right satellite. And it is a bit counterintuitive.

Satellite detailed info could be accessible from map to, for example, by clicking on satellite icon shown on map.

The other issue is that on satellite details screen, font size for frequencies list is too big. I do not know if it is some global setting on my phone or else, but it is not nearly as nice as in screenshots on your site. I have fairly big screen but only one frequency mode can be seen. Option to set font size for this may help.

Satellite pass graphical compass is on the other hand unnecessarily big. It can serve purpose if twice, maybe three times smaller, leaving space for textual info which has to be read.

There is option to filter satellites by radio mode, which is excellent stuff. TI would be helpful that user can set mods he can actually use and use that to filter out data about satellite - like radio frequency list. It makes sense to hide some radio frequency info if user has no means to use it. It would increase readability of useful stuff on the list.

screenshot1

Satellite selection is lost after TLE update

If I have selected satellites in the main view and I update the TLE date, the satellite list is gone, because the selection is cleared. Selection should be stored in memory to recover it after TLE update.

Improve sunlight readabilitysatellite/polar view [feature request]

I notice that readability is difficult in direct sun. Unfortunately the use case is often laying the phone horizontal which is just the worst for sky reflection.

a) Make the track arc a much thicker line, there is no need for it to be fine
b) make the track line white (best brightness) or a brighter color
c) same for the satellite dot.

For (b) I'm not sure what is best as it is a matter of contrast and the front surface reflection is white-blue. In a quick test magenta seemed brighter than red, and more contrasty that cyan.

There is a lot of grey text, and full white would be better.
Of course at night perhaps not, so perhaps a global definition of "white" or a global font brightness is needed.

(I find the current UI/product design fashion for grey text on grey backgrounds pretty unreadable)

Map view wraps around vertically when zoomed out

If I zoom out in the map view, copies of the world map are displayed below and above the normal one, like they are tiling to fill the empty space above the North pole and below the South pole. This might be intended in Openstreetmap but it does look counterintuitive (for me at least).

Screenshot_20201216-230825~2.png

Descriptive names of satellites (feature request)

I noticed that the descriptive names of the satellites changed with one of the recent updates.

After digging into the code a little, it seems to be related to the addition of the Amsat TLE file to the update from the web feature.

For example;

Celestrak has the string: SAUDISAT 1C (SO-50) for ID 27607

Amsat has the more terse string: SO-50 for ID 27607

In the recent release, the later string is what survives, making it a bit more tricky to find a given satellite if you are not familiar with all the different descriptive names that are floating around.

It should not be hard to do a "smart merge" of the two files. In this case, picking the string with more characters in it seems to be straight forward way to make the right choice.

Hopefully I am not coming across as being overly critical, but it does destroy the otherwise great user experience to some degree. For others who are bothered by this, a quick work around is to just remove the Amsat TLE from the update from web menu (as it's names seem to almost always be more terse).

Otherwise, great program. It's like having gpredict in your pocket or brief case. The upcoming pass display is very well thought out and communicates the most important information quickly and accurately.

73, John

Countdown-time on satellite/polar view [feature request]

I suggest having the countdown timer on the satellite polar view until it reaches 0.
Since I am awaiting a particular pass, I would rather just leave it displaying that pass, and see the countdown there.

Watching the countdown on the pass-list screen is a bit of a trap as the timer immediately jumps from 0 to the next satellite pass, making it easy to miss the pass start.

Also nice to know which edge it will rise on and or the AOS/LOS info.

BTW, I am adding a number of FRs as I think of them, feel free to ignore them!

Custom TLE Import deletes TLEs downloaded online

Thanks for this amazing application, it is great for tracking satellites but there is one thing which seems to be strange:

When importing a custom TLE file from my device, the configured satellites and the TLEs download from the internet are lost.
It seems that importing a custom TLE deletes all other TLEs which is unfortunate if you want to have both at the same time.
I think this wasn't an issue in earlier versions.
Is that a bug or a feature?

Thanks for your work on this great app.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.