gnea\grbl-Mega  1.0f
Source Code Documentation ( Internal Workings )
Todo List
globalScope> Global block_coord_system [N_AXIS]
An EEPROM read of the coordinate data may require a buffer sync when the cycle
globalScope> Global if (bit_istrue(settings.flags, BITFLAG_LASER_MODE))
Check sync conditions for M3 enabled motions that don't enter the planner. (zero length).
globalScope> Global ISR (TIMER1_COMPA_vect)
Replace direct updating of the int32 position counters in the ISR somehow. Perhaps use smaller int8 variables and update position counters only when a segment completes. This can get complicated with probing and homing cycles that require true real-time positions.
globalScope> Global limits_go_home (uint8_t cycle_mask)
Move limit pin-specific calls to a general function for portability.
globalScope> Global mc_homing_cycle (uint8_t cycle_mask)
Move the pin-specific LIMIT_PIN call to limits.c as a function.
globalScope> Global mc_probe_cycle (float *target, plan_line_data_t *pl_data, uint8_t parser_flags)
Need to update this cycle so it obeys a non-auto cycle start.
globalScope> Global plan_buffer_line (float *target, plan_line_data_t *pl_data)
Need to check this method handling zero junction speeds when starting from rest.
globalScope> Global plan_sync_position ()
For motor configurations not in the same coordinate frame as the machine position,
globalScope> Global protocol_main_loop ()
Install '' feature
globalScope> Global return (STATUS_OK)
% to denote start of program.
globalScope> Global serial_write (uint8_t data)
Restructure st_prep_buffer() calls to be executed here during a long print.
globalScope> Global spindle_set_state (uint8_t state, float rpm)
May need to be rpm_min*(100/MAX_SPINDLE_SPEED_OVERRIDE);
globalScope> Global st_prep_buffer ()
Determine correct handling of parameters in deceleration-only.
globalScope> Global system_execute_line (char *line)
Move this to realtime commands for GUIs to request this data during suspend-state.