• Stars
    star
    183
  • Rank 210,154 (Top 5 %)
  • Language
    C
  • License
    MIT License
  • Created over 6 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Lightweight onewire protocol library optimized for UART hardware on embedded systems

Lightweight onewire library

LwOW is lightweight, platform independent library for Onewire protocol for embedded systems. Its primary focus is UART hardware for physical communication for sensors and other slaves.

More about 1-Wire over UART can be found on link below.

https://www.maximintegrated.com/en/app-notes/index.mvp/id/214

Read first: Documentation

Features

  • Written in C (C11)
  • Platform independent, uses custom low-level layer for device drivers
  • 1-Wire protocol fits UART specifications at 9600 and 115200 bauds
  • Allows standard one-wire single-gpio manual control (when UARTs are no more available by the system)
  • Hardware is responsible for timing characteristics
    • Allows DMA on the high-performance microcontrollers
  • Different device drivers included
    • DS18B20 temperature sensor is natively supported
  • Works with operating system due to hardware timing management
    • Separate thread-safe API is available
  • API for device scan, reading and writing single bits
  • User friendly MIT license

Contribute

Fresh contributions are always welcome. Simple instructions to proceed::

  1. Fork Github repository
  2. Follow C style & coding rules already used in the project
  3. Create a pull request to develop branch with new features or bug fixes

Alternatively you may:

  1. Report a bug
  2. Ask for a feature request

More Repositories

1

stm32f429

Keil projects and libraries for STM32F4xx devices
C
2,108
star
2

stm32-usart-uart-dma-rx-tx

STM32 examples for USART using DMA for efficient RX and TX transmission
C
1,247
star
3

c-code-style

Recommended C code style and coding rules for standard C99 or later
Python
994
star
4

lwrb

Lightweight generic ring buffer manager library
C
845
star
5

stm32fxxx-hal-libraries

Libraries for STM32F4xx and STM32F7xx built on HAL drivers from ST
C
755
star
6

stm32-cube-cmake-vscode

STM32, VSCode and CMake detailed tutorial
C
543
star
7

lwesp

Lightweight and versatile AT parser library for ESP8266 and ESP32 devices.
C
437
star
8

lwcell

Lightweight cellular modem host AT library
C
396
star
9

lwgps

Lightweight GPS NMEA parser for embedded systems
C
384
star
10

lwmem

Lightweight dynamic memory manager library for embedded systems with memory constraints. It implements malloc, calloc, realloc and free functions
C
285
star
11

stm32-ws2811-ws2812-ws2812b-ws281x-tim-pwm-dma-timer

WS2811, WS2812, WS2812B or compatible leds driver with STM32, TIM, PWM and DMA with minimum RAM required
C
197
star
12

lwprintf

Lightweight printf library optimized for embedded systems
C
183
star
13

EasyGUI

Easy GUI for microcontrollers
C
172
star
14

GSM_AT_commands_parser

Platform independent, ANSI C AT commands parser for SIMcom GSM modules
C
171
star
15

lwjson

Lightweight JSON parser for embedded systems
C
139
star
16

lwshell

Lightweight shell implementation for embedded systems
C
125
star
17

lwpkt

Lightweight packet protocol structure for multi-device communication focused on RS-485
C
113
star
18

doxygen-dark-theme

Dark theme for doxygen documentation generator
CSS
89
star
19

stm32h7-dual-core-inter-cpu-async-communication

Inter-CPU asynchronous communication between Cortex-M7 and Cortex-M4 cores on STM32H7 dual core devices
C
79
star
20

lwevt

Lightweight event management system for embedded systems
C
58
star
21

lwutil

Versatile and easy to use C language utility library with functions and macros commonly used in various applications
C
56
star
22

embedded-libs

Libraries for embedded software
C
54
star
23

lwbtn

Lightweight button handler for embedded systems
C
47
star
24

RegExp

Regular expressions library for embedded systems
C
35
star
25

lwdtc

Lightweight date, time & cron utilities for embedded systems
C
33
star
26

lwwdg

Lightweight watchdog for RTOS and embedded systems
C
24
star
27

touchgfx-cmake-vscode-stm32-simulator

TouchGFX simulator development in Visual Studio Code with CMake
C++
8
star
28

docs-majerle

Documentation parent project for docs.majerle.eu
7
star
29

iclocker

Official repository for IC Locker storage
JavaScript
6
star
30

learncpp

Learn C++ random repository
C++
2
star
31

mbedtls_playground

Playground for various mbedTLS test and learning scripts
C
1
star