HAL library 05- OneWire for STM32Fxxx

Next port from STM32F4xx STD drivers to STM32Fxxx HAL drivers was done for OneWire library. This library is protocol based only. It features basic functions for read/write byte, reset port and search devices on OneWire port.

1-Wire is a device communications bus system designed by Dallas Semiconductor Corp. that provides low-speed data, signaling, and power over a single signal.

It’s used in some temperature sensors, like DS18B20 temp sensor and many others products from Dallas.


Read more about new HAL libraries


  • Read/write byte
  • Search for devices on 1-wire pin
  • Read rom from device
  • Unlimited OneWire ports on STM32Fxxx
      • This allows you to group sensors to separate ports to prevent communication failures if one sensor is broken


  • HAL
  • TM
    • STM32Fxxx HAL
    • defines.h
    • GPIO
    • DELAY

Functions and enumerations

Example 1

Example 2

Project is available on Github, download all libraries below.

TM STM32 Libraries

STM32 libraries based on STM32Fxxx HAL drivers.


Owner of this site. Also electronic enthusiasts, web developer, 3D printer fan, handball player and more. Big fan of STM32F4 devices. In anticipation of the new Discovery board for STM32F7 lines.

You may also like...

Read before commenting!

Before you make a new comment, make sure you agree with things listed below:

  • - Read post to make sure if it is already posted what you are asking for,
  • - Make sure you have the latest version of libraries used in your project,
  • - Make a clean and grammatically correct written message,
  • - Report as many details as possible, including what have you done so far,
  • - Do NOT post any code here. Use Pastebin,
  • - Do NOT post any error codes here. Use Pastebin,
  • - Specify STM32Fxxx family and used Discovery/EVAL/Nucleo or custom made board,
  • - Make sure your clock is set correct for PLL,
  • - If you are using my HAL drivers, please check this post how to start.
Comment will be deleted on breaking these rules without notification!
  • Pingback: All STM32 HAL libraries - STM32F4 Discovery()

  • Lau

    I need to read data from a DHT11, it uses OneWire to transmit. Can I just use the function ReadByte from your library or do you recommend using the DS18B20 and make some modifications?

    • As you want. Probably this is better to use and make your DHT layer based on this libs for ready byte, reset and so on. Read DHT manual for proper processing.

  • RusikOk

    Hello! could you share a typical wiring diagram for sensor ds18b20 for your library

    • Normal wiring as ds18b20 uses. Pullup on data pin and thats all.

      • RusikOk

        for use with 1-wire used UART?