Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/azholtikov/zh_ds18b20
ESP32 ESP-IDF and ESP8266 RTOS SDK component for 1-Wire DS18B20 sensor.
https://github.com/azholtikov/zh_ds18b20
component ds18b20 esp-idf esp32 esp8266 onewire rtos-sdk
Last synced: about 1 month ago
JSON representation
ESP32 ESP-IDF and ESP8266 RTOS SDK component for 1-Wire DS18B20 sensor.
- Host: GitHub
- URL: https://github.com/azholtikov/zh_ds18b20
- Owner: aZholtikov
- License: apache-2.0
- Created: 2024-03-08T07:18:34.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-07-24T14:17:55.000Z (5 months ago)
- Last Synced: 2024-07-24T16:33:12.061Z (5 months ago)
- Topics: component, ds18b20, esp-idf, esp32, esp8266, onewire, rtos-sdk
- Language: C
- Homepage:
- Size: 6.84 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ESP32 ESP-IDF and ESP8266 RTOS SDK component for 1-Wire DS18B20 sensor
## Tested on
1. ESP8266 RTOS_SDK v3.4
2. ESP32 ESP-IDF v5.2## Dependencies
1. [zh_onewire](https://github.com/aZholtikov/zh_onewire.git)
## Using
In an existing project, run the following command to install the components:
```text
cd ../your_project/components
git clone https://github.com/aZholtikov/zh_onewire.git
git clone https://github.com/aZholtikov/zh_ds18b20.git
```In the application, add the component:
```c
#include "zh_ds18b20.h"
```## Examples
One or more 1-Wire DS18B20 sensors on bus:
```c
#include "zh_ds18b20.h"void app_main(void)
{
esp_log_level_set("zh_onewire", ESP_LOG_NONE);
esp_log_level_set("zh_ds18b20", ESP_LOG_NONE);
uint8_t *rom = NULL;
float temperature = 0.0;
zh_onewire_init(GPIO_NUM_5);
if (zh_onewire_reset() != ESP_OK)
{
printf("There are no 1-Wire devices available on the bus.\n");
}
else
{
zh_onewire_search_rom_init();
for (;;)
{
rom = zh_onewire_search_rom_next();
if (rom == NULL)
{
break;
}
printf("Found device ROM: ");
for (uint8_t i = 0; i < 8; ++i)
{
printf("%X ", *(rom++));
}
printf("\n");
rom -= 8;
zh_ds18b20_read(rom, &temperature);
printf("Temperature: %0.2f\n", temperature);
}
}
}
```Any [feedback](mailto:[email protected]) will be gladly accepted.