Ah Qi, here we go again

After seeing Alexis, we noticed that the package of the previous component that we thought would do the job was based on BGA package… so we’re back to the previous step !

Basically the ideal component should :

  • be Qi compliant (low power profile and extended power profile)
  • have a 15 W power output
  • not have a BGA or CSP package which is definitely the hardest part

For a moment I thought I found the perfect match in the TS81000 : Qi compliant, up to 40W power output and QFN package ! Well yes, but actually no.

Alexis brilliantly pointed the fact that this component was only the auxiliary part of the receiver, and the other part which was the TS5111 has a WCSP package. This makes this solution unsuited to our project.

I also came across the BQ51013 which is interesting but can only deliver up to 5W. We think this might be too low for our project but as we still haven’t a precise idea of the power consumption of our device we might come back to it later.

For now we’re going to put aside the wireless power transmission and will stick to a basic USB port, that we will try to hide as much as possible.

Architecture: “The more it’s simple, the more it’s simple”

First, the work of some students

We spend a whole week working with just a few responses from Alexis, so we try on our own to find out how to make our architecture. This is what it would look like

We spend a lot of time exploring the best components, as you may have seen it in our previous posts.

We would have to make a lot of FPGA programming for the I/O expander, but we thought it was our unique solution.

We spend some times looking for a sensitive captor touch with only one key and the way to use it because we wanted to use the sensitive captor touch of an ESP32-WROOM-32D.

Then, destroy everything with a single Alexis and build again

We had a meeting with Alexis yesterday. He explained to us that the sensitive captor touch of the ESP32 wouldn’t do the job through the wood. One component to change. Fortunately, we already found a 3-key sensitive captor touch, we just have to make sure it will have enough strength to work through the wood.

Then, we spoke about the price and the length of the device. With 64 I/O expanders, Touch would be too expensive for funding it, that’s why we choose to make only a 16×16 grid of marbles.

The next step was the I/O expander: we cannot use them for our hall effect sensor because they are analogic and not numeric. We thought to change for numeric ones but we will come back to them later

We still need a lot of I/O expander, that’s why we need to find a better architecture for our H-bridge. Alexis first thought to make something similar to the architecture of a digicode. One half H-bridge by line, and one by column. If we want to activate the third coil of the fourth line, we would put VCC on the third half H-bridge and the ground for the fourth half H-bridge.

Finally, taking a look at our H-bridge gave us the best solution. This H-bridge can be controlled by an I2C bus, and we can give each of them a special address, so they can be on the same bus: instead of 32 pins, we just need to use three pins. Two for the I2C bus and one for the address, that we will link to some shift registers to control their address.

Now, are we happy? Not exactly, we still need to find how to control our hall effect sensors. A brief look at component gives us our last solution. We would use some analog multiplexers. So, here is our new architecture.

And now?

We are waiting for some coils and Hall effect sensors, and we will begin our tests.

To Qi, or not to Qi, that is the question (that was actually)

About Wireless Power Transmission

Because we wanted to create a design centered around aesthetic for our device, we chose to implement wireless charging for our battery.

There are plenty of ways to implement WPT. First of all there is near-field power transmission and far-field power transmission.

For our project, we will focus on a near-field power transmission. In this field, one of the most common technique is inductive coupling. But it is not the only one : capacitive coupling is an interesting technique for our project.

Capacitive coupling VS inductive coupling

Because inductive coupling is based on converting AC current to a magnetic field, there is a high risk that it will cause strong interferences and perturbations with the magnetic fields of the marbles, thus complicating our control over our device.

Regarding this point, capacitive is interesting because relying on a different medium to transfer energy i.e. not a magnetic field. Alas, the major problem with capacitive coupling is that there’s poor documentation on the subject and therefore is hard to implement.

In the end we choose to go for inductive coupling which is very well documented with the advantage of having many organizations working on the subject.
To counter undesirable effects of inductive coupling, we plan to implement electromagnetic shielding.

Qi standard and the Wireless Power Consortium

The Wireless Power Consotium is one the biggest and most important entity working on WPT. They established the Qi standard which is currently in version 1.2.3, with the specification downloadable here.

At first, when looking how we were going to implement Qi compliant WPT we looked for easy implementable solutions like the Würth Elektronik development kit after seeing a similar solution suggested by our comrades working on LitSpin.
Unfortunately implementation of the said kit would be too much space consuming and we would end up with a much thicker device than expected thus possibly ruining the aesthetic aspect.

Because of that and the fact that implementing by ourselves the Qi compliant receiving part of the WPT chain might involve an unknown quantity of unexpected work, we looked for other solutions which weren’t necessarily Qi compliant.

Long story short, the chinese components we could have used as a replacement would mean forgetting interoperability between transmitter and receiver. Therefore after discussing about this with Alexis, we decided that it’d be more safe to stay on the Qi standard as the specifications on the chinese components were vague. Moreover, using the Qi standard we’ll easily be able to order a Qi compliant power transmitter, already packed and beautiful like this one (this one has bad reviews but it’s just an example of the aesthetic we’re looking for).

How to Qi

We will be working on the Mobile Device part of the Wireless Power Charging | Source : http://www.idt.com P9415 datasheet

The research for Qi-compliant Wireless Power Receiver IC ended up being longer than expected because the components category name isn’t consistent throughout websites. In the end, and after going through pages and pages of datasheet we found this device that we need to further discuss with Alexis before order.

Particularly we need to know what’s behind the two arrows between Receiver and Load on the above image.

Going back and forth the H-Bridge

We need to be able to drive our little magnet marbles and flip them according to a magnetic field direction or the opposite one. To do so current must be able to flow both ways through our self-inductances. Moreover we’re going to need current’s intensity of a much higher value than what is able to flow out of or flow in the GPIO.

One way to do so, is to use a H-Bridge as we can see on this site that we’ve already mentionned in an earlier post.

What’s an H-Bridge

Basically an H-Bridge is a electronic circuit built with drivable switches in a way that allows us to flip the voltage on a load and thus allows us to flip current polarity.

H-Bridge circuitry in red | Source : en.wikipedia.org

There are two important configuration for us :

  • the configuration where S1 S4 are closed and S2 S3 are open and
  • the opposite configuration

By switching from one mode to we are able to revert current polarity by changing which voltage source terminal is connected to which load terminal.

FET transistors are usually used as switches to drive the load. Below we can see a typical implementation with NMOS and PMOS.

H-Bridge implementation with MOSFETs | Source : os.mbed.com

How we plan to implement the H-Bridge

There’s two ways to implement H-Bridge circuit. Either we do it ourselves hand picking the transistors and doing the circuitry ourselves or we pick a H-Bridge driver integrated circuit. We choose the later solution as implementing the H-Bridge by hand can be tricky and unnecessarily complicated for our project.

Moreover, H-Bridge drivers are more advantageous as they have protections against over-voltage, under-voltage, overcurrent etc.

How we choose the driver

There’s two ways to implement H-Bridge circuit. Either we do it yourself hand picking the transistors and doing the circuitry yourself or we pick a H-Bridge driver integrated circuit. We choose the later solution as implementing the H-Bridge by hand can be tricky and unnecessarily complicated for our project.

Moreover, H-Bridge drivers are more advantageous as they have protections against over-voltage, under-voltage, overcurrent etc.

How to choose the driver

There are many criterias that we considered to choose the driver.

First of all, one criteria that seems obvious but we didn’t know about before talking with our professor in charge, is that the driver must be designed to be used with inductive loads. This is not always the case as we can find H-Bridge drivers for capacitive loads.

Initially we’d like to have a 32×32 marble matrix and if not possible a 20×20 matrix at least. It is consequently obvious that price is a critical criteria. As each of our marbles needs to be individually drivable, we often need for one component to order as many as we have marbles.

One way to reduce the number of H-Bridge drivers we’ll need, is to look for drivers designed for multiple loads. This is an important criteria as it possibly allows us to reduce the final cost for this component but also because it may also allows us to gain space on our PCB.

Likewise, driver package size is equally important as we’ll need for each marble a set of components (self-inductance, Hall effect sensors, H-Bridge drivers). It’d be too bad to have to space out the marbles because we don’t have enough space under them to fit all components.

Last but not least are the voltage of the power source and the maximum current that can drives through. We estimated that we won’t use currents higher than 1A to generates the magnetic fields so we looked for drivers in this range. As for the power source, we thought that 7V should be more than enough.

Giving all these criterias we looked for a good compromise and we ordered these two drivers for testing :

Choosing our components: “We are dwarfs on the shoulders of giants”

For our project, we need to test our components in order to find the best way to control our marble. Good news, our project has been done in other ways before. That’s why we take a look at this webpage: https://wiki.fuz.re/doku.php?id=projets:datapaulette:1bit_textile (in French)

Diameter of the marbles

Our first idea was to choose the smaller marbles, which have a diameter of 5mm. I have some of these marbles at home, so I tried to make a prototype with some cardboard.

Conclusion: my biggest fear was that a marble would move the other marbles when we rolled it (because of a too big magnetic field), but with my prototype, they don’t. If no, we would have to always create a magnetic field with our coils and that’s impossible. We would have to change our project for toroids, which are uglier. The other thing is the fact that 5mm marbles are not really easy to roll. That’s why we choose to order 6mm, 8mm and 10mm marbles for our test

The coils

The other project also uses coils. The main difference is the fact that our coils are not hand-made, and our coils are under the marbles, not around them. However, they should have the good range for the coil. We just have to do a little calculation we learned when we were in Classe Préparatoire, with the value given by the other project.

60 turns, 50mA, 6mm circle and a distance equal to almost 0: the coil is about 0,6mH

With a 0,1mm diameter wire and a typical resistance of 5A/mm², we find an RMS current of almost 400mA

We choose bigger coils because they would ask less current from our processor for working. We finally ordered ten coils of 3mH, ten of 1mh and three of 680µH (the last stock, if we choose theses ones, we would take an equivalent) for our test

Hall effect sensor

For this sensor, we have to choose which type we want. Understanding the different type is not easy, but you can find plenty of web articles about this. The best thing is to have a linear sensor because we will have a better idea of the state of a marble. When it will be on one way, the field will be negative and the sensor’s tension under 1,75V and on the other way, it will be positive and the tension over 1,75V. We also choose a directional sensor that gives the field in the three directions of space. It might be harder, but we could choose only one sensor for four or nine marbles if it works well and if the fields are easy to distinguish

I/O expander

Finally, my last contribution for today is the I/O expander. First, we look at the possibility given by the project Datapaulette: shift register. After a short time of reflexion and the help of Alexis, we understand that it was a bad idea because we cannot control as much as we want the current in the coils. We will have to choose an FPGA that will give us enough I/O for our device. We need a total of 2048 I/O pins (one for the value of the Hall effect sensor and one for the current on the coils, the others will be linked to the ground or to VCC). We will wait for the end of the tests to choose our expander, but it should be one of these expanders. We just have to choose which number of ports we want by expander.


Touch is an ambitious project which objective is to create a new kind of display device.
Want to know more ? Look here (or click on the menu above)!


Touch is an ambitious project which objective is to create a new kind of display device. Our goal is to have a wooden box with magnets on the top. Those magnets will have one color on each side and will be controlled thanks to coils. It will allow us to display 1 bit pixel art. 

The main objective is that the user will never think of the technological aspect of the device and will mostly see the device as a magic box.


The first way to use a Touch will be to display images sent by a server. All the user will have to do is to connect the device to the WiFi. We also plan to do an offline mode during which the device will loop over the last images it received. 

(colors are not fixed)

The second way to use the device will be to send images to a friend who also have a Touch. As of now, every boxes will have a unique identifier (drawn on the bottom left-hand end corner of the box). It will be a picture of a line of 32 blocks. To contact a friend all you will have to do is to touch the button on the side of the box, move the bottom line of your box to make it match your friend’s identifier, touch the button again and voila ! Every changes he will do on his Touch will appear on yours.

The third way will be to play a game with your friend. To do so, once your friend is connected to your device (like above), you will only have to touch your button and any changes made on any boxes will be done on the other too.