# configurations_base.py
# FROZEN BASE FILE - DO NOT PLACE ON FLASH
# This file contains default values and the validation schema (_SCHEMA).
# The validator imports this file to obtain _SCHEMA and verify it is frozen.
# Flash copy: /flash/configurations.py

BOARD_INFORMATION = "FIDO Rev B"

SAMPLEPUMP = 5
INTAKEVALVE = 0
NITROAIRVALVE = 1
PRESERVATIVEVALVE = 2

EXHAUSTVALVE = 8
VACUUMVALVE = 9
WASTEVALVE = 10
DECONVALVE = 11
SUCTIONVALVE = 12
SUCTIONBREAKVALVE = 13
VACUUMCLEARVALVE = 14
VACUUMPUMPVALVE = 15

MIN_PRESSUREPOT_PRESSURE_PSI = 5.0

CLAMP_MIN_PRELOAD_LBS = 10

GOODVACUUM = 2000
CHECKSEAL_PUMP_TIME = 10
CHECKSEAL_POST_PUMP_SETTLE_SEC = 2
CHECKSEAL_HOLD_TIME = 10
CHECKSEAL_MAX_HOLD_DELTA = 500

NITROGEN_PRESSURE_CHANNEL = 1
MIN_NITROGEN_PRESSURE_PSI = 6.0
MAX_NITROGEN_PRESSURE_DROP_PSI = 2.0

pressurePot = False

CLAMP_GRAB_LBS = 2.5
CLAMP_CLOSE_LBS = 60
CLAMP_SEAL_LBS = 65

CLAMP_MAX_DISTANCE = 60000
CLAMP_GRAB_OPEN_DISTANCE = 13000  # was (2000*5)+3000
CLAMP_PUCK_CLOSE_DISTANCE = 30000
PUCKCLOSE_RETIRES = 10
PUCKCLOSE_SLEEP_TIME = 10
FULLCLOSE_RETIRES = 3
FULLCLOSE_SLEEP_TIME = 2

CLAMP_MIN_PUCK_STEPS = 25000
CLAMP_MAX_PUCK_STEPS = 30000

CLAMP_MIN_FULL_STEPS = 55000
CLAMP_MAX_FULL_STEPS = 60000

CLAMP_AT_OPEN_LIMIT = 20
CLAMP_AT_CLOSE_LIMIT = 400
CLAMP_ABIT_PAST_RELEASE = -1000

CLAMP_PUCK_PURGE_UNDER = -1300

ARM_FAST_ASTEP = 2000
ARM_FAST_PACE = 8000

CYLINDER_SHAKE_ASTEP = 100
CYLINDER_SHAKE_PACE = 4000
CYLINDER_SHAKE_JOG = 10000

MAX_DELIVERY_UL = 500000

ACTUATOR_WAIT_MS = 1000

PUCK_PHYSICAL_DISTANCE_MM = 213

PUCK_NOMINAL_STACK_HEIGHTS = {0: 0, 1: 10, 2: 27, 3: 44, 4: 61, 5: 78, 6: 95, 7: 112, 8: 129, 9: 146, 10: 163, 11: 180, 12: 197}
