SwARM: Final Countdown


This first part of the week was as intense as the last month, we finished integrating the calculation of the trajectory with the PIDs, so robots are moving. Now, the challenge is to finish integrating the data from all the sensors: the decawaves, the IMU and the coding wheels.
For now it doesn’t work but solutions are being tested.

Also this first part of the week we prepared the rational part behind the presentation that we will be making on Friday. Perceval and I wrote the slides and a complete document to support us when answering the questions we might be asked during the presentation.

Today I built four more robots and tested their motors and coding wheels with Arnaud’s help. Because of an unfortunate short-circuit, a board is now bricked 🙁 So there will only be 5 moving robots in the choreography.

We all really want to see the robots dance, so there won’t be much sleeping tonight either…

Next post will be my last,

Have a nice week !


Today’s batch

A first bite of our project

SwARM: Fever Dream

Hey guys,

This weekend we spent all our time in A406 to go as far as possible with our project.

We worked on the PIDs, which are working fine now as you have seen in Perceval’s post on saturday. We defined the robots’ limits regarding how fast it can execute a rotation or move in a straight line. These values are written in our wiki, in the choreography section.

Today we are integrating our different features, the most visual and critical being the PIDs and the choreography. For now there seems to be a problem but we are on the verge on finding the solution (I hope so :).

Also we fabricated more robots to have all the ones we need for the presentation on Friday.

I wish us good luck for the rest of the night,

The deadline for pushing to master is closing!


SwARM: Day One


This first part of the week ended in a positive way, we finally got the motors to work and the coding wheels seem to give us good feedback on what’s happening. Today I even finished my day by selecting the PID coefficients for the angle enslavement.

Tomorrow I have two multiple hour exams so I won’t have much energy to spend on the project but I want to choose the PID coefficients for the distance enslavement in order to be able to start testing the movements Friday. Then during the weekend we should not have anything to do because the code that all my teammates have written is perfect 😉 That would be nice but I really look forward to this weekend as we will spend some quality time working on the project and all this time working with Alban, Arnaud and Perceval has made good friends of them.

Good night!


SwARM: My way

Hey guys,

This week was very intense for our whole group, we’ve been working very hard to test and to improve our code for the robots.

We have corrected some mistakes in our code to drive the motors but there seems to be a lot to do and to understand in order to have them move in a pretty way.

We have built more of the robots, we should have about ten of them by the end of the week. Yesterday we were all together building their coding wheels and integrating them into the motors in order to test modified motors as we need them for our project.

So this week we will keep trying to fix the motors’ driver and finish testing the other features as well as improve all of them.

Next Sunday will be the last day of the project, after that we will only have the possibility to perfect a few features for the presentation (that will take place next Friday!).

Enjoy your evening and your week!


SwARM: She’s mine

Hey Guys!

Yesterday we started working on soldering the PCBs. Alexis began with 11 of them and today we decided to finish 1 to test it and see if everything was alright with the PCB and if it needed some patches.

So around 1200 today we started the tests on the PCB, LEDs are working fine and it seems that the motors related components are fine. It was funny to see how everybody wanted to test his code first 🙂
But we still have to debug the code that controls them because we do not understand how they are controlled at the moment… Tomorrow a long day awaits us!

Also Alban is finishing the code that calculates the trajectories and Arnaud is working on integrating a new function to the coding wheels that should allow us to know if the wheel is rotating clockwise or not clockwise.

These are the last days of the project so we spend a lot of time and energy on it because we all want to see it working. But this weekend some of us will have to spend some time working on other things as we have some exams coming by the end of next week…

Enjoy the rest of your week!


SwARM: Never, Never gonna give ya up

Hey guys,

The end of the week was full of major steps towards a functionnal robot!

I adapted my code for SwARM’s robots and I perfected the enslavement and the dissection of the trajectory. Our robot can move straight forward, in a curve or in a specific shape as a square. Of course it’s not perfect because for now I only rely on the feedback of the coding wheels, but starting tomorrow, as we should receive the PCBs, we should have a robot with DWM, IMU and coding wheels so we will be able to fusion the data of all three sources.

Also Perceval and I documented the choreography, its shapes and its dimensions, both in time and distance.
You can listen to our medley to prepare you ears for our presentation 🙂

Have a nice evening and a nice week


SwARM: Aloha

Hey guys,

This was a nice first part of the week! Even if we did not receive the PCBs, which we should receive next Monday, we progressed a lot on the choreography and on multiple parts of the project.
We had to do a lot of planning in order to plan the end of the project and have clear objectives to fulfill.

So since Monday I have worked on moving the robots and they make progresses every day. Today I even selected values for P, I and D coefficients for our testing prototype and this one can move in a straight line and make a clean half turn.

Also Samuel presented us another way to calculate a trajectory between two points, Alban is implementing it and it will replace our current method by the end of the week normally.

This second part of the week I have to adapt my code for SwARM’s robots so that Monday we start testing and I will keep working on the choreography and on the movements of the robots.

Enjoy the rest of your week,


SwARM: Hells Bells

Hey guys!

Waouh this half of the week was tough on me, I got really sick and had but a dozen hours peace that I spent on the project.

First I didn’t work on adapting my code to the MCU that we will have in the robots because I chose to spend time on the movements, in order to improve and correct the code that controls and interprets the motors and their feedback through the coding wheels. So now the code that calculates the position of the robot is fully functionnal.

By discussing with Samuel I understood that I had missread the multiple documents on polar enslavement and that I should not control the motors’ power with the PID distance output for the left wheel and the PID angle output for the right wheel, but instead cmd_right_wheel = cmd_dist + cmd_angle and cmd_left_wheel = cmd_dist – cmd_angle!! Anyway I still have to decide for an interpretation to give to negative and to great output values. Should the wheel go in reverse if output is negative or is it okay to stop the wheel ? And if we have an operational prototype I will calculate appropriate PID coefficients too 🙂

Unfortunately I haven’t had the opportunity to test this correction on the robots but I should feel better tomorrow and I should then go to A406! 🙂

Also Perceval and I have found a few very concrete ideas for choreographies for the final presentation! I will say no more about them because they should be a surprise 🙂

Either tomorrow or Tuesday we will receive the PCBs! So we will start working with them as soon as possible, adapting our code to their MCU and I will continue to work on the movements of the robots.

Have a nice week,

And don’t forget to wash your hands often if you want to stay healthy ^^


SwARM: Outside the wall

Dear all,

This first part of the week I was really busy with some exams and interviews for the internship that we all have to do this year. So there was not any major progress except the fact that we confirmed that our code for moving around the robots is a strong root. I tested it with wheels on the prototype and it moved. Also I finally successfully removed the burst on the motors of the prototype after each reset of the robot.

I will still be busy this second part of the week with some things I still have to do for my internship applications but I will definitely spend a lot of time on the project this weekend polishing the code of the moving branch and create and adapted version that we will be able to load on the boards that we should receive on Monday.

May you enjoy the rest of your week,


SwARM: Sweetwater

Hey guys!

We did it! This week we made real progress on how we are going to guide the robots through their journey 🙂 After many new ideas that we considered and that I started to implement, we decided to settle for a solution that approximates trajectories with circle portions.
We dissecate a “big” move into “small” ones. As you can guess we still have to define the “big” and the “small” but the code is in place and I have had it working just this afternoon.

This means that we are now able to have the robot hypothetically move from one position to another! This remains hypothetical because this was only tested on our prototype that doesn’t have wheels 🙂 But it is a giant leap for SwARM.

This week I will keep working on the code that will have the robots move around and we might make our first tests on the PCB that we should receive this week 🙂

Lots of fun and work ahead then!

Have a nice week,