# Network layer for SimpleFOC (Luos)

**URL:** https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602
**Category:** developement
**Created:** [January 21, 2022, 9:42am UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602 "2022-01-21T09:42:47Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![Nico-Luos](https://community.simplefoc.com/user_avatar/community.simplefoc.com/nico-luos/32/2282_2.png) [@Nico-Luos](https://community.simplefoc.com/u/Nico-Luos)
#### Post date: [January 21, 2022, 9:42am UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/1 "2022-01-21T09:42:47Z")

</div>

Hi everyone,

I plan to create a code example combining Luos and SimpleFOC.  
At Luos, we are working on embedded microservices, or how to make multiple features (motor, sensor, app) across numerous boards quickly work together =\> [https://www.luos.io](https://www.luos.io)

The idea is to use as many SimpleFOC boards as we want on a machine with any other devices, and we plan to make a simple 3DOF arm to move marble with it.

But first, I need some boards to work on, and there is no official SimpleFOC board available ☹ .  
In you point of view, what is the setup I should buy to start with?

Also, did you see any way to make this development useful for the SimpleFOC community?

---

<div class="post-metadata">

### Author: ![Valentine](https://community.simplefoc.com/user_avatar/community.simplefoc.com/valentine/32/1024_2.png) [@Valentine](https://community.simplefoc.com/u/Valentine)
#### Post date: [January 21, 2022, 3:46pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/2 "2022-01-21T15:46:05Z")

</div>

> [@Nico-Luos](#):
>
> need some boards to work on, and there is no official SimpleFOC board available

@Nico-Luos

Welcome to the forum.

There are boards, but all components are out of stock due to the current world-wide silicon shortage.

> **[Arduino Simple Field Oriented Control project](https://simplefoc.com/simplefoc_shield_product)**
>
> Arduino Based Field Oriented Control library and shield aimed to demystify the FOC algorithm for the hobby community.

> **[Board Fabrication](https://docs.simplefoc.com/arduino_simplefoc_shield_fabrication)**
>
> Arduino SimpleFOCShield board fabrication

The closest to what you want may be the SimpleFOC Arduino shields, or some of the boards listed here

> **[Drivers](https://docs.simplefoc.com/drivers)**
>
> Arduino Simple Field Oriented Control (FOC) library .

To my knowledge, they are also having manufacturing issues.

I’m currently developing a fully integrated board

[https://community.simplefoc.com/t/experimental-high-current-driver-30a/1481/8?u=valentine](https://community.simplefoc.com/t/experimental-high-current-driver-30a/1481/8?u=valentine)

That one however is in development and will not be publicly available until March perhaps.

There may be others on this forum that could give you more input and references.

The most important question is, what are your use cases?

Cheers,  
Valentine

---

<div class="post-metadata">

### Author: ![runger](https://community.simplefoc.com/user_avatar/community.simplefoc.com/runger/32/395_2.png) [@runger](https://community.simplefoc.com/u/runger)
#### Post date: [January 21, 2022, 8:47pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/3 "2022-01-21T20:47:32Z")

</div>

Dear @Nico-Luos , welcome to SimpleFOC!

I actually recently looked at your website, after a friend pointed it out. It would be exciting to have SimpleFOC work as part of the Luos!

Would it be a service? Would you “bundle” SimpleFOC including motion control, FOC, PWM driver and sensor as one Lous ‘entity’ (whatever the representation is that would best fit)? Or would you intend to seperate these components? The integration between these needs to be quite tight, I’m not sure the latter would work well…  
It will certainly be interesting to see how this develops, and I would be happy to support the effort by helping with SimpleFOC integration questions if I can.

In terms of your question regarding the boards, you could certainly begin development with any Arduino compatible MCU and no motor, in open-loop mode you won’t even need the sensor. Obviously this won’t actually move anything but the whole communications and simpleFOC setup could be developed on while you wait for the right hardware.

In terms of drivers, I think the clones of the SimpleFOC shield can be ordered?

> **[Makerbase SimpleFOC Shield V2.0.4 FOC BLDC Motor Controller Board Arduino...](https://www.aliexpress.com/item/1005002496275228.html)**
>
> Smarter Shopping, Better Living! Aliexpress.com

This isn’t quite the shape you’d want for a robot arm, but would certainly get you started on the development of the comms etc… and with moving motors 🙂

In terms of a robot arm capable board, you could ask about the [Dagor](https://github.com/byDagor/Dagor-Brushless-Controller) controller…

---

<div class="post-metadata">

### Author: ![Antun\_Skuric](https://community.simplefoc.com/user_avatar/community.simplefoc.com/antun_skuric/32/21_2.png) [@Antun\_Skuric](https://community.simplefoc.com/u/Antun_Skuric)
#### Post date: [January 21, 2022, 9:46pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/4 "2022-01-21T21:46:59Z")

</div>

Hey Nico, happy to hear form you!

The embedded community in Bordeaux is not so large and I am very happy to hear that you are interested in exploring the SimpleFOC. 😃

We’d definitely be happy to hear more about your vision of the integration of the SimpleFOC to Luos.

At the moment the SimpleFOC shields are out of stock, but I do have some (used) which I would be very happy to share with you. Let me know if you’d be interested! 😃

---

<div class="post-metadata">

### Author: ![Nico-Luos](https://community.simplefoc.com/user_avatar/community.simplefoc.com/nico-luos/32/2282_2.png) [@Nico-Luos](https://community.simplefoc.com/u/Nico-Luos)
#### Post date: [January 24, 2022, 12:59pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/5 "2022-01-24T12:59:29Z")

</div>

Guys, thank you for the warm welcome,

I heard about you from @Sam (thank you Sam 😉 ), and I continued spreading the message by introducing SimpleFOC to Pollen Robotics (my first company). I think they could be interested…

@Antun_Skuric world is so small, yes I am interested to share some of your boards to bootstrap the project at least we have to share a coffee and talk.

I will start this week by selecting the easiest MCU to start and compile an open-loop version as **runger** (I can only mention 2 people per post for now) advised.  
I have tons of things on the way so I’m not really sure about how committed I will be, any help is really welcomed.  
I will definitely need some help with the motor part.

At Luos we already have users running more than 20 crazy FOC brushless motors in an advanced atomic grade robotic arm. So this is not my first time integrating FOC in a Luos’s service but my first time actually writing code about the motor.

## About Luos

To give you more context about the project driving me here. The Idea of Luos is to simplify compatibility between things. To do that we encapsulate a piece of firmware into a **package** exposing a **service**. In the SimpleFOC case, this service will be a motor driver (2 services if we have 2 motors).  
**Services** are just a fancy API encapsulating a feature.  
**Packages** are services code folders.  
Because services are loosely coupled Packages are independent pieces of code you can easily move from one board to another (a kind of tiny container for embedded systems).

Using the service interface you will be able to send or get the position, speed, torque, trajectory, current, temperature, or anything you want. Luos will allow you to send/receive information from theoretically anything. You can control a collection of motors from any kind of board through a network, or directly using python on your computer, or both at the same time.

We put services into packages to easily share a feature and plan to have a registry soon listing all available packages (a kind of app store). We want SimpleFOC to be one of the first packages.

## About the project

To start working on SimpleFOC we plan to add some more context. Currently, we are working on a Test/Demo system able to perform autotest of our library on multiple collaborative devices running a marble circuit. The development of this test system will be publicized on various content explaining how we make it. In the end, users will be able to take control of this system through our website to see any interaction between services (a kind of online remote system debugger).

We plan to create a 3DOF arm to move some marbles. Because the idea of Luos is to make things work together, we planned to create this 3DOF robot with 1 stepper, 1 BLDC, 1DC. We already have the DC and stepper running, and plan to do the BLDC with you. Perhaps this robot will be linked to ROS or Unity, we don’t know yet.

**So, step 1: Choose the MCU!**

[![](https://media.giphy.com/media/BpGWitbFZflfSUYuZ9/giphy.gif) ](https://media.giphy.com/media/BpGWitbFZflfSUYuZ9/giphy.gif)

---

<div class="post-metadata">

### Author: ![Valentine](https://community.simplefoc.com/user_avatar/community.simplefoc.com/valentine/32/1024_2.png) [@Valentine](https://community.simplefoc.com/u/Valentine)
#### Post date: [January 24, 2022, 4:34pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/6 "2022-01-24T16:34:54Z")

</div>

> [@Nico-Luos](#):
>
> send or get the position, speed, torque, trajectory, current, temperature, or anything you want. Luos will allow you to send/receive information from theoretically anything. You can control a collection of motors from any kind of board through a network, or directly using python on your computer

Wow. Very interesting. That’s super-ambitious. I’m very curious and will be watching very closely. Currently I’m working on something like that and the problem is so hard that I ended up designing my own hardware and writing my own network layer and encryption algorithms and protocol in low-level C (and some assembler) else nothing else worked. This is what I had to design from scratch (fabricate from discrete components) to make it work in order to achieve near-zero latency and hard cryptoprotection and DOS/attack protections.

 ![image](https://community.simplefoc.com/uploads/default/original/2X/6/68a3f3ffb294191cf240006a53106cbbf9430d9e.jpeg)

I’m very interested how you could solve the problem with off-shelf components and a scripting interpretive language. That would open the field to more people who cannot afford a custom solution.

Very interesting.

Cheers,  
Valentine

---

<div class="post-metadata">

### Author: ![Nico-Luos](https://community.simplefoc.com/user_avatar/community.simplefoc.com/nico-luos/32/2282_2.png) [@Nico-Luos](https://community.simplefoc.com/u/Nico-Luos)
#### Post date: [January 24, 2022, 6:16pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/7 "2022-01-24T18:16:13Z")

</div>

I’m not sure Luos could solve entirely your problem here because it can work with any physical communication layer. So you still need to deal with your hardware, encryption, and security issues depending on your product constraints.

We have a simple serial low-level management allowing us to do multi-master and stuff with no additional hardware but it can’t work in any conditions. Others need specific hardware.

For now, to interact with something like python you need to add an extra service on the embedded side called Gate translating Luos’s messages into Json and streaming it to your computer.

You can experience all of it by following our get-started : [https://docs.luos.io/get-started/get-started](https://docs.luos.io/get-started/get-started)

We are currently working on a multi-phy feature allowing us to put the Gate service (and any other) directly into the computer or cloud.

---

<div class="post-metadata">

### Author: ![Valentine](https://community.simplefoc.com/user_avatar/community.simplefoc.com/valentine/32/1024_2.png) [@Valentine](https://community.simplefoc.com/u/Valentine)
#### Post date: [January 24, 2022, 6:26pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/8 "2022-01-24T18:26:06Z")

</div>

> [@Nico-Luos](#):
>
> not sure Luos could solve entirely your problem

My problem is that I need to control a large number of nodes simultaneously in real-time, where real-time is 10ms or better round trip end to end, over 10 km or more, including full encryption and network protection.

I did look into the link you sent me but didn’t quite get it, perhaps I’ll just wait and see what you come up with and you do a few use cases first.

It’s an interesting project.

Cheers,  
Valentine

---

<div class="post-metadata">

### Author: ![Nico-Luos](https://community.simplefoc.com/user_avatar/community.simplefoc.com/nico-luos/32/2282_2.png) [@Nico-Luos](https://community.simplefoc.com/u/Nico-Luos)
#### Post date: [February 25, 2022, 2:35pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/9 "2022-02-25T14:35:59Z")

</div>

If you want to make it 10ms real-time you will probably need to consider having a time synchronization or something allowing you to define an event date.  
We have a specific way to deal with time synchronization for distributed architectures at Luos.  
I am currently working on a blog post called “Distributed latency-based time synchronization” to explain how we make it.

---

<div class="post-metadata">

### Author: ![Valentine](https://community.simplefoc.com/user_avatar/community.simplefoc.com/valentine/32/1024_2.png) [@Valentine](https://community.simplefoc.com/u/Valentine)
#### Post date: [February 25, 2022, 5:31pm UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/10 "2022-02-25T17:31:51Z")

</div>

> [@Nico-Luos](#):
>
> probably need to consider having a time synchronization or something allowing you to define an event date

@Nico-Luos

Perhaps you misunderstand the use case, I mean, 10ms round trip data packet, not within 10ms synchronization of the time.

---

<div class="post-metadata">

### Author: ![Nico-Luos](https://community.simplefoc.com/user_avatar/community.simplefoc.com/nico-luos/32/2282_2.png) [@Nico-Luos](https://community.simplefoc.com/u/Nico-Luos)
#### Post date: [May 23, 2025, 9:10am UTC](https://community.simplefoc.com/t/network-layer-for-simplefoc-luos/1602/11 "2025-05-23T09:10:07Z")

</div>

I just crashed back here and realised that this topic has no closure…  
Here is a video about Luos + simpleFOC

[![](https://img.youtube.com/vi/XLMP-gg-LrU/maxresdefault.jpg "How to use Luos with SimpleFOC?") ](https://www.youtube.com/watch?v=XLMP-gg-LrU)
