SC Controller

The controller is made in the Czech Republic by SiliXcon and costs $1353 USD if purchased from EM.   (The 2023 controller is part number TL02R-50301-00-00 and has an MSRP of $1870.)  Unfortunately, the controller is “locked” which makes it essentially impossible to modify any operating parameters.  In theory, you can buy a sample controller directly from SiliXcon for 370 euros ($437), but it does lack some features.  More on this later.

The controller has 3 power modes: Green, Blue, and Red that are accessible by repeatedly pressing the mode button.  An LED changes color to indicate the power setting.  White is considered neutral and the bike will not move.  Initially, I had read that Green was likened to a 200cc 2-stroke, which seemed reasonable.  Lately, I have been reading that the modes are equivalent to 125, 250, and 300.  All I can say is that Green mode is way “torquier” than any 125!  And, I would happily trade Red mode for 15 pounds off the bike.

An additional 3 modes are available on this 2021 model with the School maps enabled (accomplished by shorting the OPTION input to the controller).  This gives the same Green-Blue-Red sequence but with vastly reduced power.  The Inch Perfect Trials website in England equates these modes to 50cc, 80cc, and 100cc.  Well, maybe?  The School Green mode would be safe for anyone who physically fits the bike.  It's a walking pace at best.

Cindy was riding the bike in School Blue mode when she got to a hill climb that her detuned EM 5.7 would easily handle.  The controller just shut off mid-climb.  The speed limit was adequate, but there is obviously a torque limit that was unsatisfactory for her riding.  It seems like a safety thing for a child but was very unexpected.  I'm not even sure if School Red mode would work for her riding. (She then stopped using School mode and now just rides in the normal Green mode). 

Contact with SiliXcon

Prior to ever owning an ePure, I emailed SiliXcon multiple times over the course of several months inquiring about purchasing a sample controller.  At first, I was vague as to my intended use but eventually put all my cards on the table saying, “As I'm sure you know, the EM controller is locked and it's not possible for me to modify any parameters.  My goal is simple, to purchase a pin-compatible controller that will plug into an EM ePure Race.  I will not be competing with EM in selling motorcycles.  I will only be retrofitting existing out-of-warranty EM motorcycles with a controller that has modifiable parameters for high-level riders.”

Their reply was, “We can sell you only a standard variant of our controller SC 1040.  Unfortunately, the standard controller doesn't have functionalities which has EM.  They have an OEM controller and firmware in it.  So even if you do a controller swap, some functions won't work.”

That pretty much ended my interest in buying a controller.  (Although the missing functionality may be unimportant – e.g., the mode tone and LED mode indicator.)

Although SiliXcon provides a wealth of online documentation, they are not really interested in working with/supporting hobbyist-level customers.  I don't blame them.

It may still be possible to hack into the controller.  The following screenshot shows that it is possible to connect to it via the freely-available software SiliXcon provides for their standard products.  The connection is direct to a PC's USB port.  However, the prior owner discovered that the white (D-) and green (D+) wires must be swapped.  Also, the SiliXcon controller emits +9.5 VDC on its red “USB” wire, so leave that wire unconnected as the PC side emits +5 VDC.

Honestly, I think EM's configuration of the controller is very good, and it's probably not worth much hacking effort.  But it would be nice to see what they did as a learning exercise.

As may be deduced from the following screen, I was able to see the regeneration level (which varied from 15% to 85%) change in real-time and also the active map, but nothing else.  

The correct login-in username and password are needed to make any changes.  At times the connection was considered “inconsistent” (SiliXcon's word, not mine).  I do not know what caused that.

Controller Part Number, Decoded

The controller is marked “24dxa0840-840.”  This part number breaks down as follows:

Elsewhere in SiliXcon's design documentation, it is stated this controller is rated for a peak current of 300 (battery) Amps for 10 seconds.   It is also rated at 190 A for 60 minutes.  It allows a maximum internal power dissipation of 120 watts at 60 degrees C.   


There is an unlabeled 3-position connector near the controller for CAN bus connectivity.  The pinout is as follows: Black, Communication GND. Yellow, CANH. Green, CANL.

I was able to capture data at 500 kbps using an industrial CAN bus interface.  It utilizes a standard 11-bit data frame.

SiliXcon describes a handheld CAN bus tool in their document VDS-eval_first_run-rev_A and also offers a spreadsheet tool for creating CAN messages.  However, I have yet to find a definition of the messages being emitted.

As you can see in the adjacent screenshot, only 3 frame IDs were repeated over and over, 0x600, 0x610, and 0x618.  So, it might be fairly simple to reverse-engineer the protocol.

I also tried an automotive OBDII scan tool (OBDLink) but it did not recognize the protocol (despite the 500kbs, 11-bit frame being an automotive standard.)

ePure Race CAN bus capture

Controller Thermal Management

Now that it's known the Mecatecno Dragonfly also uses a SiliXcon controller, it begs the question: Why is the Dragonfly's controller mounted on such a substantial heatsink compared with the EM?  It seems something far lighter would be adequate - especially since Mecatecno's is in the air stream whereas EM's is not.

I used an LM35DZ solid-state temperature sensor and the Cycle Analyst to record the controller's heatsink temperature over a variety of operating conditions. 

The SiliXcon documentation says the maximum allowable heatsink temperature is 60° CInside the controller, near the power MOSFETs, the temperature will be much hotter.  The controller measures its own internal temperature.  At 90° C power output is limited to avoid overheating.  (The junction temperature of the power MOSFETs can be even hotter, perhaps 125° C at the limit).  

Testing is ongoing but after many WOT runs in Red mode up a slight hill, I only saw a 10° C rise above ambient on the SiliXcon's heatsink.

There is “thermal mass” in the controller/heatsink system and therefore a lag in temperature rise and fall.  It came as a surprise that the controller cools down quicker with the bike moving slowly as opposed to just sitting - so the under-fender heatsink must be seeing some airflow.

LM35DZ temperature sensor and mounting clamp 

Temperature Sensor Mount

The LM35DZ sensor is in a TO-92 package which measures 5 mm in diameter and 3.75 mm from front to back.  The adjacent photo shows the clamp I made to put the sensor in thermal contact with the heatsink.

There are two M4 holes in the heatsink where the DC-DC lighting converter had been mounted.  These holes are 12 mm apart.  This is not the perfect place to mount the sensor, but it is convenient.  

Ideally, the sensor would be mounded nearer the power MOSFETs, but I was too lazy to drill and tap the holes as that would require temporarily removing the controller.