Welcome to

EclipseDroid Tutorial,
Wolfgang Strickling's Android Eclipse Page


EclipseDroid
is an astronomic app, computing local circumstances for solar eclipses
like the contact times, percentual coverage of the sun etc.
EclipseDroid will control cameras, take photos, launch other paps or
give optical or acoustic announcements depending on the times of your
actual position. As these
times and values depend on your location, the app can get them from
your phone with GPS or network localization.
New: Now version 4 with a map
screen, new optional smart layout, new location selector with location
database and the option to download a huge database of eclipses from
3000 BC to 3000 AD. Thanks to Deirdre O'Byrne for her database!
Since 3 EclipseDroid has already an USB support
for many Nikon- and Canon cameras.
Most interesting are the so called contact times, i. e. the
beginning (1st contact, C1) and the end of the eclipse (4th contact,
C4), and the start (second contact, C2) and end (3rd contact, C3) of a
total or annular eclipse. For partial eclipses, C2 and C3 are not
defined, you only obtain C1 and C4 and the maximum of eclipse.
The eclipse algorithms came from Deirdre
O'Byrne's Java Script Eclipse Calculator, thanks to Deirdre!
BTW: Deirdre's Java Script eclipse calculator will work also on
your phone offline! Download
source code here
Languages: English, German and Italian. Thanks to Alessandro Veronesi
for his Italian translation!
If you like to translate EclipseDroid into other languages, please send
an email to me ( dr.strickling <at> gmx.de ), it is quite easy!
The Main Screen
On the main screen (see image left) you see the date of the eclipse,
whether it is partial, total or annular. Below this, the actual
location (may be GPS or network based, can also choose a custom defined
location) is shown. To choose another location, click the Menu button
and select "Location". You may select GPS localization, let Google
search a place by its address or enter coordinates manually.
If chosen GPS or network localization, EclipseDroid updates
your location every 50 meters or 10 seconds and calculates new times if
necessary.
Below your coordinates in the second field there are shown the
four contact times and the time of mid of eclipse. You see the absolute
times and a countdown. Recent events are displayed in gray, future
events in green, except those ones in the next five minutes. They are
shown in red colour.
In the third field, the next event and its countdown is displayed in
a large line. Below this, the current time, the selected timezone and
the actual coverage (eclipse magnitude) of the sun. The eclipse
magnitude is the amount of the covered solar diameter by the moon.
The main screen updates the countdown timers every second.
Parallel to text output EclipseDroid can speak predefined
announcements, you can select or reselect them in the "Settings" menu.
Below are shown a number of user defined event and action times,
like photos or text announcements. These events need a configuration
file, the "Actions File", see documentation below.
In case of cloudiness, you can check "clouds" to prevent taking photos.
If there occurs a sudden opening in the cloud cover, press "Load
emergency list". Photos in emergency mode are taken, regardless
"clouds" are checked or not. After executing the emergency list, the
regular list is loaded again. The emergency button is only visible, if
such a list is stored on your SD card.
It is highly recommended to test extensive observation programs
carefully! Please do not expect perfect running like a clockwork if you
start your tests one week before the eclipse!
A click on
"simulation" starts an eclipse simulation for training and testing
purposes. By default, the simulation starts 65 seconds before C2. You
can change this value in the settings menu. You can also start a
simulation at a free selectable date and time via the settings menu,
selecting "Date Simulation".
Photo events, location coordinates or brightness sensor values can
be logged in the log file "sdcard/EclipseDroidLog.txt". Check the
appropriate options in the settings screen. Remember that the
brightness sensor only gives very rough data.
There is also an augmented reality view available. By clicking on "sky"
in the home screen you get a life camera picture withthe positions of
first and last contact and mid of eclipse in yellow, the rising and
setting points. the ecliptic in blue, a compass scale and the positions
of the bright planets. The menu button offers some fine adjustment
options for the AR screen.
The button "local circumstances" at the bottom of the screen
starts
the local circumstances form.
This screen displays all
local parameters of the eclipse, starting again with the location,
showing some more details like the assumed value of deltaT and the
altitude above sea level.
The following lines present the contact times, the altitude and azimuth
angle of the event. Azimuth 0° is north, 90° is east, 180° south etc..
The position angle to celestial north is given also, as well as the
position angle to local zenith, given in an o'clock value. 12
o'clock is upward direction zenith, 3 o'clock right. If C1 has an
o'clock position of 3, this means, that the moon will start the eclipse
by touching the solar limb exactly from the right side.
Below are several other parameters, like rise and set times and general
parameters of the eclipse, like duration, angle of shadow bands (only for total eclipses), the
maximal eclipse magnitude, the umbral depth (100% is in th mid of path
of totality)
At the bottom of the page you see a table at which time a certain
magnitude (coverage of solar diameter) occurs, possibly
interesting for photographers. This feature can be deselected via the
settings menu in the main screen.
Clicking your phone's menu button enables to copy the text to the
clipboard, eg. for saving or sending by email. You can also select to
show a NASA map of the eclipse in your web browser.
Other menu options are only available in the main screen.
You can select by pressing the menu button:
- another eclipse
- the location setup
- adjust the system clock
- simulate the eclipse
- change the program settings
- edit the actions file
- showing a global NASA-Map of the eclipse in your web browser
- displaying an info text with program version
- control the volume of speech output
- selecting the language
- visiting this web page
- Adding the eclipse to your Android calendar (only in menu of the
main form). Respect, that all times are given in the timezone you
selected in EclipseDroid, while the times in your calendar depend on
the timezone of the android device!
A very important feature is
the system clock adjust screen.
However,
this app can not change the system clock itself, as android protects
system settings against change by apps.
EclipseDroid stores and applies internally the offset as a correction
parameter.
In this screen you can select the offset (i. e. the error) of the
system clock and the time zone.
If GPS is active, you can also force a synchronization with GPS time.
However, my desire has an average delay of about 1 second. The entered
value of GPS delay is added to the displayed GPS time. If you have a
mobile network connection, i recommend setting "Automatic" date and
time in your phone's "Date & time" menu. It seems to be quite
precise.
If you do not have a network connection, you can force a continuous
synchronization of EclipseDroid's time to GPS time. For unstable GPS
connections, deselect it and load a measured GPS offset into the offset
input field.
Selection location, date for simulation and selecting an eclipse
There are special screens from teh menu, where you can select the
location, the date for simulation and select an eclipse.
With the map screen you will see the global progress of the eclipse. By
clicking you can take any position from the map as new position for
calculation.
Setting up the actions file
A central item of EclipseDroid is the ability to use scripts, launching
user defined actions depending on the actual contact times of your
location.
To show user defined events, announcements or to take snapshots
automatically you must select the "actions file" in the settings menu.
This is a kind of CSV file with data rows and semicolon separated
columns. Once you have selected the file, you can edit it either using
your favorite Android text editor or using EclipseDroid's simple text
editor in the menu. The file will look similar like this:
#Contact;Time;Action;Parameter/for TAKEPIC: Comment;Camera;speed;fStop;ISO;+-correction;Image format
REM DEBUG
C2;-20;Play;/sdcard/20sekunden.mp3
C3;-20;Play;/sdcard/20sekunden.mp3
c2;-55;Flash;300
c2;-45;Photo;45 mins before C2;picture-size=640x480;jpeg-quality=50
c2;-35;Show;Shadow Bands!
c2;-20;Show;Covers off!
c2;-10;Photo;Before Totality
c2;-3;TAKEPIC;Bailys Beads;EOS450D;1/1000;16;200;-1;MF
c2;-2;TAKEPIC;Bailys Beads;EOS450D;;;;;
c2;-1;TAKEPIC;Bailys Beads;EOS450D;0.01;8;400;-1;SN
c2;0;takepic;Bailys Beads;EOS450D;1/200;;200;;RAW
c0;0;Photo;Totality
c3;+35;Show;Shadow Bands!
C3;+20;Show;Covers on!
C3;+120;Show;Game over, serve Champaign
A;12:00:00;show;Noon @UTC, let's have lunch
A;19:35:20;SHOW;Sunrise 5:35:20
A;19:37:58;SHOW;P1 5:37:58
A;20:35:08;SHOW;U1 6:35:08
A;23:48:24;SHOW;U4 9:48:24
A;24:45:34;SHOW;P4 10:45:34
mid;0;Show;Mid of eclipse
REM this is a remark
# This is also a remark
// This is also a remark
If there is an emergency list present, it may look like this:
#Contact
(E=Emergency);Time[s];Action;Comment;Camera;speed;fStop;ISO;+-correction;Image
format
REM DEBUG
E;0;takepic;T1;EOS450D;0.01;;100;;mf
E;2;takepic;T2;EOS450D;1/500;;200;;r
E;3;takepic;T3;EOS450D;0.02;;400;;s
Do not finish the emergency file with a long time exposure, as the
regular list will be loaded after execution!
Each line consists of a minimum of four rows, separated by a semicolon.
The meaning of those entries are:
- First row: The contact.
Can be C1, C2, C3, C4 or Mid or MAX (=C0), relative to the calculated
eclipse events.
There is also the possibility to select absolute times, indicated by
the letter "A". A-times are UTC, not local time!!
For the emergency list choose the letter "E" like Emergency. Then times
are counted from the moment when loading the list
- Second row: The time. For
relative events (C0-C4) it is the time in seconds before (-) or after
(+) the contact, absolute timings are given in HH:MM:SS format in
UTC.
Do not enter local times!
- Third row: The action.
Actions can be:
SHOW
(displaying a text on the main screen),
PLAY playing an audio file, or
PHOTO,
taking a snapshot with the internal camera. Photos are generally
made with the maximum resolution and the best JPEGquality (jpeg-quality=100) by default.
TAKEPIC,
taking a snapshot with an USB camera.
FLASH, to
release the camera flash, e. g. for launching external cameras like a
DSLR. The following number is the flash duration in ms, try something
in the range from 100 to 300 ms. My EOS 450D accepts 100 ms.
LAUNCH,
launching an external app.
It searches first for the application label (case sensitive), then
makes case insensitive search, if not found yet it searches for class
name (substring, case insensitive).
Sitll experimental: The USBCOMM Command.
Acceps at present LifeViewOff
and LifeViewOn,
for some CANON caameras. It swithes to LifeView mode, though does not
display an image. But this works like the mirror lockup avoiding camera
shake by the mirror.
- fourth row: The parameter.
For SHOW it is the message to be displayed on the screen,
otherwise the file to be played or to be launched.
For internal photos you can select a file for storage. If nothing
selected, the file name will be "EclipseDroid". The date and time will
be added in every case. Chose the desired photo directory in the
settings menu of the main screen!
- For photos with internal cam you can enter a list of
additional camera parameters. These settings are a bit tricky, so
make extensive tests! Wrong parameters have no effect or can even crash
the whole app!
The commands are loaded one by one with the Camera.Parameters.Set
method into the camera. Read the android
documentation for further details. A sample file of camera settings
on my Desire can be downloaded
here (from my HTC Desire®). If coordinate acquisition is active
(network or GPS), the photos will be geotagged.
- For USB Cameras with command TAKEPIC
there are more parameters recommended.
The first parameter is a comment;
second parameter the camera model as displayed on connect (at
present it may be left empty, for future planned multi camera support
required);
third parameter: shutter speed in seconds. Examples: 2, 0.01,
1/100; Use standard values and avoid interim values 1.3 or similar!
fourth parameter: fStop, like 8.0, 5.6; Usage of standard
values is recommended, avoid interim values like 7.1 or similar
fifth parameter: ISO speed, valid parameters: "a" for
automatic, 100; 200 etc. Avoid non standard values like ISO 160 or
similar!
sixth parameter: +- exposure correction;
seventh parameter: Image format. Valid values: "S", "M", "L",
"R", "RAW", "R+L", "SF", "SmallFine", "SNormal", "Medium Fine", "MF"
If no parameter change is desired, leave one or more fields empty.
Keep in mind, that your camera has to be in the correct mode. For
instance, shutter speed selection is usually not possible in full
automatic mode, in full manual mode +- exposure correction will have no
effect!
The should be stored on your sd card. Default file names are:
"/sdcard/EclipseDroid.csv" and "sdcard/EclipseDroidEmergency.csv".
The directive "REM DEBUG"
forces EclipseDroid to create a text file with the calculated times of
your script for script debugging. It is in the same folder like your
actions file, is file name ends with "_Debug.txt".
It is highly recommended to test extensive observation programs
carefully! Please do not expect perfect running like a clockwork if you
start your tests one week before the eclipse!
For testing the flash mode or camera parameters, you can also try my
free apps 'Camera Timer' and
'USB Camera
Test'.
Download

Download
from my website: EclipseDroid.apk (ca. 580
kB), from the Android
market or from AndAppStore.
System requirements: Android 2.0 or higher, for using USB support
Android 3.1 or higher, a device supporting USB host mode and an adapter
cable.
Download source code of eclipse
routines here, an example actions file
and the camera settings on the
Desire as an example for camera settings
Download here the old
Version 2 without USB support.
Download small test app for checking USB capabilities of your device: USBCamera.apk
This program is currently also available in the
Android market.
For manual download you need an Apk_Installer
(see QR-Code in the right) or the Astro File Explorer. On your
phone you have to allow installation of applications from non-Market
sources. Activate in your phone's menu in "Settings", "Applications"
the check box "unknown sources", otherwise you will not be able to
install my applications!
Required Permissions:
- Hardware controls: Camera.
Required for AR. May cause compatibility refusal for devices without
front camera. Try installation from my website!
- Exact location: For
site-specific calculations of the contact times.
- Internet Access: Online
selection and network based localization of an observation site.
- SD card access: Storing
settings, event lists, logs and locations coordinates for offline
search.
- Personal data: Write
Calendar: To save an eclipse in the personal calendar.
- Personal data: Read
Calendar: To select calendar for eclipse entries.
Weblinks:
- My other android apps
- USB
Camera Test, a small testing app for checking USB capabilities,
with source code!
- For lunar eclipses i made an ICAL-calendar file from the
lunar eclipses 2011-2100 for import into office Apps or the
Google-Calendar:
les.ics (English) or mofis.ics
(German)
Software for other computers are developed by:
last Update 2012-10-04
The original URL of this page is http://www.strickling.net/eclipsedroid.htm