Last Friday we received new motors : the EP4108 320KV with built-in ESC.
We’re particularly interested in those because they have a reflashable integrated BLHeli ESC. It turns out that, starting with BLHeli_S v16.5, which is an open source ESC firmware, a new protocol is supported to replace the old PWM control method : DShot. It’s a serial protocol where speed information is encoded in 16-bit frames, instead of analogically in the duty cycle of a PWM signal.
There are three generations of BLHeli firwmare : BLHeli, BLHeli_S, and BLHeli32 (wich is no longer open source), each with several versions.… Read more
In our design, we want to use a STM as our main processor bu also an ESP to deal with the network part of our device. This imply a communication between those two.
The low-level protocol
At first we wanted to use the UART protocol. Yet because we will have very strong magnetic fields, we migh need a more reliable protocol. We decided that we will implement both an UART and an SPI interface and test both on the device. As of today we have implemented the UART communication but as we don’t have on our development board (iot-node) any RTS/CTS pin that can be mapped to the arduino connectors we used delays to avoid the overrun we initially had.… 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