271 lines
9.8 KiB
Elixir
271 lines
9.8 KiB
Elixir
defmodule Farmbot.Firmware.Gcode.Param do
|
|
@moduledoc "Firmware paramaters."
|
|
|
|
@typedoc "Human readable name of a paramater."
|
|
@type t :: atom
|
|
|
|
@doc ~S"""
|
|
Parses farmbot_arduino_firmware params.
|
|
If we want the name of param "0"\n
|
|
Example:
|
|
iex> Gcode.parse_param("0")
|
|
:param_version
|
|
|
|
Example:
|
|
iex> Gcode.parse_param(0)
|
|
:param_version
|
|
|
|
If we want the integer of param :param_version\n
|
|
Example:
|
|
iex> Gcode.parse_param(:param_version)
|
|
0
|
|
|
|
Example:
|
|
iex> Gcode.parse_param("param_version")
|
|
0
|
|
"""
|
|
@spec parse_param(binary | integer) :: t | nil
|
|
def parse_param("0"), do: :param_version
|
|
|
|
def parse_param("2"), do: :param_config_ok
|
|
def parse_param("3"), do: :param_use_eeprom
|
|
def parse_param("4"), do: :param_e_stop_on_mov_err
|
|
def parse_param("5"), do: :param_mov_nr_retry
|
|
|
|
def parse_param("11"), do: :movement_timeout_x
|
|
def parse_param("12"), do: :movement_timeout_y
|
|
def parse_param("13"), do: :movement_timeout_z
|
|
|
|
def parse_param("15"), do: :movement_keep_active_x
|
|
def parse_param("16"), do: :movement_keep_active_y
|
|
def parse_param("17"), do: :movement_keep_active_z
|
|
|
|
def parse_param("18"), do: :movement_home_at_boot_x
|
|
def parse_param("19"), do: :movement_home_at_boot_y
|
|
def parse_param("20"), do: :movement_home_at_boot_z
|
|
|
|
def parse_param("21"), do: :movement_invert_endpoints_x
|
|
def parse_param("22"), do: :movement_invert_endpoints_y
|
|
def parse_param("23"), do: :movement_invert_endpoints_z
|
|
|
|
def parse_param("25"), do: :movement_enable_endpoints_x
|
|
def parse_param("26"), do: :movement_enable_endpoints_y
|
|
def parse_param("27"), do: :movement_enable_endpoints_z
|
|
|
|
def parse_param("31"), do: :movement_invert_motor_x
|
|
def parse_param("32"), do: :movement_invert_motor_y
|
|
def parse_param("33"), do: :movement_invert_motor_z
|
|
|
|
def parse_param("36"), do: :movement_secondary_motor_x
|
|
def parse_param("37"), do: :movement_secondary_motor_invert_x
|
|
|
|
def parse_param("41"), do: :movement_steps_acc_dec_x
|
|
def parse_param("42"), do: :movement_steps_acc_dec_y
|
|
def parse_param("43"), do: :movement_steps_acc_dec_z
|
|
|
|
def parse_param("45"), do: :movement_stop_at_home_x
|
|
def parse_param("46"), do: :movement_stop_at_home_y
|
|
def parse_param("47"), do: :movement_stop_at_home_z
|
|
|
|
def parse_param("51"), do: :movement_home_up_x
|
|
def parse_param("52"), do: :movement_home_up_y
|
|
def parse_param("53"), do: :movement_home_up_z
|
|
|
|
def parse_param("55"), do: :movement_step_per_mm_x
|
|
def parse_param("56"), do: :movement_step_per_mm_y
|
|
def parse_param("57"), do: :movement_step_per_mm_z
|
|
|
|
def parse_param("61"), do: :movement_min_spd_x
|
|
def parse_param("62"), do: :movement_min_spd_y
|
|
def parse_param("63"), do: :movement_min_spd_z
|
|
|
|
def parse_param("65"), do: :movement_home_speed_x
|
|
def parse_param("66"), do: :movement_home_speed_y
|
|
def parse_param("67"), do: :movement_home_speed_z
|
|
|
|
def parse_param("71"), do: :movement_max_spd_x
|
|
def parse_param("72"), do: :movement_max_spd_y
|
|
def parse_param("73"), do: :movement_max_spd_z
|
|
|
|
def parse_param("101"), do: :encoder_enabled_x
|
|
def parse_param("102"), do: :encoder_enabled_y
|
|
def parse_param("103"), do: :encoder_enabled_z
|
|
|
|
def parse_param("105"), do: :encoder_type_x
|
|
def parse_param("106"), do: :encoder_type_y
|
|
def parse_param("107"), do: :encoder_type_z
|
|
|
|
def parse_param("111"), do: :encoder_missed_steps_max_x
|
|
def parse_param("112"), do: :encoder_missed_steps_max_y
|
|
def parse_param("113"), do: :encoder_missed_steps_max_z
|
|
|
|
def parse_param("115"), do: :encoder_scaling_x
|
|
def parse_param("116"), do: :encoder_scaling_y
|
|
def parse_param("117"), do: :encoder_scaling_z
|
|
|
|
def parse_param("121"), do: :encoder_missed_steps_decay_x
|
|
def parse_param("122"), do: :encoder_missed_steps_decay_y
|
|
def parse_param("123"), do: :encoder_missed_steps_decay_z
|
|
|
|
def parse_param("125"), do: :encoder_use_for_pos_x
|
|
def parse_param("126"), do: :encoder_use_for_pos_y
|
|
def parse_param("127"), do: :encoder_use_for_pos_z
|
|
|
|
def parse_param("131"), do: :encoder_invert_x
|
|
def parse_param("132"), do: :encoder_invert_y
|
|
def parse_param("133"), do: :encoder_invert_z
|
|
|
|
def parse_param("141"), do: :movement_axis_nr_steps_x
|
|
def parse_param("142"), do: :movement_axis_nr_steps_y
|
|
def parse_param("143"), do: :movement_axis_nr_steps_z
|
|
|
|
def parse_param("145"), do: :movement_stop_at_max_x
|
|
def parse_param("146"), do: :movement_stop_at_max_y
|
|
def parse_param("147"), do: :movement_stop_at_max_z
|
|
|
|
def parse_param("201"), do: :pin_guard_1_pin_nr
|
|
def parse_param("202"), do: :pin_guard_1_pin_time_out
|
|
def parse_param("203"), do: :pin_guard_1_active_state
|
|
|
|
def parse_param("205"), do: :pin_guard_2_pin_nr
|
|
def parse_param("206"), do: :pin_guard_2_pin_time_out
|
|
def parse_param("207"), do: :pin_guard_2_active_state
|
|
|
|
def parse_param("211"), do: :pin_guard_3_pin_nr
|
|
def parse_param("212"), do: :pin_guard_3_pin_time_out
|
|
def parse_param("213"), do: :pin_guard_3_active_state
|
|
|
|
def parse_param("215"), do: :pin_guard_4_pin_nr
|
|
def parse_param("216"), do: :pin_guard_4_pin_time_out
|
|
def parse_param("217"), do: :pin_guard_4_active_state
|
|
|
|
def parse_param("221"), do: :pin_guard_5_pin_nr
|
|
def parse_param("222"), do: :pin_guard_5_time_out
|
|
def parse_param("223"), do: :pin_guard_5_active_state
|
|
def parse_param(param) when is_integer(param), do: parse_param("#{param}")
|
|
|
|
@spec parse_param(t) :: integer | nil
|
|
def parse_param(:param_version), do: 0
|
|
|
|
def parse_param(:param_config_ok), do: 2
|
|
def parse_param(:param_use_eeprom), do: 3
|
|
def parse_param(:param_e_stop_on_mov_err), do: 4
|
|
def parse_param(:param_mov_nr_retry), do: 5
|
|
|
|
def parse_param(:movement_timeout_x), do: 11
|
|
def parse_param(:movement_timeout_y), do: 12
|
|
def parse_param(:movement_timeout_z), do: 13
|
|
|
|
def parse_param(:movement_keep_active_x), do: 15
|
|
def parse_param(:movement_keep_active_y), do: 16
|
|
def parse_param(:movement_keep_active_z), do: 17
|
|
|
|
def parse_param(:movement_home_at_boot_x), do: 18
|
|
def parse_param(:movement_home_at_boot_y), do: 19
|
|
def parse_param(:movement_home_at_boot_z), do: 20
|
|
|
|
def parse_param(:movement_invert_endpoints_x), do: 21
|
|
def parse_param(:movement_invert_endpoints_y), do: 22
|
|
def parse_param(:movement_invert_endpoints_z), do: 23
|
|
|
|
def parse_param(:movement_invert_motor_x), do: 31
|
|
def parse_param(:movement_invert_motor_y), do: 32
|
|
def parse_param(:movement_invert_motor_z), do: 33
|
|
|
|
def parse_param(:movement_enable_endpoints_x), do: 25
|
|
def parse_param(:movement_enable_endpoints_y), do: 26
|
|
def parse_param(:movement_enable_endpoints_z), do: 27
|
|
|
|
def parse_param(:movement_secondary_motor_x), do: 36
|
|
def parse_param(:movement_secondary_motor_invert_x), do: 37
|
|
|
|
def parse_param(:movement_steps_acc_dec_x), do: 41
|
|
def parse_param(:movement_steps_acc_dec_y), do: 42
|
|
def parse_param(:movement_steps_acc_dec_z), do: 43
|
|
|
|
def parse_param(:movement_stop_at_home_x), do: 45
|
|
def parse_param(:movement_stop_at_home_y), do: 46
|
|
def parse_param(:movement_stop_at_home_z), do: 47
|
|
|
|
def parse_param(:movement_home_up_x), do: 51
|
|
def parse_param(:movement_home_up_y), do: 52
|
|
def parse_param(:movement_home_up_z), do: 53
|
|
|
|
def parse_param(:movement_step_per_mm_x), do: 55
|
|
def parse_param(:movement_step_per_mm_y), do: 56
|
|
def parse_param(:movement_step_per_mm_z), do: 57
|
|
|
|
def parse_param(:movement_min_spd_x), do: 61
|
|
def parse_param(:movement_min_spd_y), do: 62
|
|
def parse_param(:movement_min_spd_z), do: 63
|
|
|
|
def parse_param(:movement_home_speed_x), do: 65
|
|
def parse_param(:movement_home_speed_y), do: 66
|
|
def parse_param(:movement_home_speed_z), do: 67
|
|
|
|
def parse_param(:movement_max_spd_x), do: 71
|
|
def parse_param(:movement_max_spd_y), do: 72
|
|
def parse_param(:movement_max_spd_z), do: 73
|
|
|
|
def parse_param(:encoder_enabled_x), do: 101
|
|
def parse_param(:encoder_enabled_y), do: 102
|
|
def parse_param(:encoder_enabled_z), do: 103
|
|
|
|
def parse_param(:encoder_type_x), do: 105
|
|
def parse_param(:encoder_type_y), do: 106
|
|
def parse_param(:encoder_type_z), do: 107
|
|
|
|
def parse_param(:encoder_missed_steps_max_x), do: 111
|
|
def parse_param(:encoder_missed_steps_max_y), do: 112
|
|
def parse_param(:encoder_missed_steps_max_z), do: 113
|
|
|
|
def parse_param(:encoder_scaling_x), do: 115
|
|
def parse_param(:encoder_scaling_y), do: 116
|
|
def parse_param(:encoder_scaling_z), do: 117
|
|
|
|
def parse_param(:encoder_missed_steps_decay_x), do: 121
|
|
def parse_param(:encoder_missed_steps_decay_y), do: 122
|
|
def parse_param(:encoder_missed_steps_decay_z), do: 123
|
|
|
|
def parse_param(:encoder_use_for_pos_x), do: 125
|
|
def parse_param(:encoder_use_for_pos_y), do: 126
|
|
def parse_param(:encoder_use_for_pos_z), do: 127
|
|
|
|
def parse_param(:encoder_invert_x), do: 131
|
|
def parse_param(:encoder_invert_y), do: 132
|
|
def parse_param(:encoder_invert_z), do: 133
|
|
|
|
def parse_param(:movement_axis_nr_steps_x), do: 141
|
|
def parse_param(:movement_axis_nr_steps_y), do: 142
|
|
def parse_param(:movement_axis_nr_steps_z), do: 143
|
|
|
|
def parse_param(:movement_stop_at_max_x), do: 145
|
|
def parse_param(:movement_stop_at_max_y), do: 146
|
|
def parse_param(:movement_stop_at_max_z), do: 147
|
|
|
|
def parse_param(:pin_guard_1_pin_nr), do: 201
|
|
def parse_param(:pin_guard_1_pin_time_out), do: 202
|
|
def parse_param(:pin_guard_1_active_state), do: 203
|
|
|
|
def parse_param(:pin_guard_2_pin_nr), do: 205
|
|
def parse_param(:pin_guard_2_pin_time_out), do: 206
|
|
def parse_param(:pin_guard_2_active_state), do: 207
|
|
|
|
def parse_param(:pin_guard_3_pin_nr), do: 211
|
|
def parse_param(:pin_guard_3_pin_time_out), do: 212
|
|
def parse_param(:pin_guard_3_active_state), do: 213
|
|
|
|
def parse_param(:pin_guard_4_pin_nr), do: 215
|
|
def parse_param(:pin_guard_4_pin_time_out), do: 216
|
|
def parse_param(:pin_guard_4_active_state), do: 217
|
|
|
|
def parse_param(:pin_guard_5_pin_nr), do: 221
|
|
def parse_param(:pin_guard_5_time_out), do: 222
|
|
def parse_param(:pin_guard_5_active_state), do: 223
|
|
|
|
def parse_param(param_string) when is_bitstring(param_string),
|
|
do: param_string |> String.to_atom() |> parse_param
|
|
|
|
def parse_param(_), do: nil
|
|
end
|