m (→Sunrise, Moonrise, etc)
|Line 435:||Line 435:|
New user features:
Added a moon calendar, which shows the
phase of the moon for every day over
a 21 month period centered on the current
Flipped the orientation of the moon by
180 degrees on the "Sun and Moon Information"
page, for locations in the southern
hemisphere. It is oriented correctly on
the new moon calendar. It has always
been correct on the sky display.
== Contact Information ==
== Contact Information ==
Revision as of 09:53, 9 November 2008
Please note: Some websites have links directly to the .ipk files for this program. While it is very gratifying that other people like the program enough to include a link to the .ipk file, those links will not automatically update when a newer .ipk file is uploaded. So using one of those links might cause you to install an obsolete version of the program. If your version of the code doesn't match the description below, please download the most recent version from here: . The current version is 2.2, and the version is shown under the "opts" menu, at the top of the "About Orrery / Symbol Key" page.
The orrery is a simple open-source application for the Openmoko platform which displays the night (and day!) sky. It is nowhere near as elaborate as, for example Google Sky or xephem. It is intended to be a small application that will have a storage footprint comparable to a ringtone, or one of the games bundled with the openmoko rootfs. It requires no network connection, but does use the GPS information, by querying gpsd. It will be converted to work with Gypsy once the dbus based software stack becomes available.
The star database was extracted from the Hipparcos catalog. To ease the computational load, the coordinates are not precessed or nutated before being displayed. Orbital elements are used, rather than ephemerides, to calculate planet positions. Although this is less accurate, it dramatically reduces the memory footprint. The planet positions are accurate to a few arc minutes, from 3000 BC to 3000 AD. Since the scale on the default display is approximately 8 arc minutes per pixel, these small errors are imperceptible, unless a very large zoom factor is used.
Note, the screen grabs shown below were taken with the orrery running atop the 2007.2 stack, because I find it easier to do a screen grab with that stack. The program works with 2008.x too.
The image above shows the default display - all stars visible to the unaided eye, with colors for the brightest ones. It's displayed with a Transverse Mercator projection (similar to Norton's Star Atlas) which works well with the VGA aspect ratio in portrait mode. It's a conformal transformation, so the constellations have about the right shapes. The Sun, Moon and planets are plotted, and the Moon is shown with the proper phase. The Sun and Moon are plotted with a size about 3.5 times larger than their true angular size on the sky.
The blue line near the bottom of the display is the horizon. Nothing below that line is visible, but the program plots objects there anyway, because it is often useful to know which objects are just about to rise, and which ones have recently set.
The orrery as a compass
The green numbers at the bottom are the azimuth values. The azimuth is measured along the horizon, from north through east. So the azimuth of due north is 0, east is 90, south is 180 and west is 270 degrees. By using these azimuth values, the orrery can be used as a celestial compass, if the sky above you is at least partially clear. Notice that the azimuth values are not exactly evenly spaced. This is caused by the distortion introduced by the Transverse Mercator projection.
There are two display screens defined. By default, one of them shows the display shown above, and the other shows the constellations, and symbolic representations of the solar system objects.
The constellations are plotted in three colors. The twelve zodiac colors are plotted in hot pink. The constellations plotted in gold are the classical Greek constellations, as listed in Ptolomy's Almagest (apart from the zodiac constellations, which are also in the Almagest). The only constellation from the Almagest which is not plotted is Argo Navis, which is not one of the official modern constellations (Argo Navis was broken up into the modern constellations Carina, Puppis and Vela). The remaining constellations, plotted in blue, where added during the last few hundred years.
In addition to constellation names and figures, three great circles, the Celestial Equator (light yellow), Ecliptic (red) and Galactic Plane (blue-green), are shown. Solar system objects are shown symbolically (see Mercury, Venus, the Moon and the Sun in the above image).
The orrery has two control modes, "finger mode" and "stylus mode". By default the program is in finger mode. In finger mode, the image can be panned by tapping your finger in the bottom 1/5 of the display (excluding menus). The size of the panning step is controlled by how close your finger is to the edge of the display. If you tap in the center, it pans by 0 degrees, and nothing happens. If you tap near the left or right edges, it pans by the maximum allowed amount, +-45 degrees. Pan steps are quantized in increments of 5 degrees. You may exit fullscreen mode by tapping anywhere in the upper 1/5 of the display area. Tapping anywhere else toggles between the two screens.
If you are in stylus mode, the view can be panned around the sky by tapping the green arrows at the bottom, or the green azimuth values. In stylus mode, to exit from fullscreen you must tap in the area above the upper blue line, in the region where the time and location are displayed. Tapping anywhere else toggles between the two screens.
There is a check box in the opts menu which allows you to turn finger mode on and off.
One may enter fullscreen mode by tapping the FS button at the bottom left of the display.
When not in fullscreen mode, one button and four menus are displayed at the bottom of the screen.
Pushing the "FS" button pops you into fullscreen mode. To exit, tap the top 1/5th of the display (if you are in finger mode) or the region where the location and time is displayed (in stylus mode).
The opts menu allows you to toggle between finger and stylus mode. It also has a checkbox labeled "Save All Changes". If that box is checked, all changes you make within the menus are saved to flash memory when you click the "OK" button. If "Save All Changed" is not selected, you must click the "Save to Configuration File" to save changed configurations to flash - clicking "OK" makes the changes active for the current session, but does not save to flash.
The "White Flashlight" button paints the entire screen white, and the "Red Flashlight" button paints the entire screen red. Both may be used as a flashlight, but the red one is best if you are trying to preserve your night vision.
Sunrise, Moonrise, etc
The "Sun and Moon Information" button displays a page giving the sun and moon positions, rise and set times, phase etc for five days, centered on today:
The highlighted date is the current UT date (unless the time menu has been used to select a different time). The highlighted rise and set times are the next ones which will occur at your location. Of course, that may be on a different UT date (for example, during daylight hours, the next sunrise will be tomorrow). The times are shown as Universal Times (UT), which may annoy people, UT is used because the orrery allows you to select any location on the earth, and any time from 3000 BC until 3000 AD. It would be very difficult to keep track of all the timezone, daylight savings change dates, etc for that time range! So I have wimped out, and displayed UT, which is always reasonably well defined.
The current sun and moon positions shown are geocentric - no topocentric correction has been applied. However topocentric corrections are applied when rise and set times are calculated, so they should be reasonably accurate for a specific location on earth.
The moon illumination percentage shown on the line with the rising and setting times is the value at transit. The illumination shown on the line that has the drawing of the moon phase is the illumination percentage at this moment.
The moon calendar is a graphic display of the phase of the moon for each day from 10 months before the current month, until 10 months after the current month (roughly 640 days), as shown below:
Each column shows one month, and the day number is shown for each row. At the top and bottom of each column is shown the first letter of the name of the month shown in the column. Two vertical green lines separate years. The current Universal Time date is outlined in a red box.
To exit the Moon Calendar display, just tap the screen anywhere.
About Orrery / Symbol Key
This button displays an annotated list of all the symbols used on the orrery display.
The time menu allows you to specify an explicit time between 3000 BC and 3000 AD, or the current time. If "Now" is selected, the current time is used and the display updates automatically once per minute. If a specific time is selected, it is shown in red, to remind you that the display is not going to update automatically as time passes. The time may be specified as a calendar date, or as a Julian Date.
The Julian Date is a less ambiguous way of entering times in the distant past than using a calendar date, because of the differing calendar systems in use worldwide before the late 16th century. For example, the date October 10, 1582 never occurred in some European countries. Many countries have gaps in their calendars with missing dates when they adopted the Gregorian Calendar.
The place menu allows you to select the GPS-derived location, a user specified latitude and longitude, or a city or astronomical observatory selected from a menu. The lists of locations are stored in ASCII text files under the menus subdirectory of the program installation area on your phone. You may save your selected location, by hitting the "Save to Configuration File" button, so it will be used the next time you start the orrery. If you would like to add additional cities etc to one of the menus, you may simply edit one of the menu files, and add the name, latitude and longitude of the location. You will need to restart the orrery program for your new locations to become available.
If you select a "Custom" or "Menu" location, a button labeled "Save in Private Menu" will appear. After you select your new position, you may push that button to save it in the menu labeled "Private". That menu is initially empty.
The display menu allows you to configure the display, selecting such things as the faintest magnitude object displayed, whether constellation lines are plotted, whether or not star names are displayed, etc.
Deep Sky Objects
If you select "Deep Sky Obs" from the items menu, you will be shown some of the brightest Deep Sky Objects. Deep Sky Objects are objects such as galaxies, expelled envelopes of dying stars, clusters of young stars and lumious gas. A few, such as the Andromeda Galaxy, are visible to the unaided eye. Many more are visible with binoculars or a small telescope. The orrery shows all messier objects, and many other well known bright nebulae and star clusters. The image bellow shows the Messier objects in Sagittarius.
Adding Your Own Deep Sky Object List
You may add your own list of deep sky objects to be plotted. Simply create a file within the directory /usr/share/orrery/deepSky/ with any name. The file should contain lines of text with the format
name HH MM SS.SS DD MM SS.S type mag
where name is the object name, which may not include white space, HH MM SS.SS is the Right Ascension, DD MM SS.S is the declination (do not include a + sign for positive declinations) "type" is an integer specifying the type of object. 0 = Supernova Remnant, 1 = Globular Cluster, 2 = Open CLuster, 3 = Diffuse Nebula (HII region, etc), 4 = Planetary Nebula, and 5 = Galaxy. The "mag" is the visual magnitude. The orrery program currently does nothing with the visual magnitude, but future versions may use it.
Changing the Magnitude Limit
By default, the orrery displays every star a person with excellent eyesight located in a very dark area on a moonless night can see. If your observing conditions are less ideal than that, it can be helpful to use the "Mag. Limit" filed in the item menu to lower the limit of the faintest object plotted. The plot below shows the "Summer Triangle" region plotted with the default 6.6 limiting magnitude on the left, and a 5.0 limiting magnitude on the right.
If you tap "Save to Configuration FIle" your new magnitude limit will be the default the next time orrery is run.
There are four types of touchscreen gestures which you can make in the plotting area which are recognized by the orrery: Taps, Zooms, Pans and Presses.
If you press the display area, and withdraw your finger or stylus within 0.25 seconds, that gesture is considered a tap.
Tapping in the lower 1/5 of the display area will pan the display in azimuth. If you are in fullscreen mode, then tapping in the upper 1/5 of the display will take you out of fullscreen mode. Tapping anywhere else toggles between the default screen and the constellation screen.
If you press the screen and trace out a roundish figure, and remain in contact with the screen for more than 0.25 seconds, and if the figure encloses a nontrivial (> 300 pixels) area, the gesture is considered to be a zoom. As you move your finger or stylus, the region you are outlining will be shown as a green dotted line. After you release your finger from the display, a red box will be shown. The red box is a rectangle with the aspect ratio of the display area, and the same area and centroid as the region you traced out with your finger. The display will then be zoomed so that the region in the red box fills the display area:
The image above shows the display immediately after the zoom gesture has been made (left) and after the zoom has become active (right). One may zoom an image which has already been zoomed.
Zooming can do some non-intuitive things, especially if you zoom near the upper left or upper right of the display. This is because the orrery's transverse mercator projection always has a line of constant azimuth in the center. This means that something zoomed at the edge of the display area will be rotated as it is zoomed, and some of the stars you wish to display may be rotated out of the display area. It is best, especially if you are zooming in on an area near the zenith, to first pan the display so that the region is near the center of the display, before zooming. The nice thing about the transverse mercator projection is that a zoomed area is displayed with the orientation it would have if you were directly facing it at the time indicated by the display.
If your zoom area includes the zenith, the display any do weird things. This is a bug.
A pan is like a zoom, but with a more linear, rather than roundish gesture. A pan can be used to move the center of a zoomed region. It has no effect if the display area is not zoomed. After you release your finger or stylus following a zoom gesture, orrery will show the region you traced out in green, and will draw a red arrow showing the direction and size of the pan. After that, the display is re-drawn with the new center position.
The image above shows the display immediately after a pan gesture has been made (left) and following the re-drawing of the display area (right).
If you push down on the touchscreen for more than 0.25 seconds, and do not move your finger or stylus significantly while making contact, you will have made a press gesture. Since one almost always moves one's finger a little by while pressing the screen, some small motion is allowed during a press gesture. This means that a zoom or pan gesture cannot be arbitrarily small, because it will be interpreted as a press.
If the screen is zoomed, then the press gesture unzooms it. If the screen is already unzoomed, then the press gesture has the same effect as a tap gesture.
If you select "About Orrery / Symbol Key" from the "opts" menu, you will be shown an annotated list of the symbols used by the orrery, which is reproduced below:
The solar system symbols, used by default on the constellation page (screen two), are the standard astronomical symbols for these objects. They are explained here: 
The dotted yellow line is the Celestial Equator, the intersection of the Earth's equatorial plane with the celestial sphere. The red dotted line is the Ecliptic. The Ecliptic is the intersection of the Earth's orbital plane with the celestial sphere. The Ecliptic is also the path of the Sun across the sky, and the intersection points between the Celestial Equator and the Ecliptic are where the Sun is at the time of an equinox. Constellations lying along the Ecliptic plane are zodiac constellations. The planets and the Moon are always near, but usually not exactly on, the Ecliptic. The blue-green dotted line is the Galactic Plane, the intersection of the plane of the Milky Way's disk and the celestial sphere.
Displaying Stars Too Faint for the Unaided Eye to See
The default sky catalog used by the orrery contains every star you can see with your unaided eye. If you wish to display stars which require binoculars or a small telescope to be seen, you can download the file hipparcos_9.0.dat from the orrery area of the gForge site: . You must then load that file to your phone with the name /usr/share/orrery/hipparcos.dat (you will be overwriting the smaller catalog which comes with the package). If you prefer to put the file elsewhere (on your microSD, for example), you may make /usr/share/orrery/hipparcos.dat a soft link.
The default orrery star catalog contains 9931 stars. hipparcos_9.0.dat contains 83392 stars, and is complete to 9th magnitude. Note that the orrery will be more sluggish if you use this larger catalog. Most people definately won't want to use it. The plot below shows Lyra with limiting magnitudes of 6.6 (left) and 9.0 (right).
This program will run on either the neo1973 (gta01) or the FreeRunner (gta02). Users of the neo1973 may wish to move the files to the microSD card, to save space in the limited builtin flash memory (see below).
Supported Software Stacks
This program has been tested running atop the 2007.2 and 2008.8 distributions. It probably will work with FSO too. It is gtk based.
This program requires 630 kbytes of storage space in the phone's builtin flash storage or microSD card. By default, most of the files (everything except the .desktop file, the launch icon and the executable) are stored under /usr/share/orrery. This directory tree may be moved elsewhere, if the new location is specified with the -d switch on the orrery invocation line in the .desktop file. The .desktop file resides in /usr/share/applications .
Installing this Program
.ipk files for this program are now available for both the 2007.2 and 2008.8 stacks, at the gForge site. It is much easier to install than it used to be. The latest .ipk files can be found here: .
Zooming the zenith area doesn't work
If you make a zoom gesture that includes the zenith, or if you pan a zoomed region so that the zenith falls within it, the orrery goes nuts.
Restarting gpsd crashes orrery
If you restart gpsd while the orrery is running, the orrery will crash if it is configured to use the GPS position.
Send more bug reports!
Version 2.2: New user features: Added a moon calendar, which shows the phase of the moon for every day over a 21 month period centered on the current month.
Bug Fixes: Flipped the orientation of the moon by 180 degrees on the "Sun and Moon Information" page, for locations in the southern hemisphere. It is oriented correctly on the new moon calendar. It has always been correct on the sky display.
Please send comments, suggestions, questions and/or abuse to email@example.com
Orrery displays the objects in the night (or day) sky. It uses the GPS position, if available