Gemini 2 Firmware Programming Methods Selection

Please read this whole page before doing any firmware updating.

Firmware-Changes List to see the changes implemented after Dec 18, 2012 firmware's release.

I am very pleased to announce that we now have a Gemini2 firmware updated utility "GFU", (updated 8 Feb 2015) courtesy of Paul Kanevsky. You can find the instructions to use it is here for Windows. It has been tested on XP, Vista, Win7, Win8.1 and Win10. It also has been tested in a VMWare Fusion window on a MacBook Pro running Win7 64bit, and A Oracle VM Virtual box window with the latest beta copy of Windows 10 x64. You must have the Gemini-2 connected via Ethernet to use it. It will also require an internet connection to download the latest firmware from this site.
Thank You Paul.

There are 4 ways to update the firmware in the Gemini 2 controller. All methods require an Ethernet connection between your computer and the Gemini-2. This also includes removing the micro-SDcards and programming them directly. If for no other reason, it is required to tell the Web interface to flash the program into the ARM processor. But for the other FTP methods Ethernet is also required to transfer all the files. If you don't have an Ethernet connection see

By default, Gemini has an address of -- that address is used below in the examples.

All updated files are listed at the bottom of this page. Other web pages may have them listed also, but the links at the bottom of this page should be the most current.

The four methods are:

  1. Use the new Gemini Firmware Update (GFU) program for Windows, that can update everything, just the main unit, catalog files, or the new video files. This is now the recommended method. This routine updates the Gemini-2 almost twice as fast as most of the FTP methods.

  2. The FTP Methods are divided into two methods,according to which FTP method you use. The FTP methods are for advanced users, that understand how the firmware and directory structure of the micro SD Cards works, and how to use a computer.

    • Use an FTP method to update a single file for either the Main unit and Graphics Hand controller at the same time. You either use an FTP client such as Filezilla Client, or Windows File Explorer. (put ftp://admin@Gemini or ftp://admin@ if using Windows File Explorer.) Note if your IP address for the Gemini-2 is different then use that.

    • Use an FTP program (Recommended when more than one file is being updated, or rebuilding the main units micro SD card file structure.) Again this is only for Advanced user that understand the directory and file structure of the micro SD cards. Only firmware dated after 9 April 2011 has the FTP capability build in.

    • Here is a link explaining the use of the Windows File Explorer method.
    • Here is a link explaining the use of the FTP (Filezilla client) method.

  3. Use the Web interface. (Recommended when GEMHC.BIN or NEWGEM.BIN/GEMHC.BIN is the only files being updated.) You can only update one file at a time using this method. This method requires you to use the micro SD Card tab of the web interface. You use the "Upload a file to the SD card's current directory" If uploading the NewGem.bin file you do that to the root of the micro SD card. If uploading GemHC.bin (hand controller programing file) you first select the HCFirmware directory and then do the upload. If uploading a catalog file to the hand controller you also select the HCFirmware directory. If the uploaded file was NewGem.bin, then you will have to go into the web interface, Firmware/SRAM tab and flash this file into the ARM processor for it to do any update.

  4. Remove the micro SD cards, format, program them and reinstall them. If your Hand Controller firmware is before Jan 31,2011, and your main unit firmware is before April 9 2011 then you might have to use this method. After that the GFU program in Option 1. (recommended) or FTP method should work. It is the method you might have to use if your micro SD card gets corrupted. This is always the fall back method if something goes wrong, to try and recover either the main unit or the hand controller. see

    If you have to format the SD card it is best to download the official SD card format routine from the download section.


  1. The Hand Controller is updated using a file called GEMHC.BIN, and can be done from the main Gemini 2 unit using either the Web interface or the FTP method. Putting the GEMHC.BIN file in a subdirectory called HCFirmware will upload it to the hand controller from the main Gemini 2 unit. Please note that there are now 38 (as of August 2013) button files that also have to be uploaded to update the Hand controller. Please note that the Gemini MUST BE THROUGH THE BOOT MENU for this to work. Also any catalog (.GUC) file can be uploaded to the hand controller the same way.

  2. The Main Gemini unit ARM processor is updated using a file called NEWGEM.BIN. But there are many files in up to 30 sub-directories, that support it. Not all have to be present, but the EN directory is a must for the English language. The Gemini-2 creates some of these directories itself, such as LOGS, CONFIG, PEC, and MODELS.

  3. Both micro SD cards (the one in the Hand Controller, and the one in the Main Gemini 2) also contain many other files. These other files can be put on the Main Gemini 2 unit with an FTP program, or one at a time with the web interface, or by removing the card and putting the files on it with a card reader/writer, and the reinstalling the card. There are 2 ways to do this with the Hand Controller files, use a card reader/writer on the micro SD card in the Hand controller, or put the files in the HCFirmware directory of the main micro SD card directory. This is normally a one time thing, as most of the files on the Hand Controller micro SD card are the Star Catalogs and button files which seldom change if ever.

Below is the Directory and file structure of the Main Gemini-2 micro SD card.
Name Type Comment
AltAZ Directory These is for Alt AZ mounts and contains 4 subdirectories
Catalogs Directory Contains all the star catalogs in *.GUC format. Currently there are 20 catalogs.
CONFIG Directory If you tell the Gemini to store your configuration using the web interface (Store SRAM) then it will be stored in this directory.
DE Directory This is the German directory and contains 40 files.
DOC Directory This directory contains the Polar Align Assist Tutorial in PDF format.
EN Directory This is the English directory and contains 44 files.
ES Directory This is the Spanish directory and contains 39 files.
FR Directory This is the French directory and contains 40 files.
HC Directory This directory contains the hand controller on the web interface - 7 files.
HCFirmware Directory This directory is normally empty, and only contains files when they need to be uploaded to the hand controller.
MHC Directory Mobile Hand Controller (MHC) It can be very slow when trying to bring in some of the larger star catalog files. You really need a fast WiFi device to use this. It is designed to work with Android phones/tablets and iPhones and iPads.
Logs Directory This directory is created only by the Gemini-2 and normally only contains the Gemini.log, Pointing.Dat files. If you have created a model, then a model.log will be here also.
Manual Directory Please see above description about this directory.
Models Directory Comment
Models Directory If you tell the Gemini to store your model using the web interface it will be stored here.
PEC Directory Periodic Error Correction (PEC) - if you create a PEC file then it will be stored in this directory.
NewGem.bin File This file is the programming file for the Gemini-2 Main ARM processor.

Below is the Directory and file structure of the Hand Controller micro SD card.
Name Type Comment
Catalogs Directory All the star catalogs in *.GUC format. Currently there are 20 catalogs.
HCFirmware Directory All the button files and the gemlogo.bin are stroed.
GemHC.bin File This file that will be uploaded into the hand controller's ARM processor to reprogram the ARM. After it is programmed, the ARM processor will rename this file to current.bin, so it is not reprogrammed again.