This page will provide detailed information on the use of the program. In many cases it will do so by referring back to previous sections.
This program requires use of one of several Canon listed in Supported Camera List
We support any lens that is compatible with Canon. We also support direct connection to a telescope.
I strongly recommend that you power cycle the camera before connecting. If there is a connection problem exit the program and start again.
I recommend you put in an empty, high speed chip to collect your eclipse photos. The Canon software takes a considerable time to restart if there are pictures already on the chip. It may also delay the camera save times.
This program supports GPS dongles using the Ublox7 chip such as Stemedu VK172 USB GPS Dongle
Using the device is easy. Plug it in. One caveat mentioned in the other pages. It may take up to 15 minutes to be usable as a time source. Depending on how long since it was last plugged in it may also take a while to get position. The chip does not require this program to be running to get location. Once power is applied it just needs clear sky.
Support for a GPS is enabled in the Site->new item. If you plug the device in after you get past that point you will have to restart. Once in the program will do the rest.
The status display window can be in the background or closed. The GPS does not require it to run.
The two status displays are
Fix Quality is a gross indication of how good the fix is. The chip returns this, but I am not sure how useful it really is. The key is whether there is a 3D Fix
Satellites This give some indication of the sources of the fix. For this chip this can be a combination of GPS (US) and Glosnass (Russian).
The main window was previously described in the main page. This amplifies a bit on what was said there
The first thing that someone will notice about the menus is that they are not organized like a typical program. That is because the eclipse is not a "Document". In fact the task list is generated on the fly by the results of 3 different inputs
Instead of trying to stuff this program into the document model I break the three types of input out separately since, for example, there are operations relative to the camera that have nothing to do with the running task list.
Note also that when the program starts it will guide the user through the 3 categories so actually using the menus should not be common. If you do want to use the menus just cancel at some point. That, for example, is how you can start the camera before defining a site.
Here are the details of the menus
Site
New
This is used to create a new site. In this you select an eclipse from the combo box, enter a site name which will be used to describe this configuration, and enter the coordinates. You will only be allowed to proceed if this site is within the band of totality. When you press Save you will go to opening the camera.
If you intend to use a GPS then the GPS is only detected using this menu item.
Note the collection of special buttons at the top. These are the predefined sites I have included for learning.
This version will report the value of ΔT and the age of this value. If the age for an eclipse in the near future is more then 6 months you may have an old version of the app (or I have not been diligent of updating). You may have to manually create the Bessel as described elsewhere.
Open
When you rerun the program after creating a site you will be brought into the Open dialog. Here you select one of the sites you have previously defined. You can also delete an existing site.
As described in "New" the app will report if the ΔT for an eclipse in the near future is old.
Edit
This gives you the ability to change a site's location without defining a new site
Show GPS
If the GPS is active this shows the GPS Information Window. Note that the GPS does not require this window to be open to operate.
Camera
Open
Camera->Open is the way to attach a camera. The dialog is described in Quick Start and in Learn Using this dialog you either Select a Camera or Select using a Simulator
If you are using a camera note that it may take some time for the camera to start. A progress wheel shows that the program is not hung.
Note also that the program requires the user to manually set some items in the camera/lens.
The simulator will allow to use the program, run scripts, and take pictures. It will not allow you to do operations that require a live camera such as focusing.
Camera Preferences
The Camera Preferences Dialog is broken into sections. An overview and pictures where shown in Learn. This will present what ever detail was missing from previous descriptions
Mount
The mount setting is extremely important for proper operation. This was described in Learn
fStop
This will appear differently depending on whether you are using a lens or attached to a telescope. This is described in Learn
Solar Filter
This selects which configuration to use for the solar filter. This is described in Exposures
ISO Limits
Your mount settings also place rules on how this is used. For "Tripod" and "Tracking" these merely place limits on what exposures can be used. In "Monopod/Ship" the highest usable ISO is always used as the first choice for exposures. Note that ISO 100 may be required for the fastest exposures. This should not be changed unless there is a REALLY good reason. You can still edit what is actually used using the Exposures Dialog described below
Camera Delays
These display the current delays used during burst, between priority images (diamond ring, chromosphere, and prominence ), and for non-priority (the rest). These settings can only be changed in the Test Delay dialog since I don't know what will work for your camera.
Extras
This controls two optional, but useful features
This dialog is described in Learn. The window demonstrates which exposures are permitted to meet the exposure rules. It provides an example of one of my own pictures to demonstrate what a correct exposure looks like (or what a near miss looks like)
For many values the "correct" speed is not available in the camera. So this shows both the theoretical "best" and what the camera will support.
Live Camera Menus
Test Shot
This allows you to take a test shot with your camera. When it opens it defaults to your Solar Filter Exposure. Using is pretty straightforward - Just press "Take Picture". After a short time the picture will appear in the display window. You can shrink the picture to fit or display it at full resolution. Remember if you have a trackpad on 11.x you will have to scroll by dragging the image.
Pictures will have saved in your Documents Folder as described under Files
Focus
One of the key goals of this project was to improve the focus process. A detailed examples of using the Focus Function is presented in Learn
Start the process by pressing "Start". Keep in mind you are burning battery at a fairly good clip.
When fully zoomed out you can select a detail point by clicking it. The two rectangles show approximately where the zoomed views will be. By zooming in you can see more detail. Use the UP, DOWN,.. buttons to adjust where you are looking.
If you have a lens you can then directly adjust the focus with the side arrow buttons. If you have a telescope this is a good time to have a friend.
The Invert button converts the image to grayscale and inverts it. I find it makes it easier to see small spots as I demonstrated in Learn.
You may have to slow down the exposures to get a good image. The combo box allows you to do this.
Finally the Take Picture button brings you to the Test Shot dialog.
Note the spinner. This is controlling a piece of hardware that takes time to react. The spinner moves whenever a new image is received and will give you a clue regarding how fast the camera is reacting.
Time Sync
Depending on the camera model this will allow you to just display the camera time or to also set it to agree with RunTime. Note the time settable cameras also understand time zones. Since this program sets UTC it will not affect the time zone in the camera.
Depending on the camera model this will allow you to just display the camera time or to also set it to agree with RunTime.
Cameras (like the 60D) that do not understand time zones report whatever time is set in the camera.
Scenario
The Scenario Generator will convert the site circumstances (which are, in turn, derived from the eclipse and location) and the Camera Parameters along with some additional parameters defined in the Scenario Editor dialog to create a list of tasks that must be performed during the eclipse run.
As discussed in Learn there are actually two Scenarios editors; one for total eclipses and one for annular. The proper one is invoked based on the site information. I will be documenting these separately
Editor for Total Eclipses
In this case more phenomena are available to be recorded. Total Eclipses are complex beasts that offer fleeting glimpses of the sun disappearing(reappearing) at C2 (C3) {Diamond Rings and Baily's Beads}, prominences and chromosphere peaking out before the moon covers (exposes) them, the corona which varies by many f stops of brightness so it is impossible to capture in a single exposure, and finally an image of a new moon illuminated by the earth. Capturing each of these events requires careful timing with different exposures that must be captured precisely on time.
OK so it is hard... Let's talk about the choices available to tune the capture. Let me start with the observation that in most cases you should just accept what is presented on this page and not change anything. There are some circumstances such as a short eclipse where you do not have a choice.
C1 C4
A burst set will be taken to capture C1 and C4. This allows you to control the length of the burst and whether to perform it. I can present no good reason not to accept the default
Partial
This will control whether and how many partial exposures are taken. The partial exposures serve the purpose of keeping the camera from entering power save. Thus I strongly recommend not turning this off. Whether an exposure every 5% or one every 20% is better is left to the user.
Diamond Ring
This is a slower exposure to try to get the ring effect right before (after) the photosphere is hidden (exposed). This can be your most dramatic shot. A picture of mine from 1970 was one of my best ever and hung in my parent's house for nearly 30 years.
Baily's Beads
This is one I don't give you the option of turning off. I further strongly recommend again changing the duration.
Chromosphere and Prominences
These are two exposures that are rather close. In the past I captured these serially (Chromosphere first). I am providing the option of mixing the two. I can give arguments for and against. These are both occurring at the same time. On the other hand prominences are still visible after the Chromosphere is not. Mixed there is a chance of just taking more Prominence pictures at the wrong exposure. On the other hand the moon is chopping off the bottom of the Prominences. Personally I plan to use the Mix feature.
Corona
Now we come to the first area where real choices may be required. If this is Texas 24 and you brought your AP 1600 mount then you can capture whatever you want. But what about on a ship in 23 where the eclipse is short and your max exposure is limited by your mount moving. Then some decisions might have to be made. We talked in Camera Preferences of one solution. If you set the mount correctly you will be moved to faster ISO and faster exposures. But you may opt instead to take fewer Corona exposures with the hope of getting a second set of Corona exposures. Ah the possibilities...
Earthshine
I regard this as a bonus shot. Yes I include an earthshine image when I build a High Dynamic Range of the Corona. This is one you have have to sacrifice in 23 (unless you are on a tracking mount, use the Exposure Editor, and use Test Delay to reduce the corona delay)
Editor for Annular Eclipses
Annular Eclipses share the time up to almost C2. There is, of course, no Diamond Ring. The Prominences are not visible. Nor is the chromosphere or Corona. The only point of merit between C2 and C3 is max eclipse which itself becomes interesting
Max Eclipse
Unlike a total eclipse where Max Eclipse is largely just a point in time here most of you will want to capture the perfect ring. Thus we treat this as another time for bursts so you can capture the exact moment.
Fill
This allows you to fill the otherwise unused time between C2 and Max and Max and C3 with partial images. I thought these were useful in 2012.
Import/Export
The last two menu entries are for Import and Export. These are for the case where someone does not trust my choice of exposures. Export will save the eclipse into the Documents->CaptureEclipse->User Visible Scripts directory. It is XML formatted and should be pretty obvious of what the fields are for.
So a big caveat here is that I strongly recommend not doing this unless you really do not trust the image choices I made. These scripts are still relative to events so they should get the proper event times if you make a small shift in your location. They do not perform all of the error checking the Script Generator does when it works. So if you use this you accept the risk.
Time
The Time menu controls how Run Time is set. You will generally run in one of the Real Time modes. You will practice your task list in Practice. Emergency C2 is there is something goes wrong
Real Time Modes
The Real Time modes are described on the Time page
Practice
The three practice modes set the time to be before the C1, C2, and C3 events. This allows, for example, a complete run of the entire script. Alternative you can just practice totality. Finally you can practice the end of the eclipse.
You should not have a GPS installed unless you are in the eclipse track.
The program saves many hidden configuration files in its Library folder. These are not intended to be edited. There is really no reason to since each of these can be edited with tools provided.
But there is another class of files that are user editable and/or provide information that the user requested. The folder containing these files is in "Documents". The folder is marked with Application's icon to reinforce that it is special. Here is what is in the various folders
Bessel
As said elsewhere predictions are made using a technique devised in the 1800's by Bessel which was refined by Meeus in the 1980's. The current implementation is based on a port of that work by Espenak, et al. This provides a more complete explanation. Fred Espenak's site publishes the Bessel Elements for each particular eclipse. For example, this is the set for the eclipse that occurred on 12/14/20 in the table labeled "Polynomial Besselian Elements". Note that this program actually uses the elements within the JavaScript of the associated circumstances calculator which have slightly more precision.
When the program starts it will look for a file {}->Bessel->CustomBessel.xml. If present it will load it.
When a site is created via New Menu item the Bessel currently being used is written to {}->Bessel as "Default" + {eclipse name} + ".xml". You can examine the parameters being used (I suggest using an xml editor such as xml notepad).
Live Camera
When you Take a Picture with Test Shot this is where it appears
Log
Each time you press Run it creates a new log. Mostly this contains debugging information, but there is some stuff that might be useful
Simulation Images
Anytime you run with the simulator it creates a directory where it places simulated images corresponding to the event being captured. These are from my own collection of images
User Visible Scripts
I realized when I was writing the program that some advanced users may not agree with the exposures or timings I use. Instead of just saying "sorry" I provided an escape hatch for them to be more creative. However, this program is intended to be used as documented so users need to be aware of the caveats should they choose this path.
If I have not discouraged you yet then here is the information you will need to understand the generated script. The script if formatted in XML. I use the app XML Notepad. You can open the file with a simple text editor, but what you will see will not be pretty.
Like any XML it is a list of keywords and values. Here are the keyword definitions that are not obvious
Good Luck!
I recognize that those that committed to a different camera brand would have preferred a release in Feb 24 with that support. Would I consider a version for Aug 26? At the present time the answer is that it is not possible.
I reached out to Nikon to see if they offer a Software Development Kit like Canon does. They do, but it is poorly structured and one required component of the distributed SDK is x_86 only. Thus it is unusable for modern Mac development. Further, by agreeing to the IP restrictions of the Nikon SDK I have also precluded several avenues to overcome the limitations. I emailed Nikon marketing and received a response that "the release is not supported", but did not address any of the issues I raised.
At this point I am putting this problem aside. I may check later this year to see if Nikon is shipping an SDK that is a universal binary; however, I have no personal need for a Nikon product so I have little motivation to pursue this further. And with Version 2.0 I am adding additional code to better support certain Canon cameras.
email: captureeclipse@almadenobservatory.net
This started as a COVID sanity project to write something for myself. As it came together I realized it might be useful to others. I have put some work into areas that I do not intend to use myself (such as exporting scripts), but this remains largely a program I need.
The second issue is how much I would actually make if I did sell it vs the extra hassle that will cause. So Apple will take 30% off top. Income Taxes will take another 30-35% plus have secondary effects as income changes ripple into other areas. Finally it will increase the fees my account charges. So when all of that is done the result is pocket change.
Actually during development the program used High Speed mode for almost 9 months. Then the Canon software changed and I was not able to get it to work reliably again. I updated to a new SDK version in the testflight version 1.2. Part of the test plan was to see if any of the more advanced cameras could now do high speed mode. I received no feedback so in the 1.3 release I retained my 1.1 "take pictures faster" operation.
Since I felt the high speed mode was risky in the first place I am not disappointed it is gone.
The method of predicting the circumstances of an eclipse dates back to 1824 and the work of Friedrich Bessel. Bessel figured out that that you could apply a series of polynomials to describe the positions of the sun and moon for the relatively short period of an eclipse.
In the 1980's Jean Meeus presented these equations in a form that was usable by modern computers. The current implementation is based on work my several people including Fred Espenak. For a more complete explanation see the page on the EclipseTimesCalc app.
The source of the Bessel parameters is Fred Espenak's website. Note that Fred has not updated his predictions for some recent inconsistency in the Earth's rotation. Thus I compare my predictions against Xavier M. Jubier instead.
The secret sauce is the input to those equations; the Bessel Elements. My source are the Fred Espenak websites, but I anticipated that these might change. Just in case I was not able to update in time the Custom Elements feature allows the user to provide an updated set of elements and use those instead of the ones built into the program. The file Documents/CaptureEclipse/Bessel/CustomBessel.xml provides a sample. The Bessel fields are laid out in the file. It is just a matter of editing this file and then selecting it in Site->New.
Basically because I am confident the ones Espenak calls for meet up with my own experience.
I did provide selections for Solar Filters because that was a case where One Size did not Fit All. There seems to be some disagreement over my Thousand Oaks exposure. After I returned from Texas I shot another test shot and still feel my exposure is correct; however, I added an additional setting one f stop slower.
This app does not collect nor does it distribute any information about its operation.
If you have configured your Mac® under System Preferences->Security and Privacy->Analytics to share crash information with developers we will receive a report should your program ever crash. This is a Mac® feature that we have no control over.