BMI323. Registers
(bmi323 v0.1.0)
Copy Markdown
Raw 16-bit register accessors for the BMI323.
Each function reads or writes a single 16-bit register. Reads return the raw
little-endian bytes (LSB first); writes accept the same format. Higher-level
helpers in BMI323 interpret those bytes as signed integers, scaled physical
quantities, or named bit-fields.
Burst reads (multiple consecutive registers in one I²C transaction) are not
declared here; use Wafer.Chip.read_register/3 directly with the desired
start address and byte count, or one of the burst-aware helpers in BMI323.
Register addresses, access modes and bit layouts are taken from BMI323 Datasheet BST-BMI323-DS000-12 §6.1, Register Map Overview.
Summary
Functions
Read the contents of the acc_conf register.
Read the contents of the acc_data_x register.
Read the contents of the acc_data_y register.
Read the contents of the acc_data_z register.
Read the contents of the acc_dp_dgain_x register.
Read the contents of the acc_dp_dgain_y register.
Read the contents of the acc_dp_dgain_z register.
Read the contents of the acc_dp_off_x register.
Read the contents of the acc_dp_off_y register.
Read the contents of the acc_dp_off_z register.
Read the contents of the alt_acc_conf register.
Read the contents of the alt_conf register.
Read the contents of the alt_gyr_conf register.
Read the contents of the alt_status register.
Read the contents of the cfg_res register.
Read the contents of the chip_id register.
Read the contents of the err_reg register.
Read the contents of the feature_ctrl register.
Read the contents of the feature_data_addr register.
Read the contents of the feature_data_status register.
Read the contents of the feature_data_tx register.
Read the contents of the feature_engine_status register.
Read the contents of the feature_event_ext register.
Read the contents of the feature_io_0 register.
Read the contents of the feature_io_1 register.
Read the contents of the feature_io_2 register.
Read the contents of the feature_io_3 register.
Read the contents of the feature_io_status register.
Read the contents of the fifo_conf register.
Read the contents of the fifo_data register.
Read the contents of the fifo_fill_level register.
Read the contents of the fifo_watermark register.
Read the contents of the gyr_conf register.
Read the contents of the gyr_data_x register.
Read the contents of the gyr_data_y register.
Read the contents of the gyr_data_z register.
Read the contents of the gyr_dp_dgain_x register.
Read the contents of the gyr_dp_dgain_y register.
Read the contents of the gyr_dp_dgain_z register.
Read the contents of the gyr_dp_off_x register.
Read the contents of the gyr_dp_off_y register.
Read the contents of the gyr_dp_off_z register.
Read the contents of the i3c_tc_sync_odr register.
Read the contents of the i3c_tc_sync_tph register.
Read the contents of the i3c_tc_sync_tu register.
Read the contents of the int_conf register.
Read the contents of the int_map_1 register.
Read the contents of the int_map_2 register.
Read the contents of the int_status_ibi register.
Read the contents of the int_status_int1 register.
Read the contents of the int_status_int2 register.
Read the contents of the io_i2c_if register.
Read the contents of the io_int_ctrl register.
Read the contents of the io_odr_deviation register.
Read the contents of the io_pad_strength register.
Read the contents of the io_pdn_ctrl register.
Read the contents of the io_spi_if register.
Read the contents of the sat_flags register.
Read the contents of the sensor_time_0 register.
Read the contents of the sensor_time_1 register.
Read the contents of the status register.
Read the contents of the temp_data register.
Swap the contents of the acc_conf register.
Swap the contents of the acc_dp_dgain_x register.
Swap the contents of the acc_dp_dgain_y register.
Swap the contents of the acc_dp_dgain_z register.
Swap the contents of the acc_dp_off_x register.
Swap the contents of the acc_dp_off_y register.
Swap the contents of the acc_dp_off_z register.
Swap the contents of the alt_acc_conf register.
Swap the contents of the alt_conf register.
Swap the contents of the alt_gyr_conf register.
Swap the contents of the cfg_res register.
Swap the contents of the feature_ctrl register.
Swap the contents of the feature_data_addr register.
Swap the contents of the feature_data_tx register.
Swap the contents of the feature_io_0 register.
Swap the contents of the feature_io_1 register.
Swap the contents of the feature_io_2 register.
Swap the contents of the feature_io_3 register.
Swap the contents of the feature_io_status register.
Swap the contents of the fifo_conf register.
Swap the contents of the fifo_watermark register.
Swap the contents of the gyr_conf register.
Swap the contents of the gyr_dp_dgain_x register.
Swap the contents of the gyr_dp_dgain_y register.
Swap the contents of the gyr_dp_dgain_z register.
Swap the contents of the gyr_dp_off_x register.
Swap the contents of the gyr_dp_off_y register.
Swap the contents of the gyr_dp_off_z register.
Swap the contents of the i3c_tc_sync_odr register.
Swap the contents of the i3c_tc_sync_tph register.
Swap the contents of the i3c_tc_sync_tu register.
Swap the contents of the int_conf register.
Swap the contents of the int_map_1 register.
Swap the contents of the int_map_2 register.
Swap the contents of the io_i2c_if register.
Swap the contents of the io_int_ctrl register.
Swap the contents of the io_pad_strength register.
Swap the contents of the io_pdn_ctrl register.
Swap the contents of the io_spi_if register.
Update the contents of the acc_conf register using a
transformation function.
Update the contents of the acc_dp_dgain_x register using a
transformation function.
Update the contents of the acc_dp_dgain_y register using a
transformation function.
Update the contents of the acc_dp_dgain_z register using a
transformation function.
Update the contents of the acc_dp_off_x register using a
transformation function.
Update the contents of the acc_dp_off_y register using a
transformation function.
Update the contents of the acc_dp_off_z register using a
transformation function.
Update the contents of the alt_acc_conf register using a
transformation function.
Update the contents of the alt_conf register using a
transformation function.
Update the contents of the alt_gyr_conf register using a
transformation function.
Update the contents of the cfg_res register using a
transformation function.
Update the contents of the feature_ctrl register using a
transformation function.
Update the contents of the feature_data_addr register using a
transformation function.
Update the contents of the feature_data_tx register using a
transformation function.
Update the contents of the feature_io_0 register using a
transformation function.
Update the contents of the feature_io_1 register using a
transformation function.
Update the contents of the feature_io_2 register using a
transformation function.
Update the contents of the feature_io_3 register using a
transformation function.
Update the contents of the feature_io_status register using a
transformation function.
Update the contents of the fifo_conf register using a
transformation function.
Update the contents of the fifo_watermark register using a
transformation function.
Update the contents of the gyr_conf register using a
transformation function.
Update the contents of the gyr_dp_dgain_x register using a
transformation function.
Update the contents of the gyr_dp_dgain_y register using a
transformation function.
Update the contents of the gyr_dp_dgain_z register using a
transformation function.
Update the contents of the gyr_dp_off_x register using a
transformation function.
Update the contents of the gyr_dp_off_y register using a
transformation function.
Update the contents of the gyr_dp_off_z register using a
transformation function.
Update the contents of the i3c_tc_sync_odr register using a
transformation function.
Update the contents of the i3c_tc_sync_tph register using a
transformation function.
Update the contents of the i3c_tc_sync_tu register using a
transformation function.
Update the contents of the int_conf register using a
transformation function.
Update the contents of the int_map_1 register using a
transformation function.
Update the contents of the int_map_2 register using a
transformation function.
Update the contents of the io_i2c_if register using a
transformation function.
Update the contents of the io_int_ctrl register using a
transformation function.
Update the contents of the io_pad_strength register using a
transformation function.
Update the contents of the io_pdn_ctrl register using a
transformation function.
Update the contents of the io_spi_if register using a
transformation function.
Write new contents to the acc_conf register.
Write new contents to the acc_dp_dgain_x register.
Write new contents to the acc_dp_dgain_y register.
Write new contents to the acc_dp_dgain_z register.
Write new contents to the acc_dp_off_x register.
Write new contents to the acc_dp_off_y register.
Write new contents to the acc_dp_off_z register.
Write new contents to the alt_acc_conf register.
Write new contents to the alt_conf register.
Write new contents to the alt_gyr_conf register.
Write new contents to the cfg_res register.
Write new contents to the cmd register.
Write new contents to the feature_ctrl register.
Write new contents to the feature_data_addr register.
Write new contents to the feature_data_tx register.
Write new contents to the feature_io_0 register.
Write new contents to the feature_io_1 register.
Write new contents to the feature_io_2 register.
Write new contents to the feature_io_3 register.
Write new contents to the feature_io_status register.
Write new contents to the fifo_conf register.
Write new contents to the fifo_ctrl register.
Write new contents to the fifo_watermark register.
Write new contents to the gyr_conf register.
Write new contents to the gyr_dp_dgain_x register.
Write new contents to the gyr_dp_dgain_y register.
Write new contents to the gyr_dp_dgain_z register.
Write new contents to the gyr_dp_off_x register.
Write new contents to the gyr_dp_off_y register.
Write new contents to the gyr_dp_off_z register.
Write new contents to the i3c_tc_sync_odr register.
Write new contents to the i3c_tc_sync_tph register.
Write new contents to the i3c_tc_sync_tu register.
Write new contents to the int_conf register.
Write new contents to the int_map_1 register.
Write new contents to the int_map_2 register.
Write new contents to the io_i2c_if register.
Write new contents to the io_int_ctrl register.
Write new contents to the io_pad_strength register.
Write new contents to the io_pdn_ctrl register.
Write new contents to the io_spi_if register.
Functions
@spec read_acc_conf(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_conf register.
Example
iex> read_acc_conf(conn)
{:ok, <<0, 0>>}
@spec read_acc_data_x(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_data_x register.
Example
iex> read_acc_data_x(conn)
{:ok, <<0, 0>>}
@spec read_acc_data_y(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_data_y register.
Example
iex> read_acc_data_y(conn)
{:ok, <<0, 0>>}
@spec read_acc_data_z(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_data_z register.
Example
iex> read_acc_data_z(conn)
{:ok, <<0, 0>>}
@spec read_acc_dp_dgain_x(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_dp_dgain_x register.
Example
iex> read_acc_dp_dgain_x(conn)
{:ok, <<0, 0>>}
@spec read_acc_dp_dgain_y(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_dp_dgain_y register.
Example
iex> read_acc_dp_dgain_y(conn)
{:ok, <<0, 0>>}
@spec read_acc_dp_dgain_z(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_dp_dgain_z register.
Example
iex> read_acc_dp_dgain_z(conn)
{:ok, <<0, 0>>}
@spec read_acc_dp_off_x(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_dp_off_x register.
Example
iex> read_acc_dp_off_x(conn)
{:ok, <<0, 0>>}
@spec read_acc_dp_off_y(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_dp_off_y register.
Example
iex> read_acc_dp_off_y(conn)
{:ok, <<0, 0>>}
@spec read_acc_dp_off_z(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the acc_dp_off_z register.
Example
iex> read_acc_dp_off_z(conn)
{:ok, <<0, 0>>}
@spec read_alt_acc_conf(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the alt_acc_conf register.
Example
iex> read_alt_acc_conf(conn)
{:ok, <<0, 0>>}
@spec read_alt_conf(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the alt_conf register.
Example
iex> read_alt_conf(conn)
{:ok, <<0, 0>>}
@spec read_alt_gyr_conf(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the alt_gyr_conf register.
Example
iex> read_alt_gyr_conf(conn)
{:ok, <<0, 0>>}
@spec read_alt_status(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the alt_status register.
Example
iex> read_alt_status(conn)
{:ok, <<0, 0>>}
@spec read_cfg_res(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the cfg_res register.
Example
iex> read_cfg_res(conn)
{:ok, <<0, 0>>}
@spec read_chip_id(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the chip_id register.
Example
iex> read_chip_id(conn)
{:ok, <<0, 0>>}
@spec read_err_reg(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the err_reg register.
Example
iex> read_err_reg(conn)
{:ok, <<0, 0>>}
@spec read_feature_ctrl(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_ctrl register.
Example
iex> read_feature_ctrl(conn)
{:ok, <<0, 0>>}
@spec read_feature_data_addr(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_data_addr register.
Example
iex> read_feature_data_addr(conn)
{:ok, <<0, 0>>}
@spec read_feature_data_status(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_data_status register.
Example
iex> read_feature_data_status(conn)
{:ok, <<0, 0>>}
@spec read_feature_data_tx(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_data_tx register.
Example
iex> read_feature_data_tx(conn)
{:ok, <<0, 0>>}
@spec read_feature_engine_status(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_engine_status register.
Example
iex> read_feature_engine_status(conn)
{:ok, <<0, 0>>}
@spec read_feature_event_ext(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_event_ext register.
Example
iex> read_feature_event_ext(conn)
{:ok, <<0, 0>>}
@spec read_feature_io_0(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_io_0 register.
Example
iex> read_feature_io_0(conn)
{:ok, <<0, 0>>}
@spec read_feature_io_1(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_io_1 register.
Example
iex> read_feature_io_1(conn)
{:ok, <<0, 0>>}
@spec read_feature_io_2(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_io_2 register.
Example
iex> read_feature_io_2(conn)
{:ok, <<0, 0>>}
@spec read_feature_io_3(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_io_3 register.
Example
iex> read_feature_io_3(conn)
{:ok, <<0, 0>>}
@spec read_feature_io_status(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the feature_io_status register.
Example
iex> read_feature_io_status(conn)
{:ok, <<0, 0>>}
@spec read_fifo_conf(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the fifo_conf register.
Example
iex> read_fifo_conf(conn)
{:ok, <<0, 0>>}
@spec read_fifo_data(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the fifo_data register.
Example
iex> read_fifo_data(conn)
{:ok, <<0, 0>>}
@spec read_fifo_fill_level(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the fifo_fill_level register.
Example
iex> read_fifo_fill_level(conn)
{:ok, <<0, 0>>}
@spec read_fifo_watermark(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the fifo_watermark register.
Example
iex> read_fifo_watermark(conn)
{:ok, <<0, 0>>}
@spec read_gyr_conf(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_conf register.
Example
iex> read_gyr_conf(conn)
{:ok, <<0, 0>>}
@spec read_gyr_data_x(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_data_x register.
Example
iex> read_gyr_data_x(conn)
{:ok, <<0, 0>>}
@spec read_gyr_data_y(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_data_y register.
Example
iex> read_gyr_data_y(conn)
{:ok, <<0, 0>>}
@spec read_gyr_data_z(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_data_z register.
Example
iex> read_gyr_data_z(conn)
{:ok, <<0, 0>>}
@spec read_gyr_dp_dgain_x(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_dp_dgain_x register.
Example
iex> read_gyr_dp_dgain_x(conn)
{:ok, <<0, 0>>}
@spec read_gyr_dp_dgain_y(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_dp_dgain_y register.
Example
iex> read_gyr_dp_dgain_y(conn)
{:ok, <<0, 0>>}
@spec read_gyr_dp_dgain_z(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_dp_dgain_z register.
Example
iex> read_gyr_dp_dgain_z(conn)
{:ok, <<0, 0>>}
@spec read_gyr_dp_off_x(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_dp_off_x register.
Example
iex> read_gyr_dp_off_x(conn)
{:ok, <<0, 0>>}
@spec read_gyr_dp_off_y(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_dp_off_y register.
Example
iex> read_gyr_dp_off_y(conn)
{:ok, <<0, 0>>}
@spec read_gyr_dp_off_z(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the gyr_dp_off_z register.
Example
iex> read_gyr_dp_off_z(conn)
{:ok, <<0, 0>>}
@spec read_i3c_tc_sync_odr(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the i3c_tc_sync_odr register.
Example
iex> read_i3c_tc_sync_odr(conn)
{:ok, <<0, 0>>}
@spec read_i3c_tc_sync_tph(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the i3c_tc_sync_tph register.
Example
iex> read_i3c_tc_sync_tph(conn)
{:ok, <<0, 0>>}
@spec read_i3c_tc_sync_tu(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the i3c_tc_sync_tu register.
Example
iex> read_i3c_tc_sync_tu(conn)
{:ok, <<0, 0>>}
@spec read_int_conf(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the int_conf register.
Example
iex> read_int_conf(conn)
{:ok, <<0, 0>>}
@spec read_int_map_1(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the int_map_1 register.
Example
iex> read_int_map_1(conn)
{:ok, <<0, 0>>}
@spec read_int_map_2(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the int_map_2 register.
Example
iex> read_int_map_2(conn)
{:ok, <<0, 0>>}
@spec read_int_status_ibi(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the int_status_ibi register.
Example
iex> read_int_status_ibi(conn)
{:ok, <<0, 0>>}
@spec read_int_status_int1(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the int_status_int1 register.
Example
iex> read_int_status_int1(conn)
{:ok, <<0, 0>>}
@spec read_int_status_int2(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the int_status_int2 register.
Example
iex> read_int_status_int2(conn)
{:ok, <<0, 0>>}
@spec read_io_i2c_if(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the io_i2c_if register.
Example
iex> read_io_i2c_if(conn)
{:ok, <<0, 0>>}
@spec read_io_int_ctrl(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the io_int_ctrl register.
Example
iex> read_io_int_ctrl(conn)
{:ok, <<0, 0>>}
@spec read_io_odr_deviation(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the io_odr_deviation register.
Example
iex> read_io_odr_deviation(conn)
{:ok, <<0, 0>>}
@spec read_io_pad_strength(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the io_pad_strength register.
Example
iex> read_io_pad_strength(conn)
{:ok, <<0, 0>>}
@spec read_io_pdn_ctrl(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the io_pdn_ctrl register.
Example
iex> read_io_pdn_ctrl(conn)
{:ok, <<0, 0>>}
@spec read_io_spi_if(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the io_spi_if register.
Example
iex> read_io_spi_if(conn)
{:ok, <<0, 0>>}
@spec read_sat_flags(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the sat_flags register.
Example
iex> read_sat_flags(conn)
{:ok, <<0, 0>>}
@spec read_sensor_time_0(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the sensor_time_0 register.
Example
iex> read_sensor_time_0(conn)
{:ok, <<0, 0>>}
@spec read_sensor_time_1(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the sensor_time_1 register.
Example
iex> read_sensor_time_1(conn)
{:ok, <<0, 0>>}
@spec read_status(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the status register.
Example
iex> read_status(conn)
{:ok, <<0, 0>>}
@spec read_temp_data(Wafer.Conn.t()) :: {:ok, binary()} | {:error, reason :: any()}
Read the contents of the temp_data register.
Example
iex> read_temp_data(conn)
{:ok, <<0, 0>>}
@spec swap_acc_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the acc_conf register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_acc_conf(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_acc_dp_dgain_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the acc_dp_dgain_x register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_acc_dp_dgain_x(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_acc_dp_dgain_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the acc_dp_dgain_y register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_acc_dp_dgain_y(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_acc_dp_dgain_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the acc_dp_dgain_z register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_acc_dp_dgain_z(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_acc_dp_off_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the acc_dp_off_x register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_acc_dp_off_x(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_acc_dp_off_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the acc_dp_off_y register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_acc_dp_off_y(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_acc_dp_off_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the acc_dp_off_z register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_acc_dp_off_z(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_alt_acc_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the alt_acc_conf register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_alt_acc_conf(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_alt_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the alt_conf register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_alt_conf(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_alt_gyr_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the alt_gyr_conf register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_alt_gyr_conf(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_cfg_res(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the cfg_res register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_cfg_res(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_ctrl(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_ctrl register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_ctrl(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_data_addr(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_data_addr register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_data_addr(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_data_tx(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_data_tx register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_data_tx(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_io_0(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_io_0 register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_io_0(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_io_1(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_io_1 register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_io_1(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_io_2(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_io_2 register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_io_2(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_io_3(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_io_3 register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_io_3(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_feature_io_status(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the feature_io_status register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_feature_io_status(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_fifo_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the fifo_conf register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_fifo_conf(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_fifo_watermark(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the fifo_watermark register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_fifo_watermark(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_gyr_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the gyr_conf register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_gyr_conf(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_gyr_dp_dgain_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the gyr_dp_dgain_x register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_gyr_dp_dgain_x(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_gyr_dp_dgain_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the gyr_dp_dgain_y register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_gyr_dp_dgain_y(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_gyr_dp_dgain_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the gyr_dp_dgain_z register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_gyr_dp_dgain_z(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_gyr_dp_off_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the gyr_dp_off_x register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_gyr_dp_off_x(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_gyr_dp_off_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the gyr_dp_off_y register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_gyr_dp_off_y(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_gyr_dp_off_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the gyr_dp_off_z register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_gyr_dp_off_z(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_i3c_tc_sync_odr(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the i3c_tc_sync_odr register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_i3c_tc_sync_odr(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_i3c_tc_sync_tph(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the i3c_tc_sync_tph register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_i3c_tc_sync_tph(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_i3c_tc_sync_tu(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the i3c_tc_sync_tu register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_i3c_tc_sync_tu(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_int_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the int_conf register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_int_conf(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_int_map_1(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the int_map_1 register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_int_map_1(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_int_map_2(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the int_map_2 register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_int_map_2(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_io_i2c_if(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the io_i2c_if register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_io_i2c_if(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_io_int_ctrl(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the io_int_ctrl register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_io_int_ctrl(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_io_pad_strength(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the io_pad_strength register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_io_pad_strength(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_io_pdn_ctrl(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the io_pdn_ctrl register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_io_pdn_ctrl(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec swap_io_spi_if(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Swap the contents of the io_spi_if register.
Reads the contents of the register, then replaces it, returning the previous contents. Some drivers may implement this atomically.
Example
iex> swap_io_spi_if(conn, <<0, 0>>)
{:ok, <<0, 0>>, _conn}
@spec update_acc_conf(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the acc_conf register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_acc_conf(conn, transform)
{:ok, _conn}
@spec update_acc_dp_dgain_x(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the acc_dp_dgain_x register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_acc_dp_dgain_x(conn, transform)
{:ok, _conn}
@spec update_acc_dp_dgain_y(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the acc_dp_dgain_y register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_acc_dp_dgain_y(conn, transform)
{:ok, _conn}
@spec update_acc_dp_dgain_z(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the acc_dp_dgain_z register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_acc_dp_dgain_z(conn, transform)
{:ok, _conn}
@spec update_acc_dp_off_x(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the acc_dp_off_x register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_acc_dp_off_x(conn, transform)
{:ok, _conn}
@spec update_acc_dp_off_y(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the acc_dp_off_y register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_acc_dp_off_y(conn, transform)
{:ok, _conn}
@spec update_acc_dp_off_z(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the acc_dp_off_z register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_acc_dp_off_z(conn, transform)
{:ok, _conn}
@spec update_alt_acc_conf(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the alt_acc_conf register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_alt_acc_conf(conn, transform)
{:ok, _conn}
@spec update_alt_conf(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the alt_conf register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_alt_conf(conn, transform)
{:ok, _conn}
@spec update_alt_gyr_conf(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the alt_gyr_conf register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_alt_gyr_conf(conn, transform)
{:ok, _conn}
@spec update_cfg_res(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the cfg_res register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_cfg_res(conn, transform)
{:ok, _conn}
@spec update_feature_ctrl(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_ctrl register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_ctrl(conn, transform)
{:ok, _conn}
@spec update_feature_data_addr(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_data_addr register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_data_addr(conn, transform)
{:ok, _conn}
@spec update_feature_data_tx(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_data_tx register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_data_tx(conn, transform)
{:ok, _conn}
@spec update_feature_io_0(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_io_0 register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_io_0(conn, transform)
{:ok, _conn}
@spec update_feature_io_1(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_io_1 register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_io_1(conn, transform)
{:ok, _conn}
@spec update_feature_io_2(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_io_2 register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_io_2(conn, transform)
{:ok, _conn}
@spec update_feature_io_3(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_io_3 register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_io_3(conn, transform)
{:ok, _conn}
@spec update_feature_io_status(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the feature_io_status register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_feature_io_status(conn, transform)
{:ok, _conn}
@spec update_fifo_conf(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the fifo_conf register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_fifo_conf(conn, transform)
{:ok, _conn}
@spec update_fifo_watermark(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the fifo_watermark register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_fifo_watermark(conn, transform)
{:ok, _conn}
@spec update_gyr_conf(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the gyr_conf register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_gyr_conf(conn, transform)
{:ok, _conn}
@spec update_gyr_dp_dgain_x(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the gyr_dp_dgain_x register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_gyr_dp_dgain_x(conn, transform)
{:ok, _conn}
@spec update_gyr_dp_dgain_y(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the gyr_dp_dgain_y register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_gyr_dp_dgain_y(conn, transform)
{:ok, _conn}
@spec update_gyr_dp_dgain_z(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the gyr_dp_dgain_z register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_gyr_dp_dgain_z(conn, transform)
{:ok, _conn}
@spec update_gyr_dp_off_x(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the gyr_dp_off_x register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_gyr_dp_off_x(conn, transform)
{:ok, _conn}
@spec update_gyr_dp_off_y(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the gyr_dp_off_y register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_gyr_dp_off_y(conn, transform)
{:ok, _conn}
@spec update_gyr_dp_off_z(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the gyr_dp_off_z register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_gyr_dp_off_z(conn, transform)
{:ok, _conn}
@spec update_i3c_tc_sync_odr(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the i3c_tc_sync_odr register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_i3c_tc_sync_odr(conn, transform)
{:ok, _conn}
@spec update_i3c_tc_sync_tph(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the i3c_tc_sync_tph register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_i3c_tc_sync_tph(conn, transform)
{:ok, _conn}
@spec update_i3c_tc_sync_tu(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the i3c_tc_sync_tu register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_i3c_tc_sync_tu(conn, transform)
{:ok, _conn}
@spec update_int_conf(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the int_conf register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_int_conf(conn, transform)
{:ok, _conn}
@spec update_int_map_1(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the int_map_1 register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_int_map_1(conn, transform)
{:ok, _conn}
@spec update_int_map_2(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the int_map_2 register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_int_map_2(conn, transform)
{:ok, _conn}
@spec update_io_i2c_if(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the io_i2c_if register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_io_i2c_if(conn, transform)
{:ok, _conn}
@spec update_io_int_ctrl(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the io_int_ctrl register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_io_int_ctrl(conn, transform)
{:ok, _conn}
@spec update_io_pad_strength(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the io_pad_strength register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_io_pad_strength(conn, transform)
{:ok, _conn}
@spec update_io_pdn_ctrl(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the io_pdn_ctrl register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_io_pdn_ctrl(conn, transform)
{:ok, _conn}
@spec update_io_spi_if(Wafer.Conn.t(), (<<_::_*16>> -> <<_::_*16>>)) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Update the contents of the io_spi_if register using a
transformation function.
Example
iex> transform = fn <<data::size(16)>> -> <<(data * 2)::size(16)>> end
...> update_io_spi_if(conn, transform)
{:ok, _conn}
@spec write_acc_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the acc_conf register.
Example
iex> write_acc_conf(conn, <<0, 0>>)
{:ok, _conn}
@spec write_acc_dp_dgain_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the acc_dp_dgain_x register.
Example
iex> write_acc_dp_dgain_x(conn, <<0, 0>>)
{:ok, _conn}
@spec write_acc_dp_dgain_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the acc_dp_dgain_y register.
Example
iex> write_acc_dp_dgain_y(conn, <<0, 0>>)
{:ok, _conn}
@spec write_acc_dp_dgain_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the acc_dp_dgain_z register.
Example
iex> write_acc_dp_dgain_z(conn, <<0, 0>>)
{:ok, _conn}
@spec write_acc_dp_off_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the acc_dp_off_x register.
Example
iex> write_acc_dp_off_x(conn, <<0, 0>>)
{:ok, _conn}
@spec write_acc_dp_off_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the acc_dp_off_y register.
Example
iex> write_acc_dp_off_y(conn, <<0, 0>>)
{:ok, _conn}
@spec write_acc_dp_off_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the acc_dp_off_z register.
Example
iex> write_acc_dp_off_z(conn, <<0, 0>>)
{:ok, _conn}
@spec write_alt_acc_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the alt_acc_conf register.
Example
iex> write_alt_acc_conf(conn, <<0, 0>>)
{:ok, _conn}
@spec write_alt_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the alt_conf register.
Example
iex> write_alt_conf(conn, <<0, 0>>)
{:ok, _conn}
@spec write_alt_gyr_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the alt_gyr_conf register.
Example
iex> write_alt_gyr_conf(conn, <<0, 0>>)
{:ok, _conn}
@spec write_cfg_res(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the cfg_res register.
Example
iex> write_cfg_res(conn, <<0, 0>>)
{:ok, _conn}
@spec write_cmd(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the cmd register.
Example
iex> write_cmd(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_ctrl(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_ctrl register.
Example
iex> write_feature_ctrl(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_data_addr(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_data_addr register.
Example
iex> write_feature_data_addr(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_data_tx(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_data_tx register.
Example
iex> write_feature_data_tx(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_io_0(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_io_0 register.
Example
iex> write_feature_io_0(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_io_1(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_io_1 register.
Example
iex> write_feature_io_1(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_io_2(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_io_2 register.
Example
iex> write_feature_io_2(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_io_3(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_io_3 register.
Example
iex> write_feature_io_3(conn, <<0, 0>>)
{:ok, _conn}
@spec write_feature_io_status(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the feature_io_status register.
Example
iex> write_feature_io_status(conn, <<0, 0>>)
{:ok, _conn}
@spec write_fifo_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the fifo_conf register.
Example
iex> write_fifo_conf(conn, <<0, 0>>)
{:ok, _conn}
@spec write_fifo_ctrl(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the fifo_ctrl register.
Example
iex> write_fifo_ctrl(conn, <<0, 0>>)
{:ok, _conn}
@spec write_fifo_watermark(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the fifo_watermark register.
Example
iex> write_fifo_watermark(conn, <<0, 0>>)
{:ok, _conn}
@spec write_gyr_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the gyr_conf register.
Example
iex> write_gyr_conf(conn, <<0, 0>>)
{:ok, _conn}
@spec write_gyr_dp_dgain_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the gyr_dp_dgain_x register.
Example
iex> write_gyr_dp_dgain_x(conn, <<0, 0>>)
{:ok, _conn}
@spec write_gyr_dp_dgain_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the gyr_dp_dgain_y register.
Example
iex> write_gyr_dp_dgain_y(conn, <<0, 0>>)
{:ok, _conn}
@spec write_gyr_dp_dgain_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the gyr_dp_dgain_z register.
Example
iex> write_gyr_dp_dgain_z(conn, <<0, 0>>)
{:ok, _conn}
@spec write_gyr_dp_off_x(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the gyr_dp_off_x register.
Example
iex> write_gyr_dp_off_x(conn, <<0, 0>>)
{:ok, _conn}
@spec write_gyr_dp_off_y(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the gyr_dp_off_y register.
Example
iex> write_gyr_dp_off_y(conn, <<0, 0>>)
{:ok, _conn}
@spec write_gyr_dp_off_z(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the gyr_dp_off_z register.
Example
iex> write_gyr_dp_off_z(conn, <<0, 0>>)
{:ok, _conn}
@spec write_i3c_tc_sync_odr(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the i3c_tc_sync_odr register.
Example
iex> write_i3c_tc_sync_odr(conn, <<0, 0>>)
{:ok, _conn}
@spec write_i3c_tc_sync_tph(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the i3c_tc_sync_tph register.
Example
iex> write_i3c_tc_sync_tph(conn, <<0, 0>>)
{:ok, _conn}
@spec write_i3c_tc_sync_tu(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the i3c_tc_sync_tu register.
Example
iex> write_i3c_tc_sync_tu(conn, <<0, 0>>)
{:ok, _conn}
@spec write_int_conf(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the int_conf register.
Example
iex> write_int_conf(conn, <<0, 0>>)
{:ok, _conn}
@spec write_int_map_1(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the int_map_1 register.
Example
iex> write_int_map_1(conn, <<0, 0>>)
{:ok, _conn}
@spec write_int_map_2(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the int_map_2 register.
Example
iex> write_int_map_2(conn, <<0, 0>>)
{:ok, _conn}
@spec write_io_i2c_if(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the io_i2c_if register.
Example
iex> write_io_i2c_if(conn, <<0, 0>>)
{:ok, _conn}
@spec write_io_int_ctrl(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the io_int_ctrl register.
Example
iex> write_io_int_ctrl(conn, <<0, 0>>)
{:ok, _conn}
@spec write_io_pad_strength(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the io_pad_strength register.
Example
iex> write_io_pad_strength(conn, <<0, 0>>)
{:ok, _conn}
@spec write_io_pdn_ctrl(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the io_pdn_ctrl register.
Example
iex> write_io_pdn_ctrl(conn, <<0, 0>>)
{:ok, _conn}
@spec write_io_spi_if(Wafer.Conn.t(), data :: binary()) :: {:ok, Wafer.Conn.t()} | {:error, reason :: any()}
Write new contents to the io_spi_if register.
Example
iex> write_io_spi_if(conn, <<0, 0>>)
{:ok, _conn}