#pragma once //init stepper pins and timer void stepper_init(); //delay until stepper is stopped, optional timeout in ms, 0 = no limit void stepper_waitForStop(uint32_t timeoutMs = 0); //run to limit and define zero/start position. (busy until finished) //Currently simply runs stepper for travelMm and bumps into hardware limit void stepper_home(uint32_t travelMm = 60); //set absolute target position in steps void stepper_setTargetPosSteps(uint64_t steps); //set absolute target position in millimeters void stepper_setTargetPosMm(uint32_t posMm); //set target speed in millimeters per second void stepper_setSpeed(uint32_t speedMmPerS); //task that periodically logs variables for debugging stepper driver void task_stepper_debug(void *pvParameter);