Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rc 3.1.0 #458

Open
wants to merge 106 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
106 commits
Select commit Hold shift + click to select a range
00bf92d
Switch to Luos_engine revision 3.1.0
nicolas-rabault Dec 21, 2023
1957ef0
Consider local services as trusted and do not exclude them if someone…
nicolas-rabault Dec 21, 2023
1e6f06c
Add a Luos_ReadFromCmd function to Luos_engine
nicolas-rabault Jan 3, 2024
44cda44
[Gate] Switch revision to 2.1.0
nicolas-rabault Dec 21, 2023
649161e
[Gate] Allow to receive and manage someone excluding the Gate
nicolas-rabault Dec 21, 2023
a08e381
Revert "Temporarily remove the ESP build on GH, #423"
thobiassta Jan 4, 2024
b1e2b21
update component dir
thobiassta Jan 4, 2024
96c487f
update engine cmake list
thobiassta Jan 4, 2024
73792a5
Merge pull request #461 from thobias90/esp-build
nicolas-rabault Jan 5, 2024
18c72fc
Create a working WS network for native configuration
nicolas-rabault Jan 5, 2024
51d7fe1
Native examples now use WebSockets instead of Robus
nicolas-rabault Jan 5, 2024
26ba43e
Move broker scripts into Pyluos as command lines
nicolas-rabault Jan 9, 2024
102f637
add an Arduino HAL tested on mkr1000
nicolas-rabault Jan 12, 2024
ff40ab8
[Projects/Native/Gate] Fix default env in platformio.ini file
K0rdan Jan 19, 2024
c32cba1
Add condition to Pyluos installation only for examples using bootload…
K0rdan Jan 19, 2024
c7d1635
[Network/WS/HAL/Native] Websocket configuration can now be override t…
K0rdan Jan 19, 2024
e34482b
Fix some broken links on Readme
nicolas-rabault Jan 22, 2024
60bd8e9
Merge pull request #462 from Luos-io/feat/phy_ws
nicolas-rabault Jan 22, 2024
e15263a
fix a WebSocket configuration typo
nicolas-rabault Jan 22, 2024
fd22bef
Enable multi auto_update management, fix #450
nicolas-rabault Jan 3, 2024
3b3f17f
Auto-update are for services not nodes, fix #465
nicolas-rabault Jan 22, 2024
d9b6ed5
Merge pull request #459 from Luos-io/feat/multi_auto-update
nicolas-rabault Jan 23, 2024
fccbabb
Prevent multi-threading datarace on job allocation
nicolas-rabault Jan 22, 2024
3bb80a4
Merge pull request #466 from Luos-io/feat/multitreading
nicolas-rabault Jan 24, 2024
51dd45a
Create serial_network STM32L474 HAL
nicolas-rabault Jan 18, 2024
893efa5
Create a NUCLEO-L476 HAL on Serial pipe
nicolas-rabault Jan 24, 2024
69112ce
Fix a small luos_engine compilation display
nicolas-rabault Jan 24, 2024
603c0f2
Merge pull request #471 from Luos-io/feat/stm32L476
nicolas-rabault Jan 24, 2024
7e5d4b4
Add \\\\.\\ to portname for serial_network on windows
BHAY-3DiTex Jan 23, 2024
b37535c
Merge pull request #467 from BHAY-3DiTex/patch-1
nicolas-rabault Jan 29, 2024
1e59543
[Gate] Simplify Json conversion functions
nicolas-rabault Jan 24, 2024
fe903a7
[Gate] Allow user to add custom messages management to tiny-json conv…
nicolas-rabault Jan 24, 2024
de80d19
Add a custom pyluos type management example
nicolas-rabault Jan 26, 2024
d4b736e
Add NUCLEO-L476RG to the build action
nicolas-rabault Jan 18, 2024
14ea748
Improve some readme
nicolas-rabault Jan 24, 2024
aaebbec
Add a custom Gate example
nicolas-rabault Jan 24, 2024
b6a0900
Merge pull request #470 from Luos-io/feat/gate_custom
nicolas-rabault Jan 29, 2024
902ee8e
[Gate] Avoid to crash when receiving a traj with no value
nicolas-rabault Feb 1, 2024
c227143
Merge pull request #473 from Luos-io/fix/gate_0_traj
nicolas-rabault Feb 1, 2024
fb10344
ensure that PTP is low after reset
houkhouk Feb 2, 2024
4ccd883
make fix genericusing hardware description macros
houkhouk Feb 2, 2024
4ed1943
Merge pull request #475 from houkhouk/fix/PTP_reset_value
nicolas-rabault Feb 2, 2024
5689da2
Allow nodes with no services
nicolas-rabault Feb 12, 2024
23dd45a
Merge pull request #476 from Luos-io/fix/no_service
nicolas-rabault Feb 12, 2024
03dada3
[product] First working galvo
nicolas-rabault Jan 24, 2024
956a992
Improve Native Serial high data rate support
nicolas-rabault Jan 26, 2024
366bf8e
[product] Improve the custom python example
nicolas-rabault Feb 6, 2024
d0901f6
[product] Add a demo notebook
nicolas-rabault Feb 8, 2024
6cc0e92
[product] fix a broken link on Readme
nicolas-rabault Feb 12, 2024
72b867d
[product] Improve readme with video and link to doc.
nicolas-rabault Feb 15, 2024
3a1c5a5
Merge pull request #472 from Luos-io/feat/laser
nicolas-rabault Feb 15, 2024
a8ab8d2
use job msg size instead of header msg size when reading message from…
houkhouk Mar 7, 2024
121a4cd
Merge pull request #478 from houkhouk/fix/LuosServiceMsgSize
nicolas-rabault Mar 11, 2024
224ee04
Add a function allowing to retrive a profile from a service
nicolas-rabault Mar 7, 2024
5c39cf9
Merge pull request #479 from Luos-io/feat/service_profile
nicolas-rabault Mar 12, 2024
7b9bc35
[robus] Fix some init raising PTP IRQ depending on user config.
nicolas-rabault Mar 12, 2024
2e42a34
Fix services auto-update by allowing to be removed by sending 0 as pe…
nicolas-rabault Mar 12, 2024
784a6ff
[Gate] Remove auto-updates before setting a new one allowing to keep …
nicolas-rabault Mar 12, 2024
18b2e2d
[pipe] Fix size calculation if multiple JSON are sent very closely
nicolas-rabault Mar 13, 2024
84e13ec
[Gate] Remove the wait period of the Gate
nicolas-rabault Mar 12, 2024
189c93c
[Pipe] remove a useless variable on the serial TX protocol.
nicolas-rabault Mar 19, 2024
48713c1
[product] Add an actual laser driver
nicolas-rabault Feb 19, 2024
ae64e6e
Merge pull request #480 from Luos-io/fix/Gate_autoUpdate
nicolas-rabault Mar 22, 2024
4b4b540
Merge pull request #481 from Luos-io/feat/laser
nicolas-rabault Mar 22, 2024
4a2e44d
Try to fix the python setup
nicolas-rabault May 14, 2024
57568d4
Use previous version of RTOS avoiding compilation failure.
nicolas-rabault May 14, 2024
3d15a25
Remove ESP32 compilation because of an unknown python error
nicolas-rabault May 14, 2024
445f737
Merge pull request #485 from Luos-io/fix/gh_actions
nicolas-rabault May 14, 2024
e3e27ef
If a service ask a new update overwrite the update time of the existi…
nicolas-rabault Mar 22, 2024
ddabdc9
[Gate] remove useless auto-update cancelation, Luos now update it.
nicolas-rabault Mar 22, 2024
121f9d8
[Gate] completely remove tempos
nicolas-rabault Mar 22, 2024
1a20ce1
[Gate] remove unused polling mode of the Gate
nicolas-rabault Mar 22, 2024
a5cd654
[Gate] remove the GATE_REFRESH_AUTOSCALE use default value at 20Hz in…
nicolas-rabault Mar 22, 2024
2b2f635
[Gate] Switch gate into an event based management
nicolas-rabault Mar 22, 2024
b8b1790
[Gate] reduce the size of Json start to optimize
nicolas-rabault Mar 22, 2024
eb9ade5
[Pipe] Increase default serial baudrate to 3000000 Baud
nicolas-rabault Mar 22, 2024
6e08137
Merge pull request #486 from Luos-io/fix/Gate_autoUpdate
nicolas-rabault May 14, 2024
ee35c7a
fix size management of the result table during filtering
houkhouk May 15, 2024
9efdc79
fix timeout management on ROBUS protocol
houkhouk May 15, 2024
6b184ed
avoid locking the phys in case of assert
houkhouk May 15, 2024
4451fbe
make sure reception callback is configured in case of pending interru…
houkhouk May 15, 2024
af2510e
fix robus reset timeout algorithm and remove boolen from RobusHAL_Res…
houkhouk May 21, 2024
65aa38a
apply ROBUS timeout fix to STM32L4/L0/F4/F0 and esp32 HALs
houkhouk May 23, 2024
aece26b
add optimization description comment in RobusHAL_ResetTimeout() function
houkhouk May 23, 2024
8ec6581
Fix ATSAMD21 Robus timeout
nicolas-rabault May 23, 2024
b546ef0
comply with code format
houkhouk May 23, 2024
6d2109d
Merge pull request #487 from houkhouk/fix/network_stability
nicolas-rabault May 23, 2024
b9945ca
[led_strip] Fix a minor bug on the led_strip example.
nicolas-rabault May 23, 2024
9ec9cb7
Merge pull request #488 from Luos-io/fix/led_strip
nicolas-rabault May 24, 2024
7208271
fix byte count and delay when writing on serial
houkhouk May 24, 2024
5357bf3
remove useless delay
houkhouk May 27, 2024
3d56f84
fix comment format
houkhouk May 27, 2024
20c75ee
Merge pull request #489 from houkhouk/fix/Serial_send
nicolas-rabault May 27, 2024
84d4aaa
Fix some typos
fleborne May 31, 2024
7f05ee5
Merge pull request #491 from fleborne/fix/typos
nicolas-rabault Jun 3, 2024
876ef0c
remove pyluos polling
houkhouk May 30, 2024
9113050
Merge pull request #490 from houkhouk/fix/pyluos_poll
nicolas-rabault Jun 11, 2024
26bf0a5
Update CONTRIBUTING document
SelimWaly Jun 24, 2024
a78b239
Merge branch 'rc_3.1.0' into patch-1
nicolas-rabault Jun 25, 2024
7407827
Merge pull request #492 from SelimWaly/patch-1
nicolas-rabault Jun 25, 2024
16ea5ee
replace moment_t by torque_t
nicolas-rabault Aug 1, 2024
7d32277
replace MOMENT command by TORQUE
nicolas-rabault Aug 1, 2024
2bbf414
[Gate] replace "moment" Json cmd by "torque"
nicolas-rabault Aug 1, 2024
e42e024
[Gate] Add target_torque management
nicolas-rabault Aug 1, 2024
41bd12e
Add target_torque management on motor profiles
nicolas-rabault Aug 1, 2024
26ab1f8
Merge pull request #493 from Luos-io/torque
nicolas-rabault Aug 14, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
19 changes: 10 additions & 9 deletions .github/ISSUE_TEMPLATE/porting-request.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ about: Suggest a new MCU to be compatible with Luos
title: "[MCU PORTING] "
labels: porting
assignees: simonbdy

---

## Before to begin
Expand All @@ -18,25 +17,27 @@ If you only have a usage question, ask it to the [Luos Community](https://discor
At last, feel free to read the [Luos contribution's guidelines](https://github.com/Luos-io/luos_engine/blob/main/CONTRIBUTING.md) and the [documentation page](https://www.luos.io/docs/contribute-to-luos) to have more insight about how to contribute to Luos!

## Details

Please replace the italic test by your inputs and details in each of the following sections:

### What MCU would you like Luos to be compatible with?
*List the MCU(s) you want Luos to be compatible with.*

_List the MCU(s) you want Luos to be compatible with._

### Link the datasheet of this MCU
*Please provide the links of the MCU's datasheet.*

_Please provide the links of the MCU's datasheet._

### Describe your project
*Describe your project and explain why you need the MCU(s) to be Luos compatible.*

_Describe your project and explain why you need the MCU(s) to be Luos compatible._

### Describe the electronic board hosting the MCU
*Add details about the network interface, the pins used, the device, etc. Don't hesitate to post a schematic.*

### Ensure that every box bellow is checked
- [ ] The MCU is not in the [compatible list](https://www.luos.io/docs/compatibility/mcu_demoboard) in the documentation.
- [ ] The MCU is not already in an existing [porting issue](https://github.com/Luos-io/luos_engine/issues).
_Add details about the network interface, the pins used, the device, etc. Don't hesitate to post a schematic._

### Additional context
*Add any other context about the porting request here.*

_Add any other context about the porting request here._

Thank you! Your issue will be reviewed by our admins.
52 changes: 27 additions & 25 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
- review_requested
push:

concurrency:
concurrency:
group: dev-build-${{ github.head_ref || github.ref_name }}
cancel-in-progress: true

Expand All @@ -28,7 +28,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10.5"
python-version: "3.10"

- name: Install dependencies
run: |
Expand All @@ -46,9 +46,9 @@ jobs:

- if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get install -y lcov
lcov -d .pio/build/native/ -c -o lcov.info
lcov --remove lcov.info '*/usr/*' '*/Platforms/*' '*/bootloader/*' '*/.pio/*' '*/HAL/*' '*/test/*' '*/network/*' -o lcov.info
sudo apt-get install -y lcov
lcov -d .pio/build/native/ -c -o lcov.info
lcov --remove lcov.info '*/usr/*' '*/Platforms/*' '*/bootloader/*' '*/.pio/*' '*/HAL/*' '*/test/*' '*/network/*' -o lcov.info

- if: matrix.os == 'ubuntu-latest'
name: Coveralls
Expand All @@ -59,8 +59,7 @@ jobs:
needs: tests-run
runs-on: ubuntu-latest
steps:
- run: echo "Tests succeed!"

- run: echo "Tests succeed!"

code-format:
name: Code format
Expand All @@ -72,12 +71,12 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10.5"
python-version: "3.10"

- name: Set up Node
uses: actions/setup-node@v2
with:
node-version: '14'
node-version: "14"

- name: Install dependencies
run: npm install -g [email protected]
Expand All @@ -90,20 +89,23 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
project_folders: [examples/projects/l0,
examples/projects/Arduino,
examples/projects/NUCLEO-L432KC,
examples/projects/STM32F4-discovery,
examples/projects/NUCLEO-F401RE,
examples/projects/NUCLEO-F410RB,
examples/projects/NUCLEO-G431KB,
examples/projects/NUCLEO-G474RE,
examples/projects/NUCLEO-F072RB,
examples/projects/NUCLEO-L073RZ,
examples/projects/STM32L4S5_discovery,
# examples/projects/ESP32,
examples/projects/native
]
project_folders:
[
examples/projects/l0,
examples/projects/Arduino,
examples/projects/NUCLEO-L432KC,
examples/projects/NUCLEO-L476RG,
examples/projects/STM32F4-discovery,
examples/projects/NUCLEO-F401RE,
examples/projects/NUCLEO-F410RB,
examples/projects/NUCLEO-G431KB,
examples/projects/NUCLEO-G474RE,
examples/projects/NUCLEO-F072RB,
examples/projects/NUCLEO-L073RZ,
examples/projects/STM32L4S5_discovery,
# examples/projects/ESP32,
examples/projects/native,
]
os: [macos-latest, windows-latest, ubuntu-latest]

steps:
Expand All @@ -113,7 +115,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10.5"
python-version: "3.10"

- name: Install dependencies
run: |
Expand Down Expand Up @@ -152,4 +154,4 @@ jobs:
needs: examples-build
runs-on: ubuntu-latest
steps:
- run: echo "Build succeed!"
- run: echo "Build succeed!"
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
**/.DS_Store
*.icloud
**/*.icloud
**/*.pyc

.gcda
.gcno
Expand Down
52 changes: 27 additions & 25 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@

# Contributing to Luos

Thank you for devoting some of your time and resources for contributing in Luos!
Thank you for devoting some of your time and resources for contributing in Luos!

Your input and your help are valuable, and mean a lot to us. We are convinced that a great open source project can't grow without the help of its community. That's why we want to make contributing to this project as easy and transparent as possible, whether it is about:

* Reporting a bug
* Discussing the current state of the code
* Submitting a fix
* Proposing new features
* Becoming a maintainer
* Improving the flows
* ...
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Becoming a maintainer
- Improving the flows
- ...

This page is written to guide you into contribution of the Luos project, and make your journey enjoyable and gratifying. If you can't find what you are looking for, [please tell us](https://discord.gg/luos)!

Expand All @@ -29,31 +29,32 @@ This page is written to guide you into contribution of the Luos project, and mak

Contribution to a project is about dedicating own time and resources to help a project grow. It can be done in many different ways that are not all about code programming. Anyone can contribute to a project at their own level.

When done right, contribution brings a lot to a project, but also to the contributor.
When done right, contribution brings a lot to a project, but also to the contributor.

For example, it brings together external visions and skills to build, improve or fix parts of this project. Most of the contributors were first mere users of a project before to become contributors. They often got through contribution in order to add a feature they wanted, or fix an issue that was bothering them. The result is also, on their side, the feeling of being part of a great project.

Contribution allows contributors to learn faster and gain skills. In fact, some contributors in open source projects became quite famous and were able to build their carreer around their contributions. This is why contribution also brings a feeling of gratification for participating in something big.

Eventually, it allows to meet new people with common interest while talking to other contributors in the process of adding, improving or fixing.


## How can I contribute to Luos?

You can contribute to the Luos project by creating **issues** for signaling bugs or requesting features, and opening **pull rquests (PR)** to work on these issues. There are also **simpler ways** of contributing. But first, let us introduce to you the three layers of contribution for the Luos project.
You can contribute to the Luos project by creating **issues** for signaling bugs or requesting features, and opening **pull requests (PR)** to work on these issues. There are also **simpler ways** of contributing. But first, let us introduce to you the three layers of contribution for the Luos project.

Before to even begin with the coding contributions, we will talk about the small but important contributions that make the project go on. Then we will describe the two next layers of contribution, from easy to advanced, where it is about creating issues and pull requests, and working on them.

### Where to find the issues and PR?

You can check and follow the [`Luos contribution project`](https://github.com/orgs/Luos-io/projects/21) on GitHub: it displays several tabs with the lists of issues and pull requests opened and/or worked on by the community. Each issue or PR has a status showing its progress (Todo, In progress, Done, etc.).

### Our calls for contribution

You will note that some issues and PR have the label `help wanted`. It is meant as a **call for contribution** for subjects we need community's help to work on.
You will note that some issues and PR have the label `help wanted`. It is meant as a **call for contribution** for subjects we need community's help to work on.

## First layer: the easiest contributions

The easiest contributions are as simple as every day tasks, such as:

- Connect to the [Luos Discord community](https://discord.gg/luos): This is where you can talk about Luos, embedded or edge systems, find resources, etc.
- Talk to Luos around you, with your family, friends, co-worker, etc.
- Give one of your precious GitHub stars ⭐ to our main repo [Luos engine](https://github.com/Luos-io/luos_engine/) (you will need a GitHub account, then just click on the star on the top right of the page.)
Expand All @@ -70,15 +71,15 @@ To make any change in the project, we use <a href="https://docs.github.com/en/ge

### Opening a new issue

Opening a new issue is a part of this layer of contribution, even if it is a very complex one, because it is an easy task to do. However, opening a PR and working on issues may be complex enough to be in the third layers, depending on their complexity.
Opening a new issue is a part of this layer of contribution, even if it is a very complex one, because it is an easy task to do. However, opening a PR and working on issues may be complex enough to be in the third layers, depending on their complexity.

<blockquote>πŸ’‘ Tip<br />
Before to create an issue, be sure that no other issue exists with the same bug you found or feature you need. Then don't forget to follow the rules in the template in order to have a clean issue.
</blockquote>

### Working on basic issues and PR

Some issues are easy to solve, and you barely need to know how to code. In particular, issues related to documentation's typos, sentence fixes, or broken links are great to begin your journey as a contributor.
Some issues are easy to solve, and you barely need to know how to code. In particular, issues related to documentation's typos, sentence fixes, or broken links are great to begin your journey as a contributor.

If you are familiar enough with GitHub, you already know that some issues have the label `first good issue`. They are generally easy issues to begin with.

Expand All @@ -99,10 +100,12 @@ Only the mainteners in Luos organization are able to merge a PR you worked on. I
Here are the general steps to contributing to Luos.

Opening the issue:

- If not already existing, open a new issue and describe the problem or the feature. Follow the attached rule so that it is accepted by the moderation team.
- Be active in the discussion of the issue.

Working on the code:

- Fork the main repository you want to work on.
- Clone the forked repo to your machine.
- Create and checkout a new local branch.
Expand All @@ -111,6 +114,7 @@ Working on the code:
- Push your local branch to your forked remote repo.

Opening a pull request:

- Open a PR in the main repo and link the issue(s) you are working on.
- Comment the PR and add reviewers.
- Work on the eventual requests for changes.
Expand All @@ -126,26 +130,24 @@ Luos is open source. Keep in mind that any contribution you make will be under t

People love thorough bug reports or feature requests. They tend to have:

* Specific, understandable and respectful explanation
* A quick summary and/or background
* Detailed steps on how to reproduce it, if applicable
* Sample code
* What is expected to happen, if applicable
* What actually happens, if applicable
* Any other useful comments
- Specific, understandable and respectful explanation
- A quick summary and/or background
- Detailed steps on how to reproduce it, if applicable
- Sample code
- What is expected to happen, if applicable
- What actually happens, if applicable
- Any other useful comments

### Resources

- [The Luos documentation](https://luos.io/docs/).
- The [GitHub project](https://github.com/orgs/Luos-io/projects/21) listing the issues and pull requests that the community contributes to.
- The [GitHub project](https://github.com/orgs/Luos-io/projects/21) listing the issues and pull requests that the community contributes to.
- [A useful guide to contribution (opensource.guide)](https://opensource.guide/how-to-contribute/).
- [10 steps to contribute to open source projects (betterprogramming.pub)](https://betterprogramming.pub/10-step-guide-to-github-contributions-9aeeb38493a8).


### It is your turn to make some changes! Open a new issue or [go find an issue to work on](https://github.com/orgs/Luos-io/projects/21). Don't hesitate to read [our documentation](https://www.luos.io/docs/), or to post your questions/issues in the [Luos Discord](https://discord.gg/luos).
### It is your turn to make some changes! Open a new issue or [go find an issue to work on](https://github.com/orgs/Luos-io/projects/21). Don't hesitate to read [our documentation](https://www.luos.io/docs/), or to post your questions/issues in the [Luos Discord](https://discord.gg/luos).

[![](https://img.shields.io/badge/Luos-Documentation-34A3B4)](https://www.luos.io/docs/)
[![](https://img.shields.io/badge/LinkedIn-Follow%20us-0077B5?style=flat&logo=linkedin)](https://www.linkedin.com/company/luos)

[![](https://img.shields.io/discord/902486791658041364?label=Discord&logo=discord&style=social)](http://bit.ly/JoinLuosDiscord)
[![](https://img.shields.io/reddit/subreddit-subscribers/Luos?style=social)](https://www.reddit.com/r/Luos)
22 changes: 7 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,36 +3,28 @@
![](https://github.com/Luos-io/luos_engine/actions/workflows/build.yml/badge.svg)
[![](https://img.shields.io/github/license/Luos-io/luos_engine)](https://github.com/Luos-io/luos_engine/blob/master/LICENSE)
[![](https://img.shields.io/badge/Luos-Documentation-34A3B4)](https://www.luos.io/docs)
[![](http://certified.luos.io)](https://www.luos.io)
[![PlatformIO Registry](https://badges.registry.platformio.org/packages/luos/library/luos_engine.svg)](https://registry.platformio.org/libraries/luos/luos_engine)

[![](https://img.shields.io/discord/902486791658041364?label=Discord&logo=discord&style=social)](http://bit.ly/JoinLuosDiscord)
[![](https://img.shields.io/reddit/subreddit-subscribers/Luos?style=social)](https://www.reddit.com/r/Luos)
[![](https://img.shields.io/badge/LinkedIn-Share-0077B5?style=social&logo=linkedin)](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fgithub.com%2Fluos-io)

Version: 3.0.0

# Luos-engine: Empowering Developers

Luos-engine provides a simple and efficient way to manage your hardware products as a collection of independent software features. You can easily create and share these features with your team, external developers, or the wider community. Luos-engine is an open-source lightweight library that can be utilized on any microcontroller or computer, with any network, enabling free and fast development of multi-electronic-board connected products. Choosing Luos-engine for your product design empowers you to develop, debug, validate, monitor, and manage it from anywhere.

## Benefits for the Community

Many embedded developments start from scratch. By using Luos-engine, you can leverage the work already done by you, your company, or the Luos community. The reusability of features encapsulated in Luos-engine services accelerates the time it takes for your products to reach the market while ensuring the robustness and universality of your applications.

* Join the [Luos Discord server](http://discord.gg/luos) to connect with the community.
- Join the [Luos Discord server](http://discord.gg/luos) to connect with the community.

## Best Practices with Luos-engine

Luos-engine promotes organized and effective development practices, ensuring the scalability, flexibility, and adaptability of your product from the initial idea to maintaining an industrialized fleet.

## Let's do this​

* β†’ Try on your own with the [get started](https://www.luos.io/tutorials/get-started)
* β†’ Consult the full [documentation](https://www.luos.io/docs)










- β†’ Try on your own with the [get started](https://www.luos.io/tutorials/get-started)
- β†’ Consult the full [documentation](https://www.luos.io/docs)
Loading
Loading