anchor.diff: +%% -----------------------------------------------------------------------------
  +%% @doc Communicate with the
  +%% <a href="https://datasheets.maximintegrated.com/en/ds/DS18B20.pdf">
  +%% DS18B20 - Programmable Resolution 1-Wire Digital Thermometer
  +%% </a>.
  +%% @end
  +%% -----------------------------------------------------------------------------
   -module(onewire_ds18b20).
  -% Device: DS18B20 - Programmable Resolution 1-Wire Digital Thermometer
  -% https://datasheets.maximintegrated.com/en/ds/DS18B20.pdf
   
   % API
   -export([temp/1]).
  
positive.code:         Temp / 16.0
      end).
  
  read_scratchpad(ID) ->
      grisp_onewire:transaction(fun() ->
          select_device(ID),
          read_scratchpad()
      end).
  
  convert(ID, Timeout) ->
      grisp_onewire:transaction(fun() ->
          select_device(ID),
  
negative.code: 
  %--- API -----------------------------------------------------------------------
  
  %% @doc Read the temperature in °C from the scratchpad.
  %%
  %% === Example ===
  %% ```
  %%  onewire_ds18b20:temp([40,255,190,25,96,23,3,203]).
  %%  22.375
  %% '''
  -spec temp([byte()]) -> float().
  temp(ID) ->
      grisp_onewire:transaction(fun() ->
          select_device(ID),
  