Solaris Alpha for Android Phones




Be ready for 2012 and beyond with Solaris Alpha, featuring realtime 3D views of Sun and Earth. This is a 3D solar astronomy application that displays the latest extreme ultraviolet solar flares and sunspots on our home star. Effortlessly move around the Sun with a touch of your finger! See something interesting? It's easy to zoom in with Solaris Alpha. But there's more - this app also features a realtime 3D view of Earth's aurora, cloud-cover, and sunlight. Watch northern and southern lights, storms, and sunshine move across our planet - all in the palm of your hand! The application uses data from NASA STEREO, SDO and NOAA polar orbiter spacecraft - downloaded from outer space to your Android phone. Solaris Alpha alerts you with a ringtone when new solar flares are detected, geomagnetic storm level increases, or when the aurora may be overhead at your GPS location. If you are interested in space weather, you need this app!


Developer: Tomasso (email)
Price: $1.99 USD - download from the Android Market

If you have downloaded Solaris and are experiencing problems, my apologies!  You can help me improve Solaris by sending mail to tclarkoreilly@gmail.com with the following information:

  • Phone manufacturer and model
  • Android version running on your phone
  • Concise description of the problem. For example, at what point does the application force-close - at startup, or after some other action? Do any specific error messages appear?
  • If you are a developer with access to the Android Developer Toolkit 'adb' tool, a stack trace would be very valuable indeed.
Thanks very much for providing this info, as it can be invaluable in tracking down and fixing bugs. 

And thanks very much for your patience. I am a long-time Java programmer, but new to Android and new to 3D graphics programming. 

Thanks,
Tom

Latest Solaris News

Older Solaris News


Versions

Version 2.66
  • Fixed startup crash; Solaris did not allocate enough memory for solar feature labels (plages and sunspots). Increased memory - but may need a more extensible solution.
  • Added "Help" button
Version 2.6
  • Links to north and south polar auroral movies
  • May be installed on SD card (Android 2.2+)
  • Data files not visible with other media apps
  • Fixes NullPointerExceptions in AuroraScene.buildBitmap()


Version 2.5
  • Fixed "stale" Gl10 handle that caused NullPointer crash at startup, on some phones
Version 2.4
  • Added Solaris version label to screen
Version 2.3
  • Fixed force-close on startup when location providers not enabled
  • Modified channel labels on Sun scene
Version 2.2
  • Fixed phone location bug
  • Added Solaris upgrade button to option menu

Version 2.1
  • Menu option to show/hide phone location on Earth globe
  • Added link to Solaris home page on "More info" menu option

Version 2.0
  • Ad-supported and ad-free versions available
  • Show/hide sunspot and solar plage labels. Solaris retrieves feature coordinates from the NOAA Space Weather Prediction Center's daily "Solar Region Summary" (http://www.swpc.noaa.gov/ftpdir/forecasts/SRS/README). At present, the SRS does not provide a lot of sunspot data; I'm looking for an alternate and maybe richer online source.
  • Application data (images, etc) are now stored on your phone's external SD card
  • "More info" menu button shows several website options
Version 1.10
  • Fixed problem on Android 1.6 with aurora data-loading, force-close (issue 6). Bug was caused by re-cycling invalid bitmap in method that builds composite map image.

Version 1.9
  • Fixed aurora basemap projection. Solaris periodically retrieves a sunlight-cloud map image from the excellent real-time World Sunlight Map. As noted at that website, the map does not include regions within 15 degrees of either pole. The previous version of Solaris did not take this limited coverage into account when projecting the map onto a sphere, resulting in distorted mapping (particularly at higher latitudes). This problem has been fixed in Solaris 1.9. However you will now notice an "artificial" circular cloud-free region centered on either pole; this is a bit annoying, but I think that an accurate map projection is more important than a perfectly pretty image. In the future I might come up with a way to interpolate clouds so that the circular polar artifacts are not so obvious.
  • Truncated the aurora power-flux scale bar, removing lower flux values that are not actually included in the NOAA-provided data
  • Earth and Sun spheres are now larger
  • Removed the red noon-time meridian arrows from the aurora map. These arrows are included in the rectangular-projection auroral maps provided by NOAA SWPC, but they are consistently at a fixed incorrect longitude. Since Solaris now displays sunlight on the Earth, I figured that we don't need those arrows anyway. I've added an algorithm to remove the arrows from the NOAA SWPC data - at least in many cases. Might have to revisit this issue in the future.

Version 1.8
  • Phone vibrates when aurora may be overhead at phone's location
  • Background SolarisService exits when main activity terminates (until I implement user preference for this)
  • Touch planetary Kp index label for two-day histogram plot of Kp
  • Auroral data updates every 30 minutes
  • Real-time sunlight and cloud aurora base map, updated every 30 minutes (sunlight map only for Android versions earlier than 2.0)
  • Zoom controls on web views

Version 1.7 - added geomagnetic storm alerts. Phone will vibrate and alert icon appears in status bar when planetary Kp index increases above level 4.

Version 1.6 - avoid bitmap rescaling - fixes blank sphere on Motorola-Droid and force-close on other phones. Now retrieves 1024x512 blue-marble and euvi bitmap resources from res/drawable-nodpi, per description at http://www.anddev.org/opengl_textures_-_motorola_droid-t10930.html

Version 1.5 - flush graphics buffer for better performance. Did not fix Motorola Droid issue (Issue #2)

Version 1.4 - back-port to version 1.2 in response to fc on MyTouch, but still fc's on MyTouch

Version 1.3 - fixed orientation-change memory leak

Version 1.2 - added aurora map, menu items to refresh data, link to more information

Sorry about the hiatus in documenting version changes...

Version 2.88:

- Attempt to fix occasional EGL_BAD_ALLOC error by calling glDeleteTextures() prior to generating new ones. Previously modified AuroraScene and (long ago) StereoSunScene in this way. But this time modified LabelMaker.initialize(), which invokes glGenTextures(). LabelMaker.initialize() was called each time new solar data was detected (for flare/feature labels), so it's possible this causes EGL_BAD_ALLOC after several data updates.

- Fixed ArrayIndexOutOfBounds caused by failure to allocate space for labels, which happens on some phones. When phone runs out of memory for labels, Solaris will avoid drawing the labels (this is admittedly a kludge) - so code has to carefully check whether label memory has run out before trying to draw them.

- Added possible fix to NullPointerException generated by AuroraWidget. Note that Solaris Widget is not yet an official feature, strictly experimental at this point.

Open Solaris issues


Closed Solaris issues

Issue 1 - Solaris 1.3+ force-closes on MyTouch running Android 1.6. Attempted back-rev to Solaris 1.2 does not fix problem, even though users report that "original" Solaris 1.2 worked well.

Issue 2 - Motorola Droid running Android 2.1 displays a blank sphere instead of aurora map. Solar UV sphere also shows as blank during first cycle-through of channels, but displays correctly on subsequent cycling. This problem is probably due to rescaling of blue marble bitmap by Droid, such that bitmap dimensions are no longer power-of-two. See discussion at http://www.anddev.org/opengl_textures_-_motorola_droid-t10930.html. Fixed in Solaris v1.6

Issue 6 - In Solaris 1.9, Auroral map data does not load on Android 1.6 phones, and may even force-close. Fixed in Solaris 1.10

Issue 7 - The cloud/daylight map projection is not quite right, with apparent latitude and longitude errors. Fixed in Solaris 2.1

Issue 8 - cloud-map data appears to be offset 10 degrees to the east. Fixed in Solaris 2.1

Issue 9 - Phone location is not properly retrieved by app. Reproduce this by rebooting the phone; before using any other location-based app (e.g. GPS app), note that Solaris places phone at lat/lon 0,0. Lame workaround is to use your phone's GPS app after a reboot, then run Solaris. Fixed in Solaris 2.2

Issue 10 - Solaris 2.2. causes force-closes after splash-screen if GPS location is not enabled on Android 1.6 phone, or if neither network location nor GPS location enabled on my N-1 Android 2.1 phone. Fixed in Solaris 2.3

Issue 4 - Red noon-time meridian arrow doesn't point toward noon-time meridian. The red arrow is actually included in the bitmap provided by NOAA; I have notified them of this problem. You can see the same problem in the NOAA SWPC Auroral Oval Google Earth file.

Issue 11: Starting in Solaris 2.3 - Solaris force-close on startup, on HTC Sprint Hero, and LG Ally, "every other time" on HTC Hero. Some (but not all) of these reports came in a few hours after I updated the Android Market to Solaris 2.3.

Issue 12: Samsung Moment running Android 2.1 getting a dagger shapped cutout flashing on and off in the Earth globe when "show phone location" is enabled.  
Issue 3 - Force-closes on Samsung Moment? Version 1.6 may fix this issue.

Issue 5 - Need options to configure notification actions (e.g. minimum storm level, vibrate/ring/pulse-led...)