Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/paoloteti/libj1939
Library to work with J1939 Frames used in CAN bus in car and trucks industries
https://github.com/paoloteti/libj1939
canbus car embedded j1939 trucks-industries
Last synced: 3 months ago
JSON representation
Library to work with J1939 Frames used in CAN bus in car and trucks industries
- Host: GitHub
- URL: https://github.com/paoloteti/libj1939
- Owner: paoloteti
- License: apache-2.0
- Created: 2020-04-11T08:23:34.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-01-28T07:50:43.000Z (almost 4 years ago)
- Last Synced: 2024-04-18T19:34:18.720Z (7 months ago)
- Topics: canbus, car, embedded, j1939, trucks-industries
- Language: C
- Size: 79.1 KB
- Stars: 19
- Watchers: 4
- Forks: 12
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
- awesome-canbus - libj1939 - Library to work with J1939 Frames (intended to be used in microcontrollers). (Protocols / J1939 Tools)
README
[![Build Status](https://travis-ci.com/paoloteti/libj1939.svg?branch=master)](https://travis-ci.com/paoloteti/libj1939)
# J1939 Library
Library to work with J1939 Frames used in CAN bus in car and trucks industries.
`libj1939` is intended to be used in microcontrollers.## Coding style
The whole software is programmed using the Linux kernel coding style, see
https://www.kernel.org/doc/html/v5.9/process/coding-style.html for details.## Amendments to the Linux kernel coding style
1. Use stdint types.
2. Always add brackets around bodies of if, while and for statements, even
if the body contains only one expression. It is dangerous to not have them
as it easily happens that one adds a second expression and is hunting for
hours why the code is not working just because of a missing bracket pair.3. Use `size_t` for array indexes, for length values and similar.
4. Use C99 index declaration inside for loop body where possible. This will ensure
that index will live within the loop scope and not outside.## Semantic versioning
Software is numbered according to [Semantic versioning 2.0.0](https://semver.org) rules.
Semantic versioning uses a sequence of three digits (Major.Minor.Patch),
an optional prerelease tag and optional build meta tag.## Documentation
Doxygen is used to generate API docs so it is mandatory to follow that
style for function and definition commentary where possible.## WARNING
WARNING: Currently this project is in alpha-state! Some of the features are
not completely working!## License
Licensed under Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or
http://www.apache.org/licenses/LICENSE-2.0)### Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for
inclusion in the work by you, as defined in the Apache-2.0 license, without any
additional terms or conditions.Please do not ask for features, but send a Pull Request instead.