In Jordi's original YouTube video, he stated that the motor is 15 cm (6 inches) in diameter and weighs only 4 kg (9 pounds).  It makes 15 hp (11 kW) at 10,000 rpm.  Impressive!  

It looks like a QSMotor design, but I could be wrong.  It uses a novel position encoder.

A parts diagram shows the motor having a pinion gear with 25 teeth.

The motor uses ceramic bearings which require a break-in period, during which time more acoustic noise will be noticeable.

Motor Position Encoder

The Dragonfly's motor encoder is a simple device compared to the one EM chose to use.  EM's encoder is expensive ($440) and unusual, producing one sine wave and one cosine wave per revolution.  Furthermore, the chip inside is likely the sole-sourced AM4096, manufactured by RLS in Slovenia.

Although the Dragonfly's encoder does connect to the SiliXcon's sine and cosine inputs, its waveforms are much simpler - essentially being a crude digital approximation of a sine wave.  But this is not inherently bad.  Although a high-resolution encoder would be needed to accurately position, say, a robotic arm, it's probably overkill for a trials bike. 

Presumably, this simplification still provides sufficient position information while being much cheaper to manufacture.  I'm guessing it should retail for less than $100 and is built from widely available electronic components.   For example, the more sophisticated magnetic encoder for a Talaria Sting (a small China-built electric motorcycle) retails for about $60.

Addendum: The Dragonfly spare parts price list published in April 2024 is difficult to use - it's incomplete, there are no part numbers, not all parts have an English translation and those that do often leave me puzzled.  Having said that, I think the motor encoder and magnet are called a Sensor Plate and retail for 162.50 euros.

Likely locations for magnetic sensors circled in yellow

Close-up of motor position encoder and ring magnet 


Radial Multipole Magnet Ring

A multipole radially magnetized ring magnet is attached to the motor shaft. 

The adjacent photograph shows an example of how the poles would be arranged. 

I am guessing there may be 6 poles, alternating north-south (N-S-N-S-N-S) around the perimeter of the Dragonfly's encoder magnet. 

Dragonfly Motor Encoder Waveforms

The waveforms below were provided to me by a Dragonfly owner.  Some aspects of the encoder's operation remain a mystery.  I'd need the encoder in my lab to fully understand it.  Rather than an analysis of its operation, I'll just present the following observations.

Trace 1 is the sine input to the controller.  Trace 3 is the cosine input to the controller.  Both are referenced to controller common.

The SiliXcon controller supplies +5VDC to power the encoder.  The encoder's outputs are expected to swing from 0 to 3.3V (but the controller's inputs are 5-volt tolerant).   Thus, each waveform's zero-crossing should be biased up at about 1.65 volts to create a virtual ground. 

Each full cycle of a waveform spends: 

The two waveforms are 1/6 of a period shifted in phase. 

Motor encoder waveforms

Motor encoder waveforms, detail view

Motor Temperature Sensor

SiliXcon recommends using the KTY81 series of thermistors with their controllers.  Based on a resistance measurement of 1800 ohms at 55° F (12° C) I'm guessing the thermistor may be a KTY81/210 (tighter tolerance) or a KTY81/220 (looser tolerance).  It has a positive temperature coefficient.  This is an obsolete part according to NXP Semiconductors.

Close-up of motor temperature sensor

Backside of encoder with attached thermistor.

Thermistor Table

Based on very little actual information, I constructed the adjacent table.  It is nothing more than an educated guess.  The KYT81/220's data sheet lists resistance values at specific reference points 10 degrees C apart.  Resistance of thermistors is also typically specified at 25° C.  In this case, it's 2000 ohms.  

Temperature is converted to degrees Fahrenheit for Americans.

The SiliXcon manual reveals the internal circuit for reading a thermistor is a voltage divider comprised of the thermistor on the bottom with an upper resistor of 10k ohms pulled up to 5 volts.

This allowed me to calculate the voltage divider's fraction and the corresponding voltage measured by the controller.