Since everyone builds variations of the hardware according to skill level, budgets and other constraints, the firmware that runs the mount needs to be configured to work with all the different variations.
We will assume that you have downloaded the code from github as described on the Firmware page and are ready to configure your tracker.
The firmware configuration happens in a file called configuration_local.hpp
. Note that this file does not exist in the download or the repo, since it is different for everyone.
To get started, use the OAT Firmware Configurator to generate and download a Configuration_local.hpp
file.
Save this file within your firmware folder.
For basic configurations, that is all that is required and you are ready to upload/flash the firmware as described in the Firmware page.
The file is a C/C++ header file. This means:
//
sequence makes the rest of the line a comments/*
starts a comment that can span multiple lines and ends with a */
#define
VARIABLE VALUEconstants.hpp
. If you see a define that does not use a number, it is using a predefined value defined in constants.hpp
.You can edit or add some of the more advanced settings anywhere in your configuration_local.hpp
file.
For example, you may want to change any of the following things:
DEBUG_LEVEL
to various presets to get serial output with debugging statements). Not that you cannot connect OAT to any other software if you have debugging enabled. You'll have to use a serial monitor and issue commands yourself. An exception to this is the ESP32, since you can connect AP software (like OATControl or SkysafariPlus) via Wifi and debug via serial (USB) port.#define AZ_INVERT_DIR 1
or #define ALT_INVERT_DIR 1
#define DEC_LIMIT_UP 0.0f
and #define DEC_LIMIT_DOWN 0.0f
. Values are degrees, and must be postive. For example: -20 upper limit would be 110 degrees (90+20).For the rare case that you might have multiple boards, you can create multiple configuration files. These need to be named for the board that they are meant for. The software will include them based on the BOARD
that you have defined.
For example for a RAMPS board, you can create a file called configuration_local_RAMPS.hpp
at the same location as the other non-board specific configuration file configuration_local.hpp
.
Note that if both of these files are missing, the firmware will be setup based on the defaults set within Configuration.hpp and Configuration_adv.hpp.