View Source Modbux.Rtu (Modbux v0.3.11)

RTU message helper, functions that handles RTU responses/requests messages.

Summary

Functions

@spec pack_req(
  {:fc | :phr | :rc | :rhr | :ri | :rir, integer(), integer(),
   maybe_improper_list() | integer()}
) :: <<_::16, _::_*8>>
@spec pack_res({any(), integer(), integer(), integer()}) :: <<_::16, _::_*8>>
@spec pack_res(
  <<_::16, _::_*8>>
  | {:fc | :phr | :rc | :rhr | :ri | :rir, integer(), any(),
     maybe_improper_list() | integer()},
  any()
) :: <<_::16, _::_*8>>
@spec parse_req(<<_::16, _::_*8>>) ::
  {:einval | :error | :fc | :phr | :rc | :rhr | :ri | :rir, byte(), char(),
   [any()] | char()}
@spec parse_res(any(), <<_::16, _::_*8>>) ::
  nil | [any()] | {:error, any()} | {:error, byte(), <<_::104>>}
@spec req_len({:fc | :phr | :rc | :rhr | :ri | :rir, any(), any(), any()}) ::
  integer()
@spec res_len({:fc | :phr | :rc | :rhr | :ri | :rir, any(), any(), any()}) :: number()
@spec unwrap(<<_::16, _::_*8>>) :: binary()
@spec wrap(binary()) :: <<_::16, _::_*8>>