Fiido Q1S 5kW dual motor: VESC + modular DIY OpenSource electronics and software

In August 2024, I was riding far from home and the rear tire got flat!! I were using inner tubes with sealant so I asked at a home I found, for help, to try to fill the tire with air in the hope the sealant would fix the issue. But no, was not possible!! I had to ask a long car ride to carry me and my Fiido Q1S.

Since it is very hard to remove the wheel and then remove the tire, I didn't carry with me the tools and an extra inner tube.
At home, I found the inner tube were pinched, with a few holes, so the sealant would never work.

I decided to try go tubeless, and that would be my very first experience with it. Tubeless means I would probably not had the issued I had and is also easier to repair because there is not need to remove the wheel!!

To test all this, I decided to install tubeless on my front wheel without removing it, trying to replicate the way I can do it outside home.

Very first thing were to remove one side of the tire, and for that I used that long tire dismantle tools. Then, I did pull the inner tube, cut it and removed:
1744292966782.png

To my amazement, the sealant inside were mostly dry!! So I need to replace the tire sealant after some months...1744293499532.png

Then I had to push the tire (was not hard) to have access to the hole for installed the tubeless valve:

1744293571848.png

The valve I installed this one from Aliexpress - is very small and probably the only one that can be used!!

I could install it without removing the tire, was not hard:

1744293742614.png

There is very small space on the rim and every time I want to inflate the tire, I need to bend a lot the valve, but works ok.

1744293818233.png

This tires I use, 3.00x8, are very strong, good and they are tubeless!! I bought them in Aliexpress.

I asked the motor seller and they told me that they didn't know if the rim would work for tubeless... but it works. And here putting the tire back on the rim:

1744293917035.png

There is an important trick to be able to inflate this tire as tubeless!!

After installing the tubeless sealant, we need to remove the inner valve to let the max air flow possible, then push a lot of the air in the hope the tire will get accommodated on it's place. Then install the inner valve and finally push the air until the tubeless tire seal and hold the air!!

VERY IMPORTANT, using a tightening strap at the middle of the tire, will force the laterals against the rim walls and that will finally make the tire to seal the air!!!

1744294476200.png

A failed attempt with a lot of sealant all over the place:

1744294796873.png

But after a few tries, it worked!! I am being using tubeless on the two wheels since 8 months ago and I had no issues at all!! Very happy with it!!

1744294867266.png
 
FWIW, if the sealant used is Slime brand, it tends to clump up into chunks after a few months (or less, depending on temperature/etc) from churning inside the tire all the time. It also makes it impossible to patch a tube roadside without also carrying cleaning supplies / tools to get all the slime off the area to be patched and keep it from leaking out under the patch while applying the patch, which keeps the patch from sticking.

Those are the main reasons why I stopped using it in my tires, except for instances where I may put some in when a slow leak (but fast enough to not make it home just reairing it) develops (usually from a goathead or paloverde spine or steel bit from steel-belted tire debris) so that I can get home, then wash out the tube, dry it, and patch it for later use (replacing the tube in the meantime).


Never tried tubeless sealants, but I expect any sealant made the same way slime is will fail the same way slime does.



Mostly I depend on enough rubber thickness to keep pokey things from touching my air, by using thick tires and thick tubes and an old tube or two between those for extra thickness.... it works pretty well, less than one flat a year nowadays.

With the SB Cruiser trike doing any roadside rear wheel work is very difficult, so anything that helps me avoid doing that is useful...but when I do have to fix a hole, I'd like to know the patch will stick even on a big hole that sealant can't possibly help with. ;)
 
Because on this Fiido Q1S, with dual motors and using a lot of power compared to my EBike, the UART communications to VESC here gave a bit of errors and so the data on the display suddenly fail / kept out on synchronization. So, I decided to move to CAN communication and is way better (still a tiny bit of packets that are not received but almost impossible to see).

Here is the latest state of my Fiido Q1S. Note that the display image looks pixelated but that 's because it was recorded very near, in real usage it is way far from my eyes and is great!!

 
Last edited:
So, I decided to move to CAN communication and is way better (still a tiny bit of packets that are not received but almost impossible to see).
Are you using a shielded cable between the two, with the shield grounded at only one end? And the shield around only the communications wires and their ground wire (which should be separate from the system power ground wire). That may help.

Using twisted pairs for the comm wires can also help, each comm wire with it's own ground twisted with it.
 
I had issues with throttle and took some days to figure out the issue. I though my ESP32-S3 board were partially burned or some deep issue with the CircuitPython firmware. In the end, I could understand the issue were about high voltage on IO pins that were changing the analog signal of the ADC input of throttle signal. The CAN module must be powered with 5V and says the IO pins can work with 3.3V but I think that was causing the issue, driving the ESP32-S3 IO pins over the 3.3V.

To solve the issue, I had to use resistor to adapt from 5V to 3.3V. It is working, perfect results, although I am not sure everything is working electrically as expected. Maybe in future I should try to find a CAN transceiver module that really works at 3.3V.

Now there are no erroneous values read from VESC, everything seems perfect.

Final schematic:
1744806019088.png


And the final design for the display is this:

1744807341447.png
1744807362378.png

Are you using a shielded cable between the two, with the shield grounded at only one end? And the shield around only the communications wires and their ground wire (which should be separate from the system power ground wire). That may help.

Using twisted pairs for the comm wires can also help, each comm wire with it's own ground twisted with it.

This is DIY, I am doing all this kind of quick. The only care I do is keeping the wires short. Look how ugly (but fully functional) is current board, based on that schematic:

1744805688428.png
 
Last edited:
If it works, it works, don't break it. But at some point I would design a pcb for it.
Next build will probably be an old Xiaomi M365. I guess is just the same motor controller board, with one brake and one throttle. The same wireless display, the same wireless lights. But I need to build a wireless power switch, as I will use the original battery and not one with the same BMS I use on this Fiido Q1S, that power is turned on/off controlling a little relay / physical switch.

So yes, I guess and could design a PCB. Maybe.
 
If you need to, they make 5v-3.3v level translators. I haven't tested them yet but I picked some up when I got an assortment of ESP/nano/etc MCU boards to experiment with a while back.

They were called "TXS0108E 8 Channel Logic Level Converter Bi-Directional High Speed Full Duplex Shifter 3.3V 5V", and I think at the time they cost about 50 cents each IIRC.
1744865758674.png

I also got a few much simpler "4 channel IIC I2C Logic Level Converter Bi-Directional Module 5V to 3.3V" that were made from what I think were individual transistors instead of an IC chip; they were even cheaper, maybe 10 cents each or less; don't recall for sure.
1744865704512.png
 
If you need to, they make 5v-3.3v level translators. I haven't tested them yet but I picked some up when I got an assortment of ESP/nano/etc MCU boards to experiment with a while back.
Thanks, but I found a 3.3V CAN transceiver, so will be a direct exchange to the other. This is still small and cheap:

1744973140233.png
 
Back
Top