I kept preparing the timing test for the ESP32 today. The challenge was to understand how FreeRTOS works, of course, but also to grasp the workflow of the WiFi on the devkitC.
The example I found first was simply about coding a usual UDP server/client pair. However, when I arrived to the actual testing moment, I realized that there was barely any chance of it working as I did not even provide a basic username/password to my program. So I had to discover more about how to setup the actual WiFi connection.
It eventually worked out. However, I am now stuck on a very annoying problem.… Read more
Today, I started to implement the code necessary to test the possibility to use WiFi for time reference between Phyllos as explained in this post. Although we mainly use ChibiOS for our applications, the documentation for ESP32 is in FreeRTOS so the code for this test will also be using FreeRTOS.
The plan for the test is to connect as many devkitC as possible to a main board (here it will be an Olimex E407 programmed with ChibiOS). The main board will be the master over one of the devkitC. When it will start the test, the slave will broadcast an UDP packet.… Read more
The power supply is extremely important and is quite complicated in a Phyllo since there are so many PCB as well as several voltages needed.
Capacitor reliant power supply
We have 79 LEDs working under 600mA which sums to 48A. As we flash 30 times every second and each flash lasts around 100us, the LEDs are on at most 0,3% of the time. Thus the average power supply needed is 0,16A.
We have decided to rely on capacitors to fully provide the LED power supply. There are two main reasons for this choice. First, the LED are switched off most of the time.… Read more
Happy New Year everyone, hope you enjoyed the holidays !!
Today we are going to talk about the latest trends of our hardware architecture.
New PCB disposition to drive the petals
We used to try to drive each LED with its own processor. However we could not manage to get every component to fit on the PCB petals. Moreover, the processors were underused as we barely needed half of their timer outputs. Therefore, further inside the Phyllo, we decided to add a layer with slightly bigger PCBs (let’s call them the petal controllers). They have a STM32F207VIT6 which can drive up to 10 LEDs.… Read more
Yesterday we mostly worked out the detail of how we’ll be detecting neighbouring Phyllos.
Without further ado, here it is :
Step 1 : Discovery and identifier attribution
The first step for the Phyllos is to establish collectively which other Phyllos are present. Each Phyllo must therefore broadcast its presence and be given an identifier.
This step must be repeated regularly in case Phyllos are switched on/off.
As described in this post, we plan to base the protocol on wifi broadcast: a Phyllo regularly broadcasts its IP over wifi to signal that it is still on. The others register this IP address in a local running Phyllos table.… Read more
In order to display animations that flow back and forth between several Phyllo, the Phyllos need first to be able to know each other’s position.
For now, we have reduced this problem to this : to display animations in the proper orientation relative to its neighbours, each Phyllo needs to know the direction of each neighboring Phyllo. They have no real need to know exactly how far they are from each other.
Associating detection and communication
It is not enough to merely detect Phyllos if the detection method doesn’t allow us to distinguish one Phyllo from another. We have to be able to both talk to a specific Phyllo AND know where it is physically located.… Read more