WEBVTT

00:00.000 --> 00:16.780
Hello everybody here at Firstum Lightning Talks. I want to introduce to you Jean Miguel Solay and Felix

00:16.780 --> 00:23.040
Feitach and they are talking about a logra mesh on library for a logra mesh network.

00:23.040 --> 00:27.000
Give them a warm applause and welcome.

00:27.000 --> 00:29.000
Thank you so much.

00:29.000 --> 00:38.160
Hi everyone. We are going to present you about the logra mesher. We are working with

00:38.160 --> 00:46.800
the Polytechnical University of Catalonia and we are Felix and Dan or so on whatever.

00:46.800 --> 00:52.160
And Juno's about logra. Okay, good.

00:52.160 --> 01:00.160
So one. Well, and logra meshers, somebody knows about it. Yeah. Okay, good.

01:00.160 --> 01:07.160
Well, we are going to present logra mesher with his an open source network. It's a no-to-no communication

01:07.160 --> 01:14.160
and it worked with a distant vector protocol. We are going beyond logra one.

01:14.160 --> 01:22.160
A lot of restrictions about what you can do about the routing protocols and the mesh.

01:22.160 --> 01:30.160
And we tried to develop something that the people could use it and open source it and

01:30.160 --> 01:33.160
do something about it.

01:34.160 --> 01:41.160
We developed it at the UPC since 2021 and I'm currently the main developer.

01:41.160 --> 01:47.160
And we are using C++ and the Git repository is here.

01:47.160 --> 01:50.160
A logra mesher, logra mesher, good name.

01:50.160 --> 01:59.160
And well, we have some applications that they are currently working with the logra mesher.

01:59.160 --> 02:10.160
We have an application that's called logra chat that works in the upper layers of the logra mesher.

02:10.160 --> 02:18.160
Now, logra chat has been converted in something that is an application manager that you could use it.

02:18.160 --> 02:26.160
And you can use for sending messages between between nodes or sending data, whatever data,

02:26.160 --> 02:29.160
sensors, GPS.

02:29.160 --> 02:35.160
And you could use the logra chat and you program the upper layers.

02:35.160 --> 02:45.160
And although our chat will redirect the nodes to the gateway, if you want to add it, or between the nodes.

02:45.160 --> 02:52.160
You can use to one device, one mobile to talk to the devices.

02:52.160 --> 03:04.160
We are using right now DTGOL DBIMS that's our main devices because they are pretty cheap and they are pretty good.

03:04.160 --> 03:13.160
And we are working with SAX1272.

03:13.160 --> 03:18.160
And we have been adding a lot of models.

03:18.160 --> 03:24.160
You can ask for it, we can just start it. It's pretty simple.

03:24.160 --> 03:30.160
Okay, how to work with Laura Meshcher. It's pretty straightforward.

03:30.160 --> 03:36.160
You could just go to the examples of the GitHub repository.

03:36.160 --> 03:44.160
And it's just a set of Laura Meshcher creates in messages and it should be pretty straightforward.

03:44.160 --> 03:49.160
If you just copy and paste it, it will work straightforward.

03:49.160 --> 03:55.160
One of the things is you need to pin the correct pin out of the module.

03:55.160 --> 04:04.160
That is something that I have a lot of issues in the repository that people are a little bit confusing.

04:04.160 --> 04:12.160
Well, we are working with the environment SP2 SP32 microcontrollers.

04:12.160 --> 04:19.160
We have to talk about the DTGOL DBIMS and we use to platform.

04:19.160 --> 04:32.160
That we strongly recommend you. If you are using Arduino or something like that, we strongly recommend using it because it's open source and it's pretty good.

04:32.160 --> 04:42.160
And how you could see if the network is working, if the messages are arriving to your devices and everything.

04:42.160 --> 04:54.160
When Laura Meshcher starts, it will start about the one task that is the routing protocol and it will send messages politically.

04:55.160 --> 05:02.160
At some point one device will receive the message there and you could.

05:02.160 --> 05:06.160
When the messages is processed, you will see the routing table.

05:06.160 --> 05:10.160
At this case, we have two devices.

05:10.160 --> 05:22.160
With that, it's a straightforward device, I don't know how to say it.

05:22.160 --> 05:29.160
And we have a metric that this point is the hub count, only the hub count.

05:29.160 --> 05:35.160
You see one and two and finally it's a roll.

05:35.160 --> 05:44.160
What's the roll? In our Laura chat, we are using what we have defined default mode for gateway device.

05:44.160 --> 05:49.160
And it will be propagated to the mesh.

05:49.160 --> 05:58.160
When one node is connected to the internet, you can say, hey, use this roll and it will be propagated.

05:58.160 --> 06:02.160
Everybody will know where to find a gateway.

06:02.160 --> 06:11.160
You could use another roll, you could configure whatever roll you want, if to propagate through an error.

06:11.160 --> 06:15.160
Okay, we have different tasks in this implementation.

06:15.160 --> 06:21.160
We have the received tasks, send us processed packets, routing protocol and user centers.

06:21.160 --> 06:25.160
You will receive tasks in the middle task.

06:26.160 --> 06:36.160
We will, well, when a packet is detected, the an accessor accessor.

06:36.160 --> 06:42.160
Well, and it will receive an notification for the Laura model.

06:42.160 --> 06:48.160
And it will start the receive tasks that will get the packet from the model.

06:48.160 --> 06:57.160
And then this task will put it in a queue to be processed by the processed packet task.

06:57.160 --> 07:05.160
At this time, you can send packets to that it's another queue.

07:05.160 --> 07:12.160
Well, we have five, five, no, three, three queue.

07:12.160 --> 07:20.160
That once the queue received packet, the queries in packet and the queue user received packets.

07:20.160 --> 07:28.160
When you receive one packet from the Laura model, it will send it to the queue received packet.

07:28.160 --> 07:32.160
And the received task will get all the packets and it will be processed.

07:32.160 --> 07:40.160
There are some different types of packets that I will not go street portfolio that.

07:40.160 --> 07:47.160
And we, the received task just gets the packet and process the packet for different types of packet.

07:47.160 --> 07:52.160
And it will do, it will process it.

07:52.160 --> 08:01.160
The same part is like when you want to send some packet, it will, we have a function that at any time you send the packet.

08:01.160 --> 08:04.160
And it will add it to the queue, send packet.

08:04.160 --> 08:13.160
We have an option with this program that you can use to this cycle.

08:13.160 --> 08:22.160
Or at the time we are using a band that uses, that we can use 100% due to cycle.

08:22.160 --> 08:29.160
And maybe you could use that or it depends on your network.

08:30.160 --> 08:42.160
And finally, the queue user received packets that just want, once some note receives a packet, that's it from the, it's for the upper layers.

08:42.160 --> 08:49.160
It just will be put it in this queue user received packets and it will need to find the user.

08:49.160 --> 08:52.160
Well, the upper layers.

08:53.160 --> 09:04.160
We have a task in the examples you will see that you could just get the packet and process it whatever you want.

09:04.160 --> 09:06.160
Okay.

09:06.160 --> 09:09.160
I'm happy more slides.

09:09.160 --> 09:14.160
So yes, so with these queue, actually, we don't lose packets.

09:14.160 --> 09:20.160
If they cannot be processed at this moment, the note has these queues or buffers.

09:20.160 --> 09:31.160
And the message to the packet stays there until the task becomes ready to, or it's started to process the packet.

09:31.160 --> 09:38.160
So on this slide, we want to show that it works, what we have presented.

09:38.160 --> 09:48.160
It's in this theater repository. You have the examples that you want to comment it and it should be straightforward to try these examples.

09:48.160 --> 09:57.160
But with this, we don't know really if it works, but so we have made this demonstrator application.

09:57.160 --> 10:04.160
These are eight Laura measure notes that are deployed in our campus.

10:04.160 --> 10:11.160
And two or three of them are gateway notes, but all are in the Laura mission network.

10:11.160 --> 10:25.160
They sent periodically data about the routing table to the gateway notes and then we collect the data and make the graphics with this web application.

10:25.160 --> 10:34.160
So this helps us to see that the notes are stable. They are alive. They have the routing table.

10:34.160 --> 10:40.160
We can click on each note and look at the neighbors.

10:40.160 --> 10:43.160
So here we have the eight notes, three are gateway notes.

10:43.160 --> 10:54.160
And one of them is highlighted. This is one in my office and this has, we can see the routing table that it has and some metrics from the routing table.

10:54.160 --> 11:06.160
But this application shows us that the software is operational. It runs, it's not breaking after some time.

11:06.160 --> 11:23.160
So it's operational. It works and this is a demonstration for this and actually it's alive and with this link, it could access now and see the data update.

11:23.160 --> 11:31.160
One more slide. So what we want to do next.

11:31.160 --> 11:41.160
One interesting feature of Laura Meshis that we can talk from the internet to a specific note in the Laura mission network.

11:41.160 --> 11:50.160
Like you see with these arrows. We can ask a note, give us some values or do some operation.

11:50.160 --> 12:08.160
So this is like the other way. Typically it's monitoring, but you know from Laura one, where we receive data periodically, but here with Laura Meshis we can actually query a note and ask for information or give instructions what to do.

12:08.160 --> 12:21.160
And this be it by direction of communication. I think it's interesting to exploit more. We don't know to well what could be good for but we think it's an interesting feature.

12:21.160 --> 12:36.160
And yes, maybe we can think that we could offer services within from inside of the Laura Mesh network that could be requested from the internet because you can really ask for a note for some data.

12:36.160 --> 12:46.160
Of course, it will be much slower than asking a service in the internet, but it's some similar idea.

12:46.160 --> 12:53.160
Another thing to do is we should look at what are the industrial solutions that also offer Laura Mesh network.

12:53.160 --> 13:04.160
We have seen two or three, they're not many, and they are all a property. We have no code about this from these commercial solutions.

13:04.160 --> 13:13.160
And also the technical information is limited, so we don't know very well what is there and there are very few solutions.

13:13.160 --> 13:23.160
And the other dominant player within Laura is the Laura one architecture that everybody uses.

13:23.160 --> 13:37.160
We have to maybe find more examples where Laura Mesh networks are better or more useful than making the Laura one infrastructure.

13:37.160 --> 13:46.160
Also, well it's now a code that we have been working on for a few years, but still we need to do experimentation.

13:46.160 --> 14:04.160
There's a lot of big configuration space with different spreading factors, message sizes, amount of traffic, so we have only looked at certain points in this space for our research, but there's more to try and to test.

14:05.160 --> 14:19.160
And finally, well with this monitoring application from the previous slide, we have this demonstration, but we need more applications where Laura Mesh networks could be useful.

14:19.160 --> 14:42.160
And John is more in contact with developers that we know from the get-to-pository, I'm not so much, so we know people use Laura Mesh her, but we have not really public information that tells us well what they're doing or when is it useful. So this also we need to do more.

