ToSeven Mid-drive Wiki

This wiki is primarily focussed on the ToSeven 500-watt DM02 motor but also has information about the 250 & 350-watt versions, and the 750 & 1000-watt DM01. More information for all motors is available on the manufacturer's website here.

Disclaimer: The information listed here is a collaboration of owners’ experiences gathered from High Voltage Light Electric Vehicles Discord channel It is not necessarily verified, and is not approved by the manufacturer. Use at own risk.

Errors and contributions

If you spot any errors or wish to contribute more information, simply highlight the relevant text or area, then right-click and select “Comment”. Then type in what you would like to change or add. Please do not add comments if you just wish to discuss something or ask a question. Go to the High Voltage Light Electric Vehicles Discord channel for that. Please also avoid formatting suggestions. Eventually I hope to move this to a proper web page wiki once we have gathered enough data and info, so all that will change anyway.


Changelog

14 Sep 2025 - added more options to prevent eccentric bottom brackets from rotating
11 Sep 2025 - Added more errors under “
Controller firmware update tool versions
23 Aug 2025 - New FAQ
Does an XT90 connector fit through the opening on the DM02? Also added advice about heat shrinking XT60, XT90 and Anderson connectors to Will you also need a battery carrier? and Are they waterproof?
Also summarised firmware version notes under the one heading for
DM02 and DM01.
17 Aug 2025 - New FAQ -
ToSeven Higo/Julet pinout chart
3 Aug 2025 - New FAQs -
Program Fail error, Jonas’s DM01 settings, Higo/Julet pinout chart
2 Aug 2025 - New firmware releases for
DM01 and DM02
25 Jul 2025 - Added “
EN1594 compliant” example setup
24 Jul 2025 - New FAQ
How to determine the production date of the motor.
23 Jul 2025 - More detail from Ian in
How to replace the DM02 controller and new FAQ for press fit bottom brackets
17 Jul 2025 - New FAQs -
Noise due to insufficient clearance from chain stay, How to test the throttle, How to test PAS is working
10 Jul 2025 - Added links to
3D diagrams for ToSeven motors and new FAQ for ISCG frames
29 Jun 2025 - Added FAQ for
How to replace the DM01 controller
19 Jun 2025 - Updated
DM02 bearing diagram with bottom bracket shaft bearings.
24 May 2025 - Added FAQs for
Mounting plate bolts and Poor chainline - reworking the cassette
20 May 2025 - Added FAQ for
Dragging sensation when speed limit is exceeded.
12 May 2025 - Added FAQs for
Motor Disconnect, Motor Blocked and Communication Interrupted in troubleshooting section. Also Headlight flashes or strobes when brakes engaged. New firmware for DM01 to fix the issue with settings not saving on motors purchased before Oct 2024.
19 Apr 2025 - Added more detail on speed sensor installation to “
Is it necessary to install the speed sensor
16 Apr 2025 - Added
Flashlight mounted lights and Motorcycle lights to Accessories.
15 Apr 2025 - Added cable guard for the DM01 to “
Is there a bash guard available?”
11 Apr 2025 added some more positivity to the intro with new FAQ “
Are ToSeven mid drive motors worth buying?” Also some pros and cons of mid drives vs hub drives.
26 Mar 2025 - Added a link to a more
recent manual for the T24 display. Added more detail to “Is a narrow-wide chainring available” with link to pictures showing a 40T bling ring will fit the DM02 but it cannot be fastened in place to work.
23 Mar 2025 - New FAQs -
Creaks, squeaks and whistles and Display goes to 99 kph after starting
21 Mar 2025 - Changed “Motor switches itself to PAS mode” FAQ to “
Ghost pedalling with torque sensor enabled” with better clarification of the issue.
12 Mar 2025 - New FAQ -
Is updating firmware necessary? Also added links to release notes for the latest firmware for the DM01 & DM02.
10 Mar 2025 - New FAQ -
No power with torque sensor enabled.
5 Mar 2025 - Added Table of Contents and more detail to
How to update the firmware
1 Mar 2025 Added
a workaround for EBBs and new FAQ for Ashtabula Bottom Brackets
26 Feb 2025 - Add
links to video demos of DM02 controller removal & replacement
25 Feb 2025 - Added
links to previous display firmware versions as the current ones may lock out advanced settings, added FAQs for random display resets and av speed resets at 119.3km.
24 Feb 2025 - Changed title to “ToSeven Mid-drive Wiki” since the DM01 is being featured more and more as well.
22 Feb 2025 - Moved content from "
What’s the strange little bracket included in the kit?" to new FAQ "How to stop the motor from rotating in the bottom bracket"
15 Feb 2025 - added page numbers to make it easier to reference
14 Feb 2025 - JNO torque arm added to
hanging bracket FAQ, clarification for 60V batteries added to 36 & 48V DM02 version FAQ 
12 Feb 2025 - Added clarification for
different DM01 voltage versions.
09 Feb 2025 - More info added to
Battery FAQ including a range and power calculator spreadsheet
08 Feb 2025 - Added
Magura MT5e Hydraulic brake lever hack, new FAQ for chain dropping problems
02 Feb 2025 - Added links to download
older versions of the Controller firmware update tool, new FAQ for welds inside BB shell
31 Jan 2025 - Added
Sellers
30 Jan 2025 - Added
links to manuals, wiring diagrams for DM02 & DM01, Tongsheng chainring compatibility.
25 Jan 2025 - Added new
General FAQs regarding differences between motor versions, watts, voltages and amps.
23 Jan 2025 - Updated
chainring locknut removal procedure.
19 Jan 2025 -
Battery calibration updated.
10 Jan 2025 - added
sensor installation, shift sensor, bearing replacement diagrams
09 Jan 2025 - added
waterproofing 
04 Jan 2025 - added
LCD-135C notes


Table of Contents

General FAQs        9

Are ToSeven mid drive motors worth buying?        9

What is the difference between torque sensing and PAS?        9

Mid drives vs hub drives        10

Is the DM02 the same as the Tongsheng TSDZ2?        10

How to choose which DM02 version to get (250, 350 or 500-watt).        11

What is the difference between the 250, 350 and 500-watt DM02?        11

Is there a difference between the 750W and 1000W DM01?        13

Is it safe to use a 48-volt battery on the 250-watt DM02?        14

DM02 36V, 48V, 52V or 60V?        14

DM01 48V, 52V or 60V?        15

What are the maximum safe amps for the 500W DM02?        19

How to determine the production date of the motor.        20

Is there a difference between the DM02 and DMII?        21

Why is there more than 500 watts showing on the display while riding the 500W DM02?        21

Is the 500-watt DM02 enough power?        22

Is there a rider weight limit for the DM02?        22

Is the DM02 tough enough?        22

Are they waterproof?        22

Manuals and other documents.        23

Installation and bike fit        24

How to install it        24

How to remove the old cranks and bottom bracket.        24

What’s the strange little bracket included in the DM02 kit?        24

What bikes are compatible?        25

How to check if it will fit a bike before buying it.        26

3D diagrams for ToSeven motors        27

Bikes with cables underneath the frame.        27

Eccentric bottom brackets        28

ISCG Frames        33

One piece cranks (Ashtabula) Bottom Brackets        34

Press fit bottom brackets        34

When the chainring or motor hits the frame.        35

How to stop the motor from rotating in the bottom bracket        36

Lekkie 1TSNuts        39

ToSeven Hanging Bracket        40

JNO ToSeven Torque arm        42

The motor won’t go through the bottom bracket        44

How to fix the Q-Factor        45

Where do all the wires go?        46

Is it necessary to install the brake sensors?        47

Is it necessary to install the throttle on the DM02?        47

Is it necessary to install the speed sensor?        48

What to do with unused connectors.        49

What to do with all of the excess cables.        50

Chains, chainrings and chain lines        52

How to improve or alter the chainline.        52

Mounting plate bolts        53

Poor chainline - reworking the cassette        55

How to stop the chain falling off constantly.        55

What is meant by ToSeven’s “9mm offset” and “no offset” in their chainring offerings?        57

How to choose the chainring size        58

Is a narrow-wide chainring available?        59

My chain is too short        59

Is an ebike-specific chain necessary?        59

Is it possible to install a double chainring on the DM02?        60

Do mid-drives work with Rohloffs and other geared hubs?        62

Accessories        66

Are Bafang brake sensors, throttles and speed sensors compatible?        66

Standard Higo/Julet pinout chart        68

ToSeven Higo/Julet pinout chart        69

Are Bafang displays compatible?        70

Is it possible to install a shift sensor on the DM02?        70

ToSeven Display comparison        72

LCD-135C Display and the Android app        73

Are Bafang Chainrings such as Lekkie Bling Rings compatible?        73

Do Tongsheng spiders fit ToSeven motors?        74

Does the Lekkie One Nut fit To7 motors?        74

What lights are compatible?        75

Lights controlled from the display.        75

Lights powered by the battery        76

Flashlight mounted lights        79

Is there a bash guard available?        81

Batteries        82

What to look for in a battery        82

Will you also need a battery carrier?        83

Does an XT90 connector fit through the opening on the DM02?        85

Battery doesn’t show as 100% full when fully charged.        86

Repairs and maintenance        87

How to lube the chain        87

How to grease the DM02.        88

Creaks, squeaks and whistles        89

Other causes of noise        91

Noise due to insufficient clearance from chain stay        93

Electrical whirring        94

How to remove the chainring lock nut.        94

Are there other wrenches available to tighten the locknut without removing the crank?        95

Cranks keep coming loose.        97

DM02 torque sensor replacement        97

How does the torque sensor work?        100

Wiring diagram for the torque sensor        103

DM02 blue gear replacement        104

How to replace the DM02 controller        104

How to replace the DM01 controller        106

DM02 bearing diagram        107

Other DM02 bearing diagrams        108

DM01 bearing diagram        109

DM01 detailed images        109

Where to find spare parts?        109

How to get it running cooler        110

Troubleshooting        113

What does the flashing yellow triangle on the display mean?        113

What does the “Motor Disconnect” error message mean?        114

What does the “Motor Blocked” error message mean?        115

What does the “Communication Interrupted” error message mean?        116

What does the “Controller Broken” error message mean?        116

Display goes crazy and/or no power.        117

Display turns itself off just after it starts.        117

Display goes to 99 kph just after starting and power cuts out.        118

Display is completely black or difficult to see in daylight when wearing sunglasses.        118

Display randomly resets        118

Average Speed automatically resets at 119.3km        119

No power with torque sensor enabled.        119

What is a bricked controller?        119

Brick stories: Corrupted controller from partially seated cable        119

Most or all power is suddenly lost when pedaling hard up a hill or after a gear change.        120

Ghost pedalling or gradual loss of power with torque sensor enabled (DM02)        120

Dragging sensation when speed limit is exceeded.        121

Torque sensor voltage changes when hitting bumps or bouncing the bike (Torque Sensor Voltage Deviance).        121

Low or no power after starting, requiring a restart to get it working properly        121

Timeout after torque sensor calibration.        122

How to test the torque sensor        122

How to test the throttle        123

How to test PAS is working        124

Headlight flashes or strobes when brakes engaged        124

Firmware        125

Is a programming cable needed?        125

How to check firmware version.        125

Is updating firmware necessary?        125

How to update the firmware.        125

DM02 firmware versions        127

DM01 firmware versions        128

Older Display firmware versions        129

Locked Displays        130

Controller firmware update tool versions        131

“Conntect Fail” (Connect Fail) error        131

“MCU unidentified, try again or IAP version is lower or pack version is lower” error        132

“Access violation at address 000000000” Error        132

“Program Fail” error        133

Getting started with the settings        134

How to use the T24 Display.        134

Main Settings        135

Unit        135

Rim Size        135

Light        136

AutoPowerOff        136

Device        136

Password        137

Save        137

WithoutSave        138

FactoryDefault        138

Advanced Settings        139

Application        139

Speed&Power        139

Battery        141

Controller        144

Motor        145

PAS        145

Throttle        146

TorqueSensor        147

TempSensor        148

DM02 Example Setups        151

The Factory defaults (From Nov 2024 DM02/Dec 2024 DM01 firmware)        151

The Goody Two Shoes        153

EN1594 compliant        154

The Hauler        155

One Mode to Rule Them All        156

Jonas’s DM01 settings        157

Other resources        158

Sellers        158


General FAQs

Are ToSeven mid drive motors worth buying?

While this wiki has a lot of focus on what to do when things do go wrong, as well as adding detail for some aspects that have not been explained well by the manufacturer, this should not detract from the vast majority of customers who never have a problem and ride off happily into the sunset with their new motors. ToSeven motors represent great value for money, with performance that will put a smile on most faces, and are well placed to be the go-to DIY ebike kit in the near future. They have an improved design over Tongsheng motors and more configuration options. (More recent motors without access to the advanced settings can still be unlocked, with the understanding that warranty will be reduced or void in doing so, and the motor's service life may be reduced if pushed harder than it was designed for). Bafang BBS mid drives lack a torque sensor, and are now only being produced with CANbus controllers instead of UART which will make them more difficult and more expensive to configure. CYC motors, while generally regarded as exceptional, are considerably more expensive than similar ToSeven motors.

While some manufacturing defects will occur, which is true for all manufacturers, there is support and guides from ToSeven for repairing them, and they are not overly difficult to repair.

What is the difference between torque sensing and PAS?

The torque sensor has the effect of multiplying your leg power, so you feel like you’re a lot stronger than you are; while still making you work a bit for it so you’re getting some exercise and maintaining some “feel” with the pedals. Cadence sensing, aka PAS (Pedal Assistance System), motors can only sense if the pedals are turning, providing power on that basis alone. This makes it easy to “ghost pedal”, meaning you get very little exercise. It can also make riding tricky terrain at low speeds a little challenging since the motor will want to lurch forward with more power than you might like whenever the pedals are turning. With that being said, cadence sensing is not necessarily a bad thing. For example, it’s great for commuting when you don’t really want to sweat, or if you have an injury or disability that prevents putting too much effort in. ToSeven mid-drive motors give you that option. Simply disable the torque sensor in the settings and you have a cadence sensing (PAS) motor. Cadence sensing will also provide more power the faster you pedal, which gives a similar sensation to torque sensing.

Mid drives vs hub drives

Hub drives have many advantages over a lot of mid drives. They are cheap and reliable, and don’t put stress on chains and cassettes, and can even still be ridden without a chain. This also means that cheaper 7 or 8 speed group sets will suffice, and are usually the most you can fit between the dropouts anyway on a rear hub. Where they mostly fall over is that they only have one speed and can’t use the bike’s gears, so they struggle with long or steep hills, and can overheat in these conditions. They add unsprung weight to the rear or front of the bike, making them less suitable for off road riding. Also, anything above 350 watts or so will need a torque arm fitted to prevent the motor from breaking free and damaging the frame and itself. This torque arm also makes changing flats somewhat tiresome. It is also difficult to ride slow with them since they have a tendency to want to accelerate to the maximum speed they can manage in the level you are riding in, so you tend to do a lot of coasting and ghost pedalling. They can also chew a little more battery than a similarly powered mid drive.

For commuting, a hub motor may still be the best choice where you just want reliability and don’t want to sweat. However, a DM02 is usually priced similarly to a reasonable quality hub motor and doesn’t have the above downsides. It is easier to maintain a lower or higher speed, and you can still get a reasonable workout depending on the level you choose to ride in, and it will still feel like a bicycle rather than a scooter. For off road use, or for those who want higher performance, the DM01 is the better choice.

Is the DM02 the same as the Tongsheng TSDZ2?

These two motors are similar to look at, but they are not the same. The engineer who designed the TSDZ2 left the company and started ToSeven. There are many design improvements such as improved temperature control, which was a common issue with the TSDZ2. See this video comparing the two motors. Another massive change is the ability of owners to alter advanced motor parameters directly from the display.


How to choose which DM02 version to get (250, 350 or 500-watt).

If you want to be street legal, check your country’s ebike laws and choose accordingly. If you don’t care, go for the 500-watt version. It is easy to scale down the power in the settings if you find you have too much, but it is more difficult to soup up an electric motor if you want more power.

Note: Check your country’s conditions. In some countries like Australia, riding an ebike that exceeds the laws can land you in trouble for riding an unregistered and unroadworthy moped, which can mean an expensive fine if you get caught. With that being said, you are only likely to be stopped by police if you are doing something stupid like riding at excessive speed amongst pedestrians or disobeying road rules. Other countries can be more heavy-handed, with random roadside stops and checkpoints with officers armed with knowledge and equipment to check power levels, and they may even seize the bike.
Be aware that if you are involved in an accident that causes someone’s injury or death while riding an illegal ebike, you could end up in jail. You will also have no insurance if you cause damage to someone or their property.

What is the difference between the 250, 350 and 500-watt DM02?

Physically, the 250 & 350 watt versions are identical, the only difference being that the 250W version is locked down to comply with legal requirements in some countries for a maximum of 250 watts.

A black and white text

Description automatically generated

Note that the second part of that message indicates that it can be “hacked” with a programming cable and installing other firmware, while also warning that doing so may make the bike illegal according to your country’s laws. Be aware also that you may not be able to revert to the street legal version again once you’ve done it, which would defeat the purpose of buying the street legal version in the first place. May as well buy the 350 or 500-watt version, leave the throttle off, and slap a 250-watt sticker on it.

The 500-watt version is a little different. While externally it is identical, its rotor and motor windings inside are larger than the 250-watt and 350-watt versions, making it ~0.4kg heavier and more able to handle higher power. See image comparing the rotors from both motors below.


Is there a difference between the 750W and 1000W DM01?

Yes. The 1000W version is larger to allow for a larger rotor & stator to cope better with the increased power. Note also that different controllers are required for use with different battery voltages.


Rotors:

Is it safe to use a 48-volt battery on the 250-watt DM02?

While ToSeven’s website for all DM02 motors states “Compatible With 24, 36, 48, 52, 60 Volts Battery Range”, the 250-watt version is not sold with a 48-volt option, only the 350-watt and 500-watt versions are. While it could just be a settings change (see “Battery settings”), doing so may make the bike technically illegal (Watts = volts x controller amps. 48 volts on the same controller will increase the wattage). These motors are also wound for 36V, so connecting a 48V battery is technically overvolting them. With that being said, overvolting a 36-volt motor with a 48-volt battery has been done plenty of times before and it should be reasonably safe to do so.

DM02 36V, 48V, 52V or 60V?

On To7’s AliExpress store and also from many resellers, you may find a choice of 36V or 48V for the 350 & 500W versions.

Order according to the battery you intend to fit, but there is no physical difference between these and this is just a way of advertising that the motors can do either. ToSeven confirmed this after someone enquired about fitting a 48V battery to a 36V version:

“Regarding Voltage and Parameters :

The parameter 36V15A was configured based on the original order specifications when the motor was purchased.  Please note that our standard DM02 motor is compatible with both 36V and 48V batteries, and you can adjust the settings through the display to match your battery.”

Battery can be selected and fine tuned in the settings. See “Battery” settings”. However, while the sticker on the controller says “24-60V”, (see below) that means that the controller supports up to 60V but not a 60V battery since a fully charged 60V battery is close to 70V which exceeds the specs. 36-52V batteries should be fine, but a different controller will be needed if you intend to run a 60V battery. Contact your vendor or To7 prior to purchase if you intend to run a 60V battery. Note also that not all Displays support 60V. See ToSeven Display Comparison below.

Note that the sticker or stamping on the bottom of the motors usually specifies watts, voltage and maximum amps.This may indicate different windings amongst other things.

DM01 48V, 52V or 60V?

The DM01 does appear to have different controllers for different battery voltages as shown on their AliExpress store.

With that being said, they have stated that a 60V controller will work fine with 48V or 52V batteries, you just adjust the voltage in the Battery settings, just not the other way around. i.e A 60V battery may not play nicely with a 48V or 52V controller, and may even damage it. On that basis, if you think you might want to use a higher voltage battery one day, buy the 60V controller version.

Nov 12, 2024 “...the 60V controller is also compatible with 48V and 52V batteries. But you will need to adjust the motor battery voltage and the low cut-off voltage.

They have also said:

If you wish to use a 60V battery, you will only need to replace the controller with a 60V version.”

So we can safely assume that the controllers are different, and rated to a maximum voltage.

Note also, on the bottom of recent motors are stickers specifying the voltage, maximum amps and wattage.

However, the controllers themselves may use a generic 48-60V sticker, making them difficult to tell apart. (To be confirmed).

These stickers appear on replacement controllers, while the controllers that ship with new motors are unmarked.

Below is a 72V controller clearly marked.

72V controller beside a 48V controller. A larger capacitor is clearly evident.


What are the maximum safe amps for the 500W DM02?

There is/was conflicting information about this. Originally, some resellers had a warning on their websites not to go above 15A after a couple of early controllers failed inexplicably. The manufacturer later advised that this issue had been resolved and 18A was safe and fine.

⁠The To7 website also said that the DM02 supported up to 18A with a 48V battery (up to 20A with a 36V battery):

The sticker on the controller inside the motor also says it supports 12-18A⁠:

However, the manufacturer has since advised to ignore this and go by the sticker on the bottom of the motor, which in the case below is "DC48V15A":

This will ensure reliable and safe operation. Ensuring this is that firmware since November 2024 defaults to 14.2A with a 48V battery and is hard set. Even if changed to 18A, the motor will not go much above 14A while pedalling, even in the highest settings.

Note that the lower amps in later firmware versions make the motor feel somewhat breathless compared to previous firmware versions but the upside is it is less stressed. It also makes the torque sensor behave more reliably and solves “motor blocked” errors.

Note: For recommended amps on other motors see “The Factory Default” settings

How to determine the production date of the motor.

On the bottom of the motor will be a string of numbers or a QR code. In the case of the QR code pictured above, it is TO 02 S 050 2409 00017 (spaces added for clarity), which indicates the following:
TO = ToSeven
02 = means it’s a DM02 series (II for DMII), 01 for DM01
S = bottom bracket width of 68-73mm. L is 100-110
050 = 500W. 035 = 350W, 075 = 750W etc.
2409 = September 2024 production date
00017 = product serial No.


Is there a difference between the DM02 and DMII?

To7 refers to recent motors since October 2024 as “DMII”, and older motors as “DM02”. This indicates a possible revision change with some minor internal upgrades, but they still use the same firmware, displays and sensors. Note that the DMII motors come without access to the Advanced menu settings. (To7 have indicated that they will provide instructions to unlock them on request, with the understanding that doing so will void warranty).

Why is there more than 500 watts showing on the display while riding the 500W DM02?

This is true for all eBikes and kits. Electric motors are rated at nominal power rather than peak power. Nominal power refers to the continuous, sustainable power output a motor can produce without overheating, while peak power represents the maximum burst of power the motor can deliver for a short period. To fit legal requirements, and also make their motors feel more powerful than a competitor’s similarly specced motor, manufacturers use the nominal power rating for motors. However, in reality, the motors produce much higher wattages, at least for short bursts before they start getting hot.

A basic formula for peak power is: volts x controller amps = watts. So the 500W DM02 with amps set at 18 with a 48V battery is: 48  x 18 = 864 watts. A fully charged 48V battery has 53 volts, making up to ~950 watts possible.

Here is a chart from 2018 comparing watts vs revs of various popular “250W” motors.

Is the 500-watt DM02 enough power?

That is a subjective question. 500 watts is a decent amount of power to make getting up hills and maintaining speeds along flats a lot less effort, while still feeling like a bicycle rather than a moped. Most people should find it more than adequate. If you want something with a lot of power, go for the DM01 instead.

Is there a rider weight limit for the DM02?

There is no official rider weight limit thus far. However, many bike manufacturers specify 120kg (260lbs) for their bikes, which would be a reasonable figure to go by for a lot of ebike motors including the DM02. This could mean running at higher temperatures or perhaps “motor blocked” errors from time to time. (More on this here). If you’re on the heavier side of the scale, or carrying heavy loads such as a cargo bike, it is recommended to go for the DM01 instead as it is more likely to cope.

Is the DM02 tough enough?

Captain Codswallop has been torturing the DM02 by installing an aftermarket controller which allowed him to increase the wattage by up to 2500, which is five times above what it was designed to handle. After 500 kms, the only failure was the blue nylon drive gear, which is doing what it’s supposed to do. i.e. acting as a failsafe rather than destroying more expensive parts, as well as being a lot quieter than metal on metal gears. While most people would start with a more powerful motor to begin with for this kind of application, this gives us some insight into what the limits of this little motor are. Check out the following videos:

Are they waterproof?

Kind of. They are probably better thought of as water resistant. It is safe enough to wash with a hose, or to keep riding to get home if it starts to rain. However, it is advisable to avoid heavy rain, using a water blaster to wash it, or to ride through anything deeper than a couple of inches. There are at least two reports of controllers failing after being exposed to these conditions. However, it is suspected that lack of waterproofing of the XT60/XT90 connector may have been the cause, or possibly a sudden hit of cold water on a hot motor.

It is recommended to heat shrink the individual contacts going into XT60, XT90 and Anderson connectors to prevent shorting, particularly from water ingress.This is generally not done by default from the factory. Alternatively, use silicone if the connector can not be redone easily. It is not recommended to heat shrink both wires together as this can trap moisture and increase the possibility of shorting.

After disassembling and reassembling the motor to make repairs, it is also advisable to add silicone sealant around the entry point for the wires, and ensure that the rubber gaskets are in good condition and correctly installed.

Manuals and other documents.

Some of the manuals and other documents can be tricky to find. The following links are copies to make it easier, or in case they disappear. Note that some of them may be a little out of date. Some others are available on Discord. There is also an LCD-135 manual here.

DM02 User Manual
DM01 User Manual
T24 Display Manual User Guide
T24 Display Manual (newer)
T24 Display Setting Interface
T24 Operating Instructions
T154 Display Manual User Guide

Installation and bike fit

How to install it

ToSeven has an excellent tutorial on their YouTube channel here. Installation is pretty much the same as other mid-drives such as Bafang BBS motors and Tongsheng. Google or search YouTube for these and you’ll find heaps. Same with how to install brake sensors on hydraulic brake levers and so on.
See also
How To Know If My To7 Motor Mid Drive Will Fit My Bike.

How to remove the old cranks and bottom bracket.

To remove the old bottom bracket and crankset, you’ll need Allen keys, a crank puller and a bottom bracket tool. These vary depending on the type of bottom bracket and crankset you have. (Click the following to watch videos)

What’s the strange little bracket included in the DM02 kit?

It’s called a hanging bracket and is an optional way to secure the motor so it doesn’t rotate in the bottom bracket. See “How to stop the motor from rotating in the bottom bracket”.


What bikes are compatible?

The best option is a bike with a standard English Threaded Bottom Bracket which has an inner shell diameter of 34.8mm (the most common). Press fit bottom brackets with 41mm inner shell diameters might still work with an adapter like Lekkie’s.

DM02 motors are available to suit bottom bracket widths of 68-73mm and also fat bikes with 100mm and 110mm bottom bracket widths. Hopefully we will see a 120mm version in due course. The DM01 is available in 68-76mm, 100mm and 120mm.

Standard double triangle diamond frames, rigid and hardtail, like these below are generally great.

Likewise for most beach cruiser and road bike frames. However, be aware you also need to fit a battery somewhere. Frames like this below make that difficult. The only place a battery will fit on this one is underneath the down tube rather than on top of it.

Tip: Sellers will usually list dimensions for most batteries. Make a cardboard or Styrofoam template to check if it will fit, keeping in mind that it will need to slide forward 20mm or so if you want to take it on and off the bike.

Battery position issues also occur on many dual suspension bikes. The frame below will also prevent the motor from being pushed up very high, so it will have a lower ground clearance.

Other options for odd frames are triangle batteries, soft and hard case bags, and custom-made batteries and cases.

How to check if it will fit a bike before buying it.

Click here for templates you can print to scale to trial fit to your frame to check for clearance. These are for Bafang BBS motors, but if they will fit then To7 motors will fit as well. See also How To Know If My To7 Motor Mid Drive Will Fit My Bike.

3D diagrams for ToSeven motors

A 3D diagram for the bottom bracket area of the DM01 can be viewed or downloaded from here, or if the link is broken it can be downloaded from here*.

A 3D diagram for the bottom bracket area of the DM02 can be viewed or downloaded from here, or if the link is broken it can be downloaded from here*.

* These are STEP (.stp) files and will need 3D modelling software to open on a PC.

Bikes with cables underneath the frame.

Another issue can be bikes with internal cable routing. These often emerge from a channel just in front of the bottom bracket, which can interfere with the motor placement. In this case, you may need to modify the frame as shown here or use the supplied hanging mount for the DM02 (if it fits on your bike) or a torque arm (see “JNO ToSeven Torque arm).

If you have cable guides under your bottom bracket as pictured below, you may need to reroute cables using full outers so that they get to their destinations above the bottom bracket or some other way.

Likewise with braze-ons like this below, which may need to be ground off.

Note that this may not be feasible in all cases, so you may need to choose another frame, particularly if you want to return the bike to its former glory one day.

Eccentric bottom brackets

Another problem related to above is eccentric bottom brackets with pinch bolts like this:

For these, you can replace the EBB insert with a Bushnell style (Comotion EBBs are the best in my experience if your bottom bracket shell is well used and no longer perfectly round), then grind off the bolts under the frame. The EBB can then be positioned in the lowermost position and the motor should fit. However, the EBB can no longer be rotated to achieve chain tension, and the bolts will not be accessible after the motor is in place, so this will only work with a derailleur gear system or jockey-wheel style chain tensioner with an internally geared hub.

This may still not work with all frames but here is an example where it was successfully achieved with a BBSHD.

Note that this still could be problematic. EBBs can rotate if enough force is applied from the motor and/or the rider in combination with bumps. More info in “how to stop the motor from rotating in the bottom bracket”.

One solution is to tap screws into the EBB through the top side of the bottom bracket shell as shown in this video.

The hanging bracket or a torque arm such as JohnnyNerdout’s should also do the trick.


Other options are hose clamps around the motor and downtube.

Or to get creative with custom mounts to bottle cage bolts or with an additional rivnut.


ISCG Frames

Frames with ISCG (International Standard Chain Guide) tabs will usually have to be modified to allow the motor to go through the bottom bracket, and to be pushed up against the down tube.

This will usually mean cutting off and filing the forward tab such as the image below, but in some cases it may be possible to just remove a small amount of material to allow the motor to fit between the lower tabs.

One piece cranks (Ashtabula) Bottom Brackets

Some older American made bicycles have one piece cranks with a 51.3 mm (2.02") unthreaded bottom bracket shell, known as Ashtabula Bottom Brackets. Mid drive motors, including ToSeven motors, are usually designed for the BSA (Birmingham Shell Arms) standard which has a diameter of 33.6 - 33.9mm. JohnnyNerdout has an adapter available for these bottom brackets to allow mid drive motors to be fitted. Luna also has one here. However, the same issue as for eccentric bottom brackets applies, in that they can work loose due to the combination of the motor’s torque and bumps, so they may need some modification to prevent them from rotating.

Press fit bottom brackets

41mm press fit bottom brackets may work with an adapter like this from Lekkie. However, it may still be a bit of a squeeze and require some modifications. Check out this video (2022 Scott Spark 960) where some material needed to be filed off the top of the motor to get it to go all the way through the bottom bracket. The finished result can be seen here.

Note some of these adapters could still rotate in the bottom bracket if enough force is applied. See eccentric bottom brackets for some methods to prevent this.


When the chainring or motor hits the frame

Another problem which comes up with Fat Bikes and a lot of modern MTBs which have been designed for chainrings no larger than 36T and/or plus-sized tyres, is that the chain stay has an abrupt angle as it comes away from the bottom bracket. This can cause the motor and/or chainring to hit the chain stay, preventing it from being fully inserted into the bottom bracket shell.

The solution for this is to buy a wider version of the motor and use bottom bracket spacers. More on this here. See also “How do I improve or alter the chainline” below.


How to stop the motor from rotating in the bottom bracket

Normally, to get the best ground clearance, the motor should be pushed up hard against the underside of the downtube, then secured with the supplied locknut. (You may want to put a piece of rubber in between to prevent the frame being scratched).

The motor’s torque will try to push the motor upwards, while bumps will try to knock it downwards. For this reason, that locknut needs to be extremely tight or it will work loose over time. If it does work loose, one option is a large hose clamp around the motor linked to another one around the downtube like this:


On the DM01, note that there is an excessive lump on the motor casing for one of the mounting bolts, which will get in the way of pushing the motor hard up against the downtube. The back side can be cut and ground down for a better/snugger fit. Alternatively, add a suitable spacer to even the contact area so the lump is not the main contact point with the frame.

If the lump is not modified (or a spacer is not employed) and the motor moves, its torque can hammer it into the frame and damage it, as seen below. (The motor has been slid out partially in this photo. When fully inserted. the lump lines up with the hole).


Here is another option using “epoxy putty and silicone grease as a release agent”.


Lekkie 1TSNuts

A better alternative to the standard locknut is the Lekkie 1TSNuts. It allows the use of a standard Shimano bottom bracket tool or socket*, and it has grub screws to prevent it coming loose. (Note that the Lekkie One Nut for Bafang motors is a different thread size and will not fit. The 1TSNuts is designed to fit Tongsheng motors, which have the same thread size as ToSeven mid drive motors. See “Does the Lekkie One Nut fit the DM02” for a picture of one fitted to a DM02).

* Note that spanners like the Park BBT-9 Bottom Bracket Tool are too thick to fit in.

One option is an open ended spanner like this one from GreenBikeKit.

However, the best option is a socket that is long enough to go over the axle like the BBB BTL-105 (left below) or the Lekkie Sixteen-44 (right). These allow the use of a torque wrench with a half inch drive, or a large shifting spanner.

                   

Note: some motors like Bafang have a longer axle. If the socket will not completely go over the nut, it may be necessary to line the axle up with the square hole in the socket.

ToSeven Hanging Bracket

For the DM02 on frames that do not allow pushing the motor up high, or for a solution that is less likely to come loose, ToSeven provides the hanging bracket, which is the same as the one for Tongsheng TSDZ2 motors. Installation is described here. (Tip: It is easier to install the hanging bracket and tighten the bolts securely with the rear wheel removed).

Note the washer on the bolt at the top arrow above. Be sure to install one on this bolt or it will work itself loose and damage the bracket, as you can see in this photo below.


The hanging bracket won’t fit on all frames, though. Another downside is that the motor is positioned lower so there is less ground clearance, but it is only marginally lower than the standard 42T chainring anyway. One upside is that the wires exit towards the rear of the motor rather than underneath, so they are more protected.

JNO ToSeven Torque arm

Another option for all of the above is to add a torque arm. JohnnyNerdout also has a torque arm available for the ToSeven DM01 and DM02.

These secure the motor to the frame as for a similar item for Bafang mid-drive motors, and can be flipped to attach to the chainstay or seat tube, whichever works out the best. (This one below is bent to shape to fit the chainstay on this bike).


The motor won’t go through the bottom bracket

The motor unit may be obstructed by the welds inside the bottom bracket shell where other tubes join to the frame. If you force your motor through this obstruction there is a risk of fouling the threads on the motor or damaging your frame.

A solution to this is using a grinding wheel attachment to a drill or dremel to grind the obstruction flush enough to permit the motor to fully seat through the bottom bracket shell.

How to fix the Q-Factor

One issue with mid-drive kits is that, due to the position of the motor, the left-hand crank will end up closer to the centre of the bike than the right-hand crank. While the DM02 cranks do have some offset to compensate for this (which you can see in the curve of the left-hand crank above), for many people it is not enough. One solution to this is Lekkie Buzz Bars. More info on these here.
(Note, the example pictured has 5mm of spacers on the right hand side which also moves the left side closer, exaggerating the difference somewhat).

Another solution is a pedal extender like these below which can be found on Amazon and other online shopping websites:

Where do all the wires go?

The following diagrams are taken from ToSeven’s website with colour coding added. Click images for links to larger views. (Use mousewheel to zoom or click the +/- buttons that appear at the bottom).

DM02:

DM01:

Is it necessary to install the brake sensors?

Many people don’t. Just remember to stop pedalling when you use the brakes so that the motor doesn’t keep pushing you when you’re trying to slow down or stop. However, this leaves no way to cut power if something goes wrong, such as a jammed throttle or some other glitch that might cause the motor to keep going. In this event, the immediate instinct is to hit the brakes, which would also cut power to the motor if the brake sensors are installed.
Tip: Before sticking the sensor in place, move it around while watching the T24 display to see when it is activated so that you find the best position. There is a small icon that will show whenever the sensor is tripped.

For more installation tips, search youtube for “brake sensor installation”.

Is it necessary to install the throttle on the DM02?

Not really. Unlike Bafang BBS motors, using the throttle on the DM02 only provides the same amount of power as the level you are riding in, rather than overriding everything and providing maximum power and speed. However, having a torque sensor means just increasing pedalling effort when you want an extra burst of power, so using the throttle in this way is not really needed anyway. They are still kind of nice to have when you want to cruise for a while without pedalling, but if they are illegal and likely to attract the attention of law enforcement in your country, then you’re not really missing much if you leave it out.
Note: to comply with
EN1594 regulations, the throttle can be set to speed level 3 in the advanced settings to make it cut out at 6km/h.

Is it necessary to install the speed sensor?

Yes. If the speed sensor is not installed, or not installed correctly, it can cause some strange behaviour and/or prevent the motor from working at all. See the troubleshooting section.

Installation wise, the sensor will usually be attached to the chain stay, whichever side is more convenient. Then install the magnet on any spoke so that it lines up with the centre of the sensor (not the round part), at a distance so that the magnet passes between 5-15mm of the sensor when the wheel rotates. Some sensor brackets allow adjusting this distance. Otherwise, add a spacer to get it closer or just rotate it around the chainstay to move it further away until the correct distance is achieved.

Note in more recent firmware versions, the ability to specify rim size in millimetres has been added for a more accurate speed indicator.


What to do with unused connectors.

Unused connectors, such as the red coloured ones for the lights, should be taped or at least positioned to prevent water getting in easily. Better still, caps are available on AliExpress, eBay and several online shops if you Google “julet higo cable caps dust cover”.


What to do with all of the excess cables.

Cables look a lot tidier if they’re zip-tied together or bound together with cable wrap. If you’re skilled with a soldering iron, you can always shorten them. For the rest of us, a controller box (meant for hub motors) is a neat and easy way to hide them all. Just search AliExpress or your favourite online shop to find lots of different sizes and shapes, both soft cases and hard.


While zip ties are almost indispensable, for the "beauty aspect" cable organizers/protectors are clearly superior:

Another idea is to tuck excess cables into a length of black PVC pipe.


Chains, chainrings and chain lines

How to improve or alter the chainline.

Fitting an aftermarket mid-drive motor to a bike will mean that the chainring will move further to the outside to make space for the motor. This is compensated for by adding an offset chainring which moves the chainline back in, 9mm in this case, which gets it back to a 50mm chainline on a 68mm bottom bracket, which is pretty good on most bikes. There are diagrams on the ToSeven website in the “Dimensions” tab. (Tip: in Chrome, right-click the image and open in a new tab for a larger view). A 42t chainring is the smallest one that will clear the DM02 to have an offset (46T on the DM01). Larger is fine, but smaller will mean dispensing with the offset. i.e. It will be a further 9mm to the outside.

The 68-73mm DM02 ships with two bottom bracket spacer washers to make it fit the wider 73mm bottom bracket. (Note the 68 & 73mm were originally advertised as different versions, but they are exactly the same. ToSeven listed them that way to save confusion for buyers, but it caused just as much confusion for people who knew the difference).

These washers can also be used to move the chainring a few mm further out. In this case below, they were needed to get the motor to clear the frame.

Another option to move the chainring further out is to move it to the outside of the spider instead of the inside. This may mean dispensing with the chain guard but should add 5mm or so.

The spider bolt pattern is a standard 110BCD 5-bolt, which can be found everywhere. These chainrings can be added, along with chainring spacers, if you need even more.

Tip: Choose a “narrow-wide” chainring if you’re using it with a cassette and derailleur as these will help prevent the chain falling off constantly.

The motor hitting the frame is a common problem on fat bike frames. In this case you may need to buy the 110mm option for a 100mm bottom bracket since it will give you an extra 10mm to space out. More on this here. Hopefully, ToSeven will release a 120mm version in due course. (Note that the 100 & 110mm motors are identical, but may come with different spacers for the mounting plate bolts).

Mounting plate bolts

If you’ve had to add spacers to the bottom bracket, or even for some width bottom brackets, you may also need longer bolts and/or spacers or extra washers for the mounting plate bolts. The mounting plate must sit flush with the bottom bracket shell, and not on an angle.

Note that the raised teeth on the mounting plate should go against the bottom bracket shell so it can bite in.

 


Poor chainline - reworking the cassette

If you’ve had to resort to moving the chainring a long way out, such as to clear fat bike tyres or frames, you may find you have a truly horrible chainline which protests when shifting into the larger cogs. One way around this is to rework the cassette, assuming you have one that can be reworked. More on this here.

See also “What is meant by ToSeven’s “9mm offset” and “no offset” in their chainring offerings?”

How to stop the chain falling off constantly.

If you have achieved a chainline close to 50mm from centre per above (for 68-73mm bottom brackets) but the chain keeps falling off anyway, the same solutions apply as for non-ebikes.

  1. Install a clutch derailleur. The clutch is usually engaged using a lever that adds more tension to the chain to prevent it bouncing as much over bumps. The clutch can then be released to make it easier to get the wheel off when needed.

    Shimano & SRAM groupsets generally have these for 10 speed systems and above but check the specs and pictures carefully before purchase as not all have them. There are also some exceptions below 10 speed from SRAM but these are usually quite expensive for downhill racing and other speclialised uses.
    Shimano CUES U6000 (10 speed) and U8000 (11 speed) derailleur models feature a friction clutch for improved chain retention.
    Microshift Acolyte (8 Speed), Advent (9 speed) and AdventX (10 speed) all have clutches, and are usually quite cost-effective to buy. However, they are not cross-compatible with Shimano or SRAM so you will need the compatible shifter and cassette to go with them.
    L-Twoo brand found on AliExpress also have clutches on some derailleurs down to 7 speed.
    Box Components 8 and 9 speed derailleurs have limited slip clutches.
  2. Replace the standard chainring with a narrow-wide chainring. See below.
    There is a good overview of the advantages of clutch derailleurs and narrow-wide chainrings in
    this video.

  3. Install a chain guide. This is what we used back in the day before clutch derailleurs and narrow-wide chainrings. Google “chain guide” to find plenty to choose from depending on your style of frame and bottom bracket. Just be wary of the cheaper Chinese ones as the quality often isn’t fantastic.


What is meant by ToSeven’s “9mm offset” and “no offset” in their chainring offerings?

On ToSeven’s AliExpress store, you may find the chainring options listed like this for the DM02. The DM01 is similar but with a 46T:

A white background with black text

Description automatically generated

This is actually the other way around, but there is a logic to how they are described. What they’re saying is that “no offset” restores the chainline to what it was before the motor was fitted, since the motor’s size forces it to be 9mm wider than standard.

You can see the dish in the image of the ToSeven 42T chainring on the left below. The 36 & 38T do not have this dish (offset) so they move the chainline 9mm further out than standard, hence describing them as “9mm offset” even though technically they are flat. The image on the right is a standard chainring without an offset.

A black gear with a hole in the middle

Description automatically generated

To explain further, let's assume that the standard chainline on a 68mm bottom bracket is 50mm from the centre of the frame to the centre of the chainring. When the motor is fitted, it moves the chainring 9mm further out (59mm). The 42T has a 9mm inner offset to move it back to 50mm.

The red line in the image below shows where a standard flat chainring, like the 36 & 38T offerings, would end up without an offset. This is often not ideal and will cause some protesting when attempting to use the largest cogs on the cassette due to the angle of the chain. The figure on the right shows the result of a poor chainline.

         A blue and black line

Description automatically generated with medium confidence

How to choose the chainring size

For offroad use, smaller chainrings climb hills better. However, you will lose some top speed. Plus, smaller than 42T means you won’t have an offset so you may not have the best chainline. (A 42T is the smallest that will clear the diameter of the DM02 to allow an offset. Note that this will not quite clear the DM01 model which is why it comes with a 46T instead. This video explains the issue and some workarounds to try to fit a 42T. Another option is to flip the spider). Most people find that a 42T, or even a 46T, while taller than normal MTB 1x gearing, is fine with the extra power that the motor provides. One bugbear may be that you will need to join two chains together to work with a large range cassette, particularly for larger chainrings. See “My chain is too short” below.

For speed on the road, bigger means a higher top speed. Another aspect is, if you spend most of your time riding in the smallest cogs, they will wear out faster. In this case, a larger chainring may make a cassette last longer by getting you to use some of the larger cogs more frequently.

Tip: A good place to figure out how fast you will be able to go and/or how well you will be able to climb with a given set of gears is Bicycle Gear Calculator.

Is a narrow-wide chainring available?

A standard 110BCD 5-bolt chainring will fit the To7 mid-drive motor spider. However, these are hard to find with a 9mm offset. The “Solid” branded ones from AliExpress have a 10mm offset and are made for Tongsheng motors but will fit the To7 spider. (The 42T probably won’t fit the DM01 due to its larger size, so go for the 50T for that). There is also a 40T here in either black or red.

Lekkie are also planning to release Bling Rings to suit ToSeven motors in due course, or possibly an adapter that would allow fitting their Bling Rings. At the moment, the Lekkie Bling Ring, even down to 40T, will fit perfectly and even clear the DM02 housing, but there is no way to secure it to the motor since it lacks the spline or the ability to bolt it on.

My chain is too short

You will need a new chain if the new chainring is larger than the previous largest one. However, be aware that standard chains may not be long enough when paired with a 42T or larger chainring and large dinner-plate sized cassettes. In some cases, a longer chain may exist. However, it could be more expensive than buying two standard length chains and joining them together. (When joining two chains and you only need to add a couple of extra links to the standard length, it’s a good idea to cut some off so you don’t have two master links too close together).
To get an idea of the length that you will need to buy, use an online chain length calculator like
this one. Then, once you have the chain or chains, click here to size it to the correct length. You will need a chain breaker tool (recommend Park CT-5 but cheap Chinese ones will last at least for a few chains). Master link pliers also make the job easier.

Is an ebike-specific chain necessary?

There are several chains marketed for ebikes but they’re expensive and probably offer little over standard chains which do the job just fine anyway. Why pay up to three times more if it only lasts marginally longer anyway? KMC X series and Shimano HG series chains are popular, but whatever make and model of chain your bike was using before fitting the motor will probably be fine to keep using. The main thing to watch is chain wear, so it’s worth checking regularly and replacing it when it approaches its limit. Click here for a guide. Gear shifting also needs to be precise. A missed shift is generally when a chain will break. Click here for a guide on adjusting shifting. Poor shifting can also be caused by a bent derailleur hanger. Click here for info on checking and adjusting that.

Note: Be very wary of buying chains on AliExpress, Amazon and eBay. Non genuine chains that appear to be genuine are rampant, and they are rubbish.

Is it possible to install a double chainring on the DM02?

Short answer - yes. Long answer - it depends, and it may not be straight forward.

Firstly, it has been done:

However, you will need the right frame that doesn’t require the motor to be spaced out since that will prevent the derailleur from reaching the outer chainring. You will also need a derailleur that can span both chainrings, and a shifter that can move the derailleur the right distance. Alternatively, you can use two offset chainrings to keep it closer to the frame.

Jon (the owner of the bike above) reports:
The 42T is the standard chainring that came with the motor. The 50T is the Solid e-bike branded one from AliExpress with the 10mm offset. I left on the derailleur, which was for a triple, but is a friction shift. Had to move and adjust the derailleur for the new chainrings, as you would expect. Shifting is okay but not 100% smooth. The chainrings are designed as singles so have no pins or ramps to assist shifting, but these are modern inventions anyway and many of us were shifting for years before these came along. The 50T is narrow wide, so is designed to keep the chain on, but the derailleur can still shift it. I've never had a chain come off. I don't think that the chain ever tried to jump off the wrong way but it would meet the derailleur cage if it did.

Note that a 42t is the smallest chainring that can have the 9mm offset. Any smaller will mean both chainrings will be further out by 9mm over standard, which would mean a pretty horrible chainline in the lower gears, and finding a front derailleur that can reach that far out may be next to impossible as well. There may be a solution in this video for a TSDZ2 with a double chainring. There is a second video with other details here.

Also, while it should shift fine in torque sensor mode by decreasing pedalling pressure, PAS mode may be another story. In this case you may need to lightly pull a brake lever to activate the brake sensor, shift, then release the brake lever.


Do mid-drives work with Rohloffs and other geared hubs?

Yes, no problems. You just need a fairly accurate chainline. The 135mm Rohloff requires 54-56mm, which is easy to achieve using the supplied bottom bracket spacers on a 68mm bottom bracket, or using one of the other chainline fixes discussed above in “How do I improve or alter the chainline”.

To7 motors also require entering chainring and cassette values in the settings. As a workaround, find a matching chainring and cassette option using the Bicycle Gear Calculator. For example, a 42T with a Rohloff with a 16t cog is almost the same as a 38t with a 10-52t cassette. This then means the following parameters will be entered.

Crankset Teeth

38

Cassette Max Teeth

52

Cassette Min Teeth

10


Can it handle the power? The Rohloff is regarded as one of the tougher IGHs (internally geared hubs) available, and
 the manufacturer recommends a maximum of 130nm of torque. The 1000W DM01 puts out up to 160nm + the rider’s input which can be up to 1.5nm per kg of bodyweight (120nm for an 80kg rider), which is well in excess of what the Rohloff can supposedly take. However, Rohloff’s recommendation is regarded as extremely conservative and there are plenty of people running BBSHDs with Rohloffs, which also put out 160nm. Some bike manufacturers also offer this combination. The Rohloff is also equipped with nylon shear pins which are designed to break if the stress gets too much, thereby protecting the gears. This post also points out that with drivetrain efficiency factored in, the Rohloff is well within its safety margin with a 160nm mid drive.

The Shimano Alfine IGH is reported to handle 50 -100nm so it may not last long with a DM01 running through it, but it should be fine with a DM02 which puts out up to 90nm. It will be close to its limit though, particularly if ridden hard off road in high power levels.

Three speed IGHs are regarded as extremely tough beasts. More info on the strength of various IGHs and mid-drives here.

Next issue, to get chain tension, you will also need a frame with horizontal dropouts, or sliders, or sliders with Rohloff-specific dropouts (for Rohloffs). That’s if you don’t want to use a jockey wheel type chain tensioner such as the Surly Singelator. Eccentric Bottom Brackets will not work with mid drive motors since you will have clearance issues as well as not being able to get at it once the motor is in place.

A great Rohloff frame is one with sliding dropouts using the Axleplate CC OEM (8234) and compatible Rohloff-specific sliders. These sliders will also work with most other IGHs. The example below is the Brother Big Bro frameset with Rohloff Dropouts.

Surly has a horizontal dropout with a slot to anchor the Rohloff axle plate:

Below is a home-made mount for an OnOne Inbred frame with horizontal dropouts. It moves back and forth with the brake mount slots to provide chain tension while still allowing the wheel to be easily removed. The anchor bolt for the Rohloff axle plate moves with the mount so that the rotor is always positioned correctly in the brake calliper. This also prevents the hub from being pulled forward, much like a tuggnut. (For other IGHs you will usually need tuggnuts on both sides to prevent the wheel from being pulled out of alignment in horizontal dropouts). The plate underneath spreads rotational force while strengthening the dropout so it can’t be spread open as seen here. (However, this situation was caused more by the use of the Axleplate CC OEM (8234) which is not meant for this type of dropout).

It was constructed from 6mm aluminium plate with extra reinforcing for the anchor bolt. Arguably not the prettiest, but functional and relatively inexpensive to have constructed.


Accessories

Are Bafang brake sensors, throttles and speed sensors compatible?

No. Well, not out of the box. They use different pinouts so you will need to cut and rejoin the wires to make the pinouts match. More on this in this video from around 11:17 or the “napkinCAD” below.

Another method that can work with Magura MT5e Hydraulic brake levers for ebikes is to cut out the keyway and rotate the plug. Be careful not to bend the pins. Once in place and working, it may be worthwhile marking the position to make it easier to reconnect again if you ever need to pull it apart.


Standard Higo/Julet pinout chart

ToSeven Higo/Julet pinout chart

Are Bafang displays compatible?

No. As above, they almost certainly use different pinouts, and may not work well anyway. At best, you will lose the ability to change settings. ToSeven has a large number of displays to choose from here. Some are listed on their AliExpress store, or are available as options with the motor kits. Others are probably available on request. Note that some displays may be limited to a maximum of 48 volts.

Is it possible to install a shift sensor on the DM02?

A shift sensor has the gear shifter cable passing through it and detects when it moves. When it does, it cuts the motor power for a moment, allowing a safer gear shift. More info in this blog.

The DM02 controller does not come with a connector for a shift sensor so it is not possible to install one. (The DM01 motor does come with one, which likely has different pinouts to Bafang shift sensors so they won’t work without cutting and rejoining wires). However, a shift sensor is not needed with the level of power that the DM02 produces, and the torque sensor allows reducing the power to allow a safe shift anyway. Simply reduce pedalling effort and it will shift just fine. Alternatively, back pedalling slightly just before you shift will cut the power temporarily, making for perfect shifts. Likewise with internally geared hubs such as Alfines and Rohloffs which do not even require the chain to be moving to shift. With a little practice with the pack pedalling method, lightning-fast shifts are possible, even under full power.

Another method is to lightly squeeze one of the brake levers enough to trigger the brake sensor, then shift, then release (a little like using a motorcycle clutch). Alternatively, one of the brake sensors can be modified to work as a manual kill-switch (anything that moves the magnet away from the sensor and back). Bafang kill switches like these below likely have different pinouts and will need to be respliced to work.

However, as mentioned, they are not needed. Just remember to reduce pedalling effort or back pedal slightly just before shifting.


ToSeven Display comparison

Below is a quick comparison of the displays listed on ToSeven’s website. Highlighted are options for the DM02 on their AliExpress store. Others in the table should be ok as long as they support the UART protocol and have UART connectors, but check with ToSeven before buying.

Note that while the DM02 can support battery voltages from 24-60V, some displays only go up to 48V. All current T24 displays should support up to 60V batteries but some older ones may not. There are also several assumed typos on their website so there may be an error or two if I have assumed incorrectly. One user also reports that it says “Max: 60V” on the back of their T154v3, so the webpage specs may not always be accurate or up to date. However, if asked, they still recommend max: 48V.

Display

Screen Size

Type

Supported protocols

Bluetooth

Supported voltages

T24

2.4"

Colour TFT

UART/RS232/CAN

N

15-60V

LCD-135 B/W

3.5"

Monochrome

UART/RS232/CAN

N

15-90V

LCD-135CBT

3.5"

Colour TFT

UART/RS232/CAN

Y

15-90V

LCD-135C

3.5"

Colour TFT

UART/RS232/CAN

N

15-90V

T154

1.54"

Colour TFT

UART/RS232/CAN

N

24-48V

M15

1.54"

Monochrome

UART/RS232/CAN

N

24-48V

C1

3.5"

Colour TFT

UART/RS485/CAN

N

24-72V

C2

3.5"

Colour TFT

UART/RS485/CAN

N

24-72V

C3

1.77"

Colour TFT

UART

N

24-72V

E100

 

LED

UART/RS232/CAN

N

15-60V

L1

1.8"

LED

UART

N

24-48V

S2

3.5"

Colour LCD

UART/RS485/CAN

N

24-72V

S3

2.5"

Colour LCD

UART/RS485/CAN

N

24-72V

S4

2.2"

Colour LCD

UART/RS485/CAN

N

24-60V

LCD-135C Display and the Android app

The LCD-135C comes in three versions - a monochrome and two colour versions, one with Bluetooth and one without. Be sure to order the correct one if you want Bluetooth. The Bluetooth version can be identified by the letters “BLE” on the back.

The Android app for it can be downloaded from To7’s website here just under the LCD-135C firmware button. However, there are reports of it not working with Android versions below Android 13. This is reported to be fixed now so try it first, but if it still happens, try an older version:

Note that the file needs to be unzipped first, and the apk file is not supported by Google so it will need to be sideloaded. Instructions here if you have not done that before. This is for Android only. There is not an iOS version available yet.

Are Bafang Chainrings such as Lekkie Bling Rings compatible?

No, these have a different bolt pattern. At this stage you can only fit the ToSeven-supplied spider. However, these will take a standard 110BCD 5-bolt chainring. Lekkie do plan to release chainrings for ToSeven motors in due course. Cheaper but less attractive and robust copies will almost certainly appear on AliExpress as well if there is sufficient demand for them.

Do Tongsheng spiders fit ToSeven motors?

No, ToSeven motors (left) have a centre spline and locknut. Tongsheng spiders are attached with five centre bolts (right). The chainrings are both 110BCD though.

 

Does the Lekkie One Nut fit To7 motors?

The Lekkie One Nut is designed for Bafang motors which have a smaller thread size. The DM02 and DM01 have a 33.5mm thread, specifically M33.15x1.5, which is the same as the TSDZ2. Lekkie has One Nuts, which they have called 1TSNuts, to suit ToSeven and Tongsheng motors now available. Here is an 1TSNuts fitted to a DM02:

The advantage in these is that they use a standard Shimano bottom bracket tool or socket so they are easier to torque down, and they have two grub screws that prevent it from coming loose.

What lights are compatible?

Lights controlled from the display.

More recent versions of the DM02 come with a connector and Y cable to connect lights. Older versions will need to replace the controller to get the connector. The supplied cable has a green 5-pin Julet (aka HiGo) connector for the controller end, and red 2-pin Julet connectors for the lights. One side is longer for the front lights, while the shorter one is for a taillight. These can then be turned on/off via the display or set to come on automatically. The taillight can also function as a brake light as described under Main Settings > Device > Brake Light.

ToSeven have their own compatible headlight here, and a tail light here.

Note these are only 6-volt which indicates there’s only 6 volts to play with. They appear to be the same as Bafang lights which you can see reviewed here. Going by that, they should be fine for road use but probably not the brightest for off road riding. For off road, stick to recommendations in MTB forums.

Ian’s review:
I like the To7 light set up for standard urban commuting and riding under 25kph, the light is surprisingly bright and has a brake light functionality if you have the brake sensors set up. It is not good, nor is it designed for, dark trails, country roads and speeds over 30kph etc The lens has very clear cut-off lines so there is limited peripheral vision and does not 'throw' light far enough for riding at speeds.

Finding other lights with these connectors can be difficult but you may find other candidates by searching for “ebike light” on AliExpress and scanning for the right connector. Also ensure it supports 6-volts or you will require a relay to make it work. A 12-volt LED light on a 6-volt power supply, for example, probably won’t work. If it does, it will be very dim. Other candidates may show up in the “related items” that come up under each one. Also ignore advertised lumen values. These are almost always grossly exaggerated. Instead, read the reviews.

If you find a suitable light but without Julet connectors, it is not too difficult to find Julet connector pigtails that you can twist and solder (and heatshrink) onto any DC light. (Tip: Solder Butt Connectors make this task dead easy. See here. However, they do have their critics who prefer the old-school method.)

Pigtails:

For higher powered lights, you can add a splitter in between the motor and battery. To use the display to control the lights, you'll need a pigtail to connect a relay to the 6-volt connector, and then the lights get power through the relay, from the splitter. If you're doing direct control of the lights, the splitter would go to your light control interface (buttons on the bar, I'm assuming), and the lights get power from that. For more detail, see here and here.

Lights powered by the battery

More powerful lights such as motorcycle headlights, either halogen or LED, are readily available on AliExpress and Amazon with a variety of mounts. These are usually 12 volt and can be wired to an ebike battery using a 48v to 12V DC to DC converter (more info on these here) with an XT60 splitter (or whatever battery connector you have), or to a separate 12V power pack. While it may be possible to wire these in to allow the display to turn them on and off, it is generally easier to wire them to a separate switch.

They can also be wired up to a 3 way switch for high beam and low beam.

(The low beam on some of the cheaper lights is not very bright but is still useful as a daytime running light or when riding in well lit areas when you don’t want to blind cars. The high beam isn’t stupidly bright, but bright enough to dazzle drivers).

There is an example installation here. However, twist and solder and heat shrink the joins or use bullet connectors rather than just twisting the wires together and wrapping tape around them.

Wiring diagram for high beam/low beam using a 3 way switch:

To keep it simple, the daytime running light wires can be ignored if the light comes with them.


Flashlight mounted lights

If you have a lot of bikes, it is more cost effective to have lights that can be easily moved from bike to bike. It is hard to go past a powerful flashlight mounted to the handlebars in this case. While there are many to choose from, my preference is the Convoy S2 with Biscotti firmware since it is very bright, has a great beam pattern for cycling, it’s small and light, and it has many configuration options. While this can't be turned on or off using the display, it is easily reached on the handlebars or on your helmet.

What you will need:

  • Convoy S2. I go for the 6500K (white) colour, and 7135x4 driver if I can get it. These will run at full power without getting overly hot, and are plenty bright enough. If I can't get them, the 7135x8 version is even brighter but it will get very hot after a while at full power so I usually run them at 35-50% on the bike, which is still seriously bright. Buy a second one for your helmet for offroad use. (The configuration options are in the description at the above link).
  • Two or more rechargeable 18650 batteries (buy locally and go for quality brands like Panasonic)
  • An 18650 battery charger
  • GoPro handlebar mounts and/or a helmet mount (cheap and easy to find on AliExpress for all bar sizes. Buy one for each bike.)
     
  • GoPro flashlight mounts - Buy one for each bike. Dirt-cheap on AliExpress (I drill a hole through them and use a reusable zip tie to secure them rather than the supplied silicone band so it doesn’t wobble or risk breaking and falling off)

  • For a tail light that can easily be moved between bikes, any cheap rechargeable one, or that can take rechargeable batteries, will do. There are many that come with silicone bands to attach to a seatpost, or alternatively can be clipped onto the back of a saddle bag, backpack, or a helmet by drilling a hole through the vents and adding a zip-tie.

Is there a bash guard available?

Thostr designed a 3D printable cover for the DM02 here.

Carousel image representing the 3D design. Either an user-provided picture or a 3D render.

It comes with the warning: Be aware that this cover will reduce air flow over the motor and increase internal temperature. Use with caution. I made this for use in cold places (where I live...) and on wet and muddy days.

There is also one for the DM01 available here.

ebikestuff.eu also has a cable guard for the DM01.


Batteries

What to look for in a battery

Any battery that can handle at least a 20-amp draw will be fine for the DM02 (30+ amps for the DM01), but more is quite okay. For example, a 48V 40-amp battery is fine to use on the 500W DM02 which draws a maximum of 18 amps. Just not the other way around. A 10-amp battery will not work well, if at all. (Note, we’re not talking amp hours (ah) here. That is the battery capacity, not the number of amps that can be drawn at once).
Higher voltage batteries have better range and provide more power than lower voltage batteries, but they are more expensive. Likewise, a 20ah battery has better range than a 13ah battery but it will also be more expensive. It may also be physically larger and may not fit inside your bike frame. Be aware also that
different voltage batteries may require ordering a different controller version.

A simple formula for peak power is volts x controller amps = watts. So a 48v battery with a 30A controller will give up to 1590W with a full (53V) charge. 52V, up to 1720W, 60V up to 1970W, and so on. However, you won't be using maximum power all of the time, and that peak power will drop as the battery discharges.

A simple formula for range is volts x battery amp hours (ah) = watt hours.
Watt hours divided by 12.5 (12.5w per km) = maximum range (ridden conservatively  in the lowest power level on smooth, flat roads).
Battery watt hours divided by motor watts = time at full watts.
So, a 13ah 48v battery = 624wh. 624 ÷ 12.5 = up to 49 km if ridden carefully (divide by 1.6 for miles). Ridden hard, 624wh with a 1000w motor (624 ÷ 1000) = .624 hrs (.624 x 60 = 37 mins).

There is a spreadsheet calculator for the above here. (Download or copy to your own Drive folder, or ctrl-z repeatedly to return it to its original values when finished with it). Only alter the values in red as applicable, and the rest will automatically update. Keep in mind that these figures are just a ballpark to get a rough idea of how a battery might perform with a given motor and controller. Weight, terrain, tyre width & tread, power level, rider’s effort and so on, will all impact range.

Another easy to use online battery range calculator can be found here.

Where you buy your battery is also important. The old saying “if it seems too good to be true, it probably is” applies. Suspiciously cheap batteries use low quality no-name cells and may not have an adequate protection circuit/BMS (Battery Management System). These are generally the ones that catch fire.

Will you also need a battery carrier?

Yes, you will. ToSeven kits and most other kits on the market do not come with battery mount/carriers since there are lots of different batteries out there which all use different carriers.

Battery carriers also come with different connectors to connect them to the motor.

ToSeven will fit whichever connector type you need when you order from their AliExpress store, but you will need to manually request it on the order form when you place the order. I didn’t do this, and it came with an XT60 connector, but fortunately it matched my carrier anyway.

If you don’t do this and find yourself with a mismatch, you can usually buy an adapter. Or you can buy a pigtail, cut the incorrect connector off and twist & solder the pigtail in its place.

Note 1: It is recommended to heat shrink the individual contacts going into XT60, XT90 and Anderson connectors to prevent shorting, particularly from water ingress.This is generally not done by default from the factory. Alternatively, use silicone if the connector can not be redone easily. It is not recommended to heat shrink both wires together as this can trap moisture and increase the possibility of shorting.

Note 2: Battery carriers mount to the bottle cage bolts on the frame. These are not particularly strong. For offroad use it is generally recommended to add a third bolt. This may also be needed if the cage bolts are not in a suitable position on the frame. This will require a right-angle drill chuck, a rivnut (aka nutsert) and a rivnut tool. See here for an installation example. These can all be found relatively cheaply on eBay, Amazon and AliExpress, or ask a bike shop to do it.

Another option is the Grin Tech Battery Mounts which provide extra anchor points without any drilling.


Does an XT90 connector fit through the opening on the DM02?

Yes it does. Pictured is an XT90 in the hole and an XT60 in hand.


Battery doesn’t show as 100% full when fully charged.

Battery calibration can be fine-tuned in the Advanced Settings section * under “Battery”. While in this menu, long press the up and down arrows together for more options.

Select each % to adjust by pressing the up/down arrows to scroll, then short press the power button to select, then up/down again to adjust. See Advanced Settings > battery below for recommended values.

 * In more recent firmware versions, the battery settings are found under Main Settings > Device.


Repairs and maintenance

How to lube the chain

Due to the freewheel inside the motor, pedalling backwards will not move the chainring or chain. You will need to put the bike on a stand and pedal forwards (Note, watch your fingers if using the throttle or walk mode for this!), or do a section at a time if you don’t have a stand. However, an easy fix is to stick an Allen key into one of the chainring bolts temporarily. This will then catch on the crank as you push the pedal backwards, allowing the chain to move. Note that there will be some resistance due to spinning the electrical part of the motor backwards as well as all of the associated gears, clutches and freewheels, so it will take a little bit more effort than on an analogue bike.


How to grease the DM02.

If crunching or squeaking sounds are heard, it usually helps to add some more grease, in particular to the main gears. These are the steel gears found after removing the right-hand cover. In some cases these have even been found to be dry. See this video for a look inside the motor compared to the TSDZ2. See also this video for complete disassembly and reassembly to replace the torque sensor. Here is another one.

ToSeven’s official recommendation for grease is any grease that can withstand temperatures ranging from -20°C to 160°C. Specific areas that need greasing are: the pair of steel gears, rotor axle teeth and the nylon blue gear: A little around any gears, bearings and other moving parts can’t hurt as well. Note that only a small amount of grease is required.

Also be aware that getting at gears other than the pair of steel gears will involve taking the motor almost completely apart, which may void warranty if done without authorisation, so try those first since they only involve removing the plastic side cover. Just smear a little around all of the teeth, then replace the cover, being careful not to overtighten the screws as the cover is just plastic and could be damaged if you’re too rough.

Olek from ToSeven suggested using Molykote EM-30L grease. It’s suitable for high loads and fine for metal to metal, metal to plastic (such as the blue gear on the other side) and plastic to plastic. Ian found it completely got rid of the creaking sounds in this video.

Mobilgrease 28 may be another, possibly better, option. See here. However, do not mix Mobilgrease with the factory grease.

Another recommended grease is Lucas X-TRA Heavy Duty blended with some thick PAO oil (the thicker the better, e.g. 320W oil) This grease is polyurea SS thickened, has excellent durability and adhesion to gear teeth. (Note this is petroleum-based and may not be suitable for the blue nylon gear).

Note that Molykote PG-75 is not a suitable alternative. While the specs and application are similar to EM-30L, and it is considerably cheaper, PG-75 is meant for higher speed gears with lower load. It will not reduce noises in the DM02. If anything, it makes them worse.

Creaks, squeaks and whistles

Another cause of noise while pedalling, such as this noise, can be a lack of lubrication in the motor’s bottom bracket shaft. In this case, ToSeven recommends adding some oil either side. Standard motor oil (eg 5W-40) is recommended

One user found they had to repeat the process several times to get enough inside. It is also recommended to remove the chainring to get full penetration on that side.


Other causes of noise

Rarebird6969 reports that there are two spring shims under the lower bearing that are unnecessary and can be responsible for undue noise. If you have a noisy motor, removing these may improve it. Pictured is the DM01 but the DM02 should be the same. See also bearing diagrams below.


This image came from ToSeven so they also recommend removing these.

Ian also reports there is a cheap bearing supporting the axle that may be responsible for noises.



Noise due to insufficient clearance from chain stay

Ensure that there is some gap in between the motor and chainstay. If the motor is touching, it can cause friction/vibration which will cause noise. See also When the chainring or motor hits the frame and How to improve or alter the chainline.


Electrical whirring

ToSeven motors are usually fairly quiet but often not completely quiet. Some electrical whirring is normal, particularly when using high power. If this noise becomes particularly loud, such as in this video from around 3:16, it is likely to be a faulty controller.

How to remove the chainring lock nut

Before removing the motor from the bike, remove the right-hand crank but leave the bike on its wheels with the chain still attached. Put the supplied spanner on the locknut, pointing towards the front wheel. Tap the spanner downwards, turning the nut clockwise (The nut is reverse thread). If the nut is excessively tight and the bike keeps lurching forwards, get someone to sit on the bike with the brakes on.

If you have already removed the motor or chain, you will need to use a chain whip to hold the chainring steady while the nut is loosened per above.
Note: DO NOT tighten the nut without the chainring in place. It goes on easy but it is very difficult to loosen again. The freewheel inside the motor will spin in the same direction it needs to be loosened. If you find yourself in this situation, the only way out is sharp smacks on the tool with a hammer per above repeatedly until it gives.


Are there other wrenches available to tighten the locknut without removing the crank?

Yes, standard lockring spanners such as these will do the job fine.

Jonas reports that the Toopre TL-S23 sockets on AliExpress will fit with some minor modifications. These have 8 notches and a 41.25 mm inner diameter.


Just some minor filing needed on the teeth and some widening of the center hole to fit around the crankshaft case. a lathe would be the correct tool to do that, but a carbide burr will also work. Need to remove about 1.5mm of material for it to clear around the case. In order to use it with an impact wrench, you need to add a 36mm 1/2" square socket.

After opening up the centre hole, some filing of the teeth is then needed for a snugger fit.

Cranks keep coming loose

While there are no reports of ToSeven cranks coming loose, if you find the left-hand crank or both cranks continually coming loose as reported on many Bafang motors, a relatively cheap alternative is Shimano STEPS E6000/E6010 cranks which are easy to find on AliExpress and other online shopping sites. Another option is Lekkie Buzz Bars which come in 160mm & 170mm versions with a selection of colours. There may be others around such as these.

DM02 torque sensor replacement

Check out the video below for a demonstration of disassembly and reassembly of the DM02 to remove and reinstall the torque sensor. Be aware that it will require some basic tools including Allen keys and circlip pliers, and some mechanical ability. Also, opening the motor without authorisation may void warranty.

If your motor has some miles on it, this is also a good opportunity to add some grease to the motor gears. Do not use petroleum greases on the blue gear as it may react with the nylon and damage it.

Note: When installing the torque sensor, the green side pictured here should face down when you put it in place.

It should look like this with the non-coloured side up when installed.


Note: At 9:50 in the video on the left side, there are 2 washers that go in place on top of the freewheel ratchet mechanism. These are important for torque sensor function.

A close-up of a black and silver metal piece

Description automatically generated


How does the torque sensor work?

There are some interesting observations in a German forum here. I will do my best to translate the images below. The author, Hochsitzcola, also suspects that grease in this area could cause problems with the operation of the strain gauge over time.

A circular object with wires and wires

Description automatically generated



A better shot taken with
magnetic field viewing film.

It works on the principle of helical gearing as seen in this video.

Close-up of a mechanical device

Description automatically generated

Close-up of a motor with a sensor built into the center

Description automatically generated

Wiring diagram for the torque sensor

DM02 blue gear replacement

This video shows removal of the controller which also shows how to remove the blue gear. It comes off easily using fingers or prising off gently with screwdrivers, and does not require a pulling tool. From 6:25 in this video, you can see the blue gear being inserted back into place. See also this video.

How to replace the DM02 controller

This video demonstrates how to remove the DM02 controller.

This video demonstrates installation. Be aware that the hardest part of this task is getting all of the wires tucked back inside without pinching them when you close the motor up. Do not force it or you may damage a wire (don’t ask me how I know). One thing that can help is to smear a little grease in the groove that the rubber gasket goes in. That will at least hold that in place while you fiddle with the rest. If the motor will not close completely, wiggle the crank back and forth a little using a spanner, or temporarily fit a crank while pushing.

More detail from Ian (Video here):

Replacing a DM02 controller for the first time can be daunting. Especially the current versions with the lighting wiring loom. It is a mass of loose wires that can easily be mashed or cut when putting the motor back together. This is the difficulty.

First thing, make sure you give yourself plenty of time. The actual controller replacement can easily be done in under an hour with experience, good dexterity and good eyesight. But for beginners, allow several hours of interruption-free focussed frustration.

The rubber grommet cable tidy on the replacement controller will need to be moved to allow the perfect length of wires between the controller and the exit point. Try using small zip-ties or tape to keep the wires bundled together so they're easier to manage. I find it neatest to wrap the "Hall Sensor" wires around the back of the controller - poking the wires down the small gaps either side between the controller and below the rim of  the motor case before tightening the screws that hold the controller in place. There's a 3cm plastic wrapped connector and this pokes down the "triangular" gap between the controller and motor housing on the right when looking at the inside of the controller. Make sure the torque sensor connector from the controller side isn't tangled in the other wires and have it poking out to the left of the controller when you are looking at the potting inside of the controller. Plug the motor phase wires together, three wires/yellow plugs, and pull them, making a loop or single fold to the left and poke down between the inside of the controller and the motor casting so it is well out of the way. This leaves the torque sensor loom to the left, and all the wires which need to exit the motor housing, power, display, speed sensor and light wires. Put the plastic cable tidy clamp over these wires, paying attention to how it screws into the motor casing. Then poke the wires out of the motor casing. Lay these wires along the 'Cable Channel' making sure they're just the right length to the rubber grommet so they don't stray from the cable channel - if they do they will get cut. Once the right length is managed for all the cables, ensuring they conform to the concave curve on the inside of the controller casting so they clear the convex curve of the motor casting, plug the torque sensor connectors together and line the two motor halves together and gently push together. The torque sensor wires will poke into the left and “triangle” between the controller side and the motor housing. A slight twist of the square taper axle will help align the gears. As the two halves come together use a light/torch to look through the gap between the halves and poke/adjust any loose wires out of the way of the metal.

Important - if the two halves of the motor do not come together to touch completely without effort, wires are in the way of metal surfaces and will get cut. DO NOT push hard, or tap with a mallet or force screw the two halves together. Don't ask me how I know all these things fail. Pull everything apart as much as you need to to see what is in the way, adjust, and try again.

How to replace the DM01 controller

The DM01 controller is a lot easier to replace than the DM02. Getting it on and off should be fairly self explanatory. The one area of confusion may be which order that the three coloured wires go on the motor terminals.


DM02 bearing diagram

The diagram below shows the bearing locations and types in the DM02 should they need replacing.

Sizes

 

Inner diameter

Outer diameter

Width

628

8mm

24mm

8mm

61900

10mm

22mm

6mm

607

7mm

19mm

6mm

6902

15mm

28mm

7mm


Inside the bottom bracket shaft at the top of the diagram above is a 6902 bearing and a proprietary non standard thrust bearing that can only be sourced from ToSeven, who state that it is “an indispensable part of our DM motor”. Ian shows these bearings in
this video. While the non standard thrust bearing has been known to make noise for some people, usually some oil or grease will sort it out. If not, ToSeven will supply a replacement bearing on request.

See also “Other causes of noise” above.

Other DM02 bearing diagrams


DM01 bearing diagram

The diagram below shows the bearing locations and types in the DM01 should they need replacing.

Sizes

 

Inner diameter

Outer diameter

Width

6902

15mm

28mm

7mm

609

7mm

19mm

7mm


Inside the bottom bracket shaft at the top of the diagram above is a 6902 bearing and a proprietary non standard thrust bearing, the same as the DM02 above.

See also “Other causes of noise” above.

DM01 detailed images

Click here for a detailed tear-down of the DM01.

Where to find spare parts?

ToSeven is gradually adding more parts to their AliExpress store. For others, you have to ask. For the fastest response, email requests to sparepartsupport@to7motor.com.

How to get it running cooler

Ride in a lower power level, don’t let the motor bog down when climbing hills, use a lower gear and spin faster. See also TempSensor settings in the Advanced Settings section.

If you find you want to use a higher power level and it’s getting a bit hot and bothered, there are some modifications that may help.

For the DM02, the first is to add thermal pads to the sides of the controller. Unlike the DM01 which has an external controller which is exposed to air, the DM02 is housed internally and there is about a .3mm gap either side. Closing this with thermal pads will help the heat get to the outside of the motor faster. However, there are conflicting reports as to how effective this is. See here and here.


To view in the
High Voltage Light Electric Vehicles Discord channel click here.

The thermal pads used were these. Note that these are .5mm so it will be a bit of a squeeze to get it all back together. Thermal paste such as Arctic MX-4 or silicone heat transfer compound may be an easier option. See also this post where flattened aluminium and thermal paste were combined for a great result.

Heatsinks could be added (glued) to the motor case as well but most people seem to be sceptical that this would have much effect and would have other downsides such as being difficult to clean. Others disagree and report that they make a big difference to motor cooling.


(Click for larger)

The next idea is to add a cooling fan to blow air onto the motor. Jonas reports the following test results with the DM01 at full power (48V 30A) on a 2km climb with a 23% gradient:
Ambient temperature about 25°C
Starting controller temperature 37°C
Final temperature without fan: 69°C
Final temperature with fan: 39°C

That’s impressive but note that it makes a lot of noise. You can hear it here in the High Voltage Light Electric Vehicles Discord channel.

The fan used is this one which goes to 14700rpm and pushes up to 68.6CFM at 61.5dBA. Click here for data sheet. There are plenty of other 48-volt fans that may be quieter, but these will push less air (lower RPMs etc) and they may not be much quieter anyway. Note also that this may not exactly be waterproof.

Other parts required will be a way to connect it to the battery, which would require an XT60 splitter or adapter (or whichever connector you have in between your battery and the motor). You may also want to wire it to a switch on the handlebars or perhaps get tricky with a 48-volt PC fan controller and temperature sensor like this one. (Note I have not tried this, and I am not an expert, so do your own research. There are hundreds of fan controllers out there and almost all of them have complaints about not coming with instructions and being difficult or impossible to work out. This one at least seems to have some instructions on the seller’s site and almost all positive reviews).


Troubleshooting

What does the flashing yellow triangle on the display mean?

While the triangle is flashing, long press the Info button on the T24 display to find out what it means. For the T154 display, short press the power button until “Info” is displayed at the bottom of the screen, then press the down arrow. There are a variety of error messages and solutions explained in the manual:A black and white screen with red text

Description automatically generated 

A black and red text

Description automatically generated

What does the “Motor Disconnect” error message mean?

This indicates that the display cannot see the controller. In most cases this would be a connector not plugged in correctly, such as the main cable not fully seated. Also check for bent pins. Failing that, it could be a faulty cable or faulty controller. In the case discussed here, a loose screw on the controller was found to be the issue.

What does the “Motor Blocked” error message mean?

While “Motor blocked” can be a symptom of a bricked controller if it won’t go away again, there are also some other conditions that can trigger it temporarily. Kat from ToSeven had this to say via WhatsApp.

Recently, we received feedback from some customers reporting a "motor blocked" issue. We would like to draw your attention to the following main reasons why you may see this error:

  1. If the user's riding load is too heavy or the road conditions are poor, it can cause the motor to reach its maximum torque, triggering the protection mechanism to stop the motor temporarily.
  2. When the user's bicycle experiences an impact load or the motor stalls while climbing a slope, the two phases remain connected for an extended period, and inductor saturation can also lead to overcurrent.
  3. Sudden acceleration or braking of the e-bike can cause large body inertia. If the acceleration/deceleration time is set too short, the synchronous motor speed changes too rapidly, causing the rotor and stator magnetic field to lose synchronization. This can result in an induced electromotive force that is too large, leading to overcurrent.

Our DM mid-motor has a protection setting in place to ensure that the power supply can be cut off promptly when the motor is overloaded, preventing motor damage. This is why some users may see the "Motor blocked" message on their displays.

We kindly recommend all users ensure the load is not too heavy when riding with our DM mid-motor, and avoid excessive use of the motor on steep or uneven terrain to reduce the risk of the motor reaching its maximum torque.

Note that this has also been addressed in more recent firmware so update firmware if you witness this fault.

A faulty torque sensor can cause this error to appear, usually while climbing a hill or just afterwards. If the torque sensor becomes stuck at a higher voltage, it can cause it to max out and trigger the motor’s protection mechanism. See “How to test the torque sensor” below.

What does the “Communication Interrupted” error message mean?

This is usually a sign of a bricked controller but may possibly be recoverable with a firmware reflash. See also “Program Fail” error.

What does the “Controller Broken” error message mean?

Check all connectors and try reinstalling firmware but this usually means the controller has failed and will need to be replaced.

Display goes crazy and/or no power.

This is usually because the speed sensor is not connected properly or is too far from the magnet on the spokes. You will also usually see a yellow triangle flashing within a few seconds when you start riding, then a sudden loss of power. Also check that the level selected isn’t 0, and the main cable is plugged in all the way. The main connector can be tough and may require some muscle to get all the way in. See “Brick stories” below.

Display turns itself off just after it starts.

This is most likely due to a communication problem between the display and the controller. If the display can’t see the controller, it shuts down again. Check the main cable connector. This one is tight and requires some muscle to get all the way in.

Another common cause is, like the previous FAQ, the speed sensor has not been installed correctly. The spoke magnet should be within 5 - 15mm of the sensor. Anything outside of that may not be being read so the display assumes nothing is happening and automatically shuts down after 3 minutes of no activity. Watch the LED on the sensor. If it doesn’t light up when the magnet passes, it’s not being read.

Also, be sure the spoke magnet lines up with the centre of the sensor, not the round part.

Display goes to 99 kph just after starting and power cuts out.

The sensor is too close to the magnet as above.

Display is completely black or difficult to see in daylight when wearing sunglasses.

Polarized sunglasses will black out TFT/LCD screens. You can test if your sunglasses are polarized by holding them in your hand while looking through them at the display, then rotate them 90°. At some points you may be able to see the display clearer than others. The only solution is to buy some non-polarized sunglasses for cycling. More info on this here.

Display randomly resets

Currently under investigation but this has happened to several people. One cause might be a button sequence, something like pressing the on button to boot up but not long enough to actually turn on and then pressing the on button again within 5 seconds. Others have reported it happening after resetting the timer by holding the power and down button together, which is the correct way to do this but it shouldn’t reset everything, just the timer and averages. This might be perhaps holding these buttons down for too long but it may also be a bug.

Average Speed automatically resets at 119.3km

A known bug demonstrated here.

No power with torque sensor enabled.

If you get no power from the motor when the torque sensor is enabled, but the throttle and PAS mode (torque sensor disabled) still work fine, (as seen in this video) then this is most likely a faulty controller. However, it is also possible that similar symptoms could occur from a faulty torque sensor. If it passes the torque sensor test then it is more likely a faulty controller.

What is a bricked controller?

If a display becomes unresponsive, then the controller is referred to as “bricked”, meaning it’s then only good for being a paperweight or brick. This can sometimes happen while attempting to upgrade firmware, or sometimes inexplicably after changing settings. Chances are there was a fault with the controller all along and this was going to happen to it eventually anyway. It can also happen if mistreated, such as exposure to water or a sudden temperature change such as hitting a puddle with a hot motor, or using settings in the advanced menu that are outside of its safe limits. Unfortunately, there is no recovery procedure, and the controller will need to be replaced.

Common symptoms are a “Motor Blocked” message that won’t go away, or “Communication interrupted”. Another common symptom is an unusual amount of resistance when pushing the bike backwards.

Brick stories: Corrupted controller from partially seated cable

A user reports their motor and display became unresponsive after attempting to navigate the menus after recently installing the motor. It was later discovered that the motor to display cable connection was not fully seated. Resolution of this required use of a programming cable to reinstall firmware (in this user’s case, an older IAP programming tool and firmware version was needed to successfully reinstall).

Lesson: ENSURE CABLES ARE FULLY SEATED.

(left) NOT FULLY SEATED - BAD, (right) fully seated - GOOD

 

Most or all power is suddenly lost when pedaling hard up a hill or after a gear change.

This can be a faulty torque sensor or “motor blocked” error due to overload. It can also happen if the controller overheats. See “How to test the torque sensor” and the Temperature Settings below.

Ghost pedalling or gradual loss of power with torque sensor enabled (DM02)

While less likely to break than the Tongsheng design, the ToSeven torque sensor does have its own issues. One is that it is a cheap electronic component which can sometimes fail or have a manufacturing defect. Another is that it measures strain across metal components (wheatstone bridge) which also expand and contract with heat, which can throw its calibration out during a ride. The voltage range measured is 0.6 - 0.7V at rest, up to 3.3V when maximum pressure is applied to the pedals. As the voltage goes up with more pressure, more power is delivered from the motor, giving the effect of multiplying the torque from your legs.This works great when the motor is cool. However, as the motor gets hot, the resting voltage for the torque sensor rises as well, so instead of 0.6 - 0.7V at rest, you may see anything up to 1.2V or more. The motor then thinks that there is pressure on the pedals when there is not, which can manifest as some slight ghost pedalling, or behaving like it has gone up a few power levels, or the motor has somehow switched itself to PAS mode, For most people riding on fairly flat surfaces, this voltage increase may be barely noticeable, or perhaps even a positive thing since the bike will feel easier to ride as it happens. However, this is the response under light loads. Under heavier loads such as climbing hills there may be noticeably less power available and/or very little torque sensor response.

Solutions: A reboot will recalibrate the torque sensor to the increased voltage. However, while this will feel more normal again, it’s not quite as good as when the motor is cool since the voltage range for the torque sensor is now reduced. e.g. instead of 0.7V - 3.3V, you now have something like 1.2V - 3.3V.

This behaviour has been addressed in more recent firmware since November 2024 for the DM02, so update firmware if it becomes too annoying. The torque sensor resting voltage may still rise with heat, but it behaves much better if/when it does and may no longer be noticeable. If it is still noticeable, a reboot will allow it to calibrate to the increased temperature. If rebooting doesn’t get it behaving normally again and/or the issue quickly returns, then the torque sensor is likely to be faulty. See also “Torque Sensor Voltage Deviance”.

Dragging sensation when speed limit is exceeded

The motor is designed to stop providing power when the speed is exceeded in the current level, which is useful to meet legal requirements in most countries as well as the ability to keep pedalling under your own power when assistance is no longer needed. (These limits can be customised in the Advanced settings under Speed&Power > Speed. The way ‘speed’ is applied is also governed by PAS > SpeedLevel, TorqueSensor > SpeedLevel and Throttle > SpeedLevel). However, some people report a dragging sensation when the motor cuts out, which is greatly improved if the SpeedSensorFail setting under Device in the Main menu is set to ‘Speed Unlimit’ instead of ‘Speed Limit’.

Torque sensor voltage changes when hitting bumps or bouncing the bike (Torque Sensor Voltage Deviance).

This is most likely a faulty torque sensor. See “How to test the torque sensor” below.

For more detail on this issue, see this thread in the High Voltage Light Electric Vehicles Discord channel

Low or no power after starting, requiring a restart to get it working properly

This is most likely a faulty torque sensor. See “How to test the torque sensor” below.

Timeout after torque sensor calibration.

If you get a “Timeout” for the torque sensor calibration instead of “success” when booting up, you most likely have a faulty torque sensor. See “How to test the torque sensor” below.

How to test the torque sensor

To test the torque sensor:

  • Start the motor as normal, then hit the down arrow to switch to level 0.
  • Short press the power button repeatedly until “Test” appears at the bottom of the screen, then hit the ^ button
  • Short press the power button repeatedly again until “Drive” appears at the top.

The torque sensor should show 0.6V to 0.7V when cool. Anything else is a problem.

  • Now (assuming the voltage is within the correct range) hold both brakes and push on a pedal as hard as you can. If you’re strong enough, it may reach as high as 3.3V. How high it goes is not the issue but rather what happens when you take your foot off the pedal again. It should go back to 0.6V to 0.7V. Do the test several times. If it gets stuck at a higher voltage, you probably have a faulty torque sensor, and it will need to be replaced.
  • If it passes the test when cold but you experience unusual behaviour while riding, and bringing up this test menu shows something other than 0.6 - 0.7V with your feet off the pedals, update the firmware as this issue has been addressed in more recent firmware versions.
  • Hit the ^ button to exit the test menu again.

Solutions?

First, update the firmware to the most recent version as there are improvements to the torque sensor behaviour which overcome most of the reported problems. If you do notice that it’s not behaving quite right during a ride, then rebooting the system will also recalibrate the torque sensor to the increased operating temperature which should restore normal function. However, if the problem remains after rebooting, or it quickly returns, or you see a calibration timeout * during booting, and/or it fails the test above, then the torque sensor is most likely faulty and will need to be replaced. See “how do I replace the torque sensor” above.

* Note: If you do see a calibration timeout, then leaving it for a few days or tapping on the drive spindle (where the cranks bolt on) with a mallet may restore it, but the problem will frequently return and it will need to be replaced. Tap hard enough to cause a jolt but not hard enough to cause damage. In my experience, tapping on the right-hand spindle caused it to remain stuck but at various different voltages. Tapping on the left-hand spindle caused the voltage to drop until it reached 0. At this stage, performing the test above revealed no voltage increase when pressure was applied to the pedals. However, when rebooted, the voltage had returned to normal and it was functioning correctly again, at least until the next hill I rode up.

For more detail on this issue, see this thread in the High Voltage Light Electric Vehicles Discord channel

How to test the throttle

As above:

  • Short press the power button repeatedly until “Test” appears at the bottom of the screen, then hit the ^ button
  • Short press the power button repeatedly again until “Drive” appears at the top. The throttle should show 0.7V.
  • Now hold one or both brakes (assuming the brake sensors are connected and functioning. Otherwise lift the back wheel off the ground) and hit the throttle. It should rise up to 3.3V, then return back to 0.7V when you let go. Anything outside of this could be a problem.

How to test PAS is working

As above:

  • Short press the power button repeatedly until “Test” appears at the bottom of the screen, then hit the ^ button
  • Short press the power button repeatedly again until “Drive” appears at the top. PAS speed should show 0 rpm.
  • With the rear wheel off the ground, turn one of the cranks. It should show a change in the rpm. If you pedal backwards, it should return to 0 rpm.

Headlight flashes or strobes when brakes engaged

If using ToSeven lights connected using the supplied Y cable with red connectors, the longer cable is for the tail light. This allows the tail light to function as a brake light. There are also some options in the settings under “Device” for different brake light behaviour. If the headlight is connected to the tail light cable, it will behave like a brake light and react to the brakes being applied.


Firmware

Is a programming cable needed?

While current motors should come with programming cables for both the controller and display (at least if purchased from ToSeven’s AliExpress store), older versions did not. The programming cables are needed to update firmware to take advantage of improvements and bug fixes. They are not needed to alter settings.

How to check firmware version.

After booting up, short press the power button to scroll through different settings at the bottom of the screen. When you get to “Info” short press the down button. However, there are some inconsistencies in the numbers displayed and this may not mean much. The only way to be 100% certain is to install a known firmware version.

Is updating firmware necessary?

Firmware updates often contain bug fixes and improvements, but can also sometimes introduce other problems as well. Unless you have experienced problems such as “Motor Blocked” errors, poor torque sensor behaviour or other issues that point to a software problem, it is advisable to leave well enough alone. Updating firmware on any electronic device also comes with a risk of permanently bricking it, and it does happen with ToSeven controllers as well, particularly with the DM01.

How to update the firmware.

Firmware and instructions for the Controller and Displays are available here. However, there are a few things not mentioned to be aware of:

  • All files will need to be unzipped prior to installing. Do not just double click the zip file and drag & drop the contents. Some necessary files may remain hidden this way. Right click the zipped folder and choose “extract all”.  
  • The December ‘24 Controller Operation Interface software requires WinRAR to unzip and the process is a little tricky. First double click the “.zip” file, then drag and drop the file ending in “.rar..x-rar-compressed” onto your desktop or wherever you want it. Then right-click that file and select “Open With” and choose WinRAR. Then drag and drop the file ending in “.exe” to your desktop or wherever you want it. Then double click that to install it on your PC.
    See also “
    Locked Displays” below.
  • Some versions of the Controller Operation Interface software will not work to install some firmware versions. See below.
  • Some firmware versions have incorrect file extensions. The controller firmware should end in .pack, while the display firmware should end in .hex. If they have ..bin on the end, this needs to be removed (renamed) prior to installing the firmware or the installation program will not work.
    A screenshot of a computer

Description automatically generated
  • When updating the controller, first turn the battery off when connecting the cable, then turn it on. If the PC cannot see it on the com port, try turning the battery off and back on again. (Note that the battery must be on for the process to work).
  • Procedure wise, follow the instructions carefully. There are a couple of tricks to it. For example, step 6 when updating the Display firmware. The power button must be held down during the process. Once completed, the “success” message is in Chinese. When it appears you have 10 seconds to disconnect the cable or the process will start again. Disconnecting the cable during the process may corrupt and brick the Display, but it will usually be recoverable by repeating the process.
  • After updating, most controller settings will go back to factory defaults and will need to be re-entered. e.g. DM01 battery will default to 48V, DM02 will default to 36V. It is a good idea to keep a written record of all settings prior to updating firmware.


DM02 firmware versions

ToSeven does not make older versions readily available, but they are still hidden on their website at the following links (strikethrough means not recommended):

Dec 14, 2023 - K231214A-V6205C
Mar 25, 2024 - K240327A-V6205C
May 12, 2024 - K240512A-V6206C 
Jun 12, 2024 - K240612B-V6306C 
Jul 23, 2024 - K240723A-V6306C2
Oct 16, 2024 - K241016-V6212C - To7 reports this one has a bug but did not say what it is.
Oct 31, 2024 - K241031-V6303C

  • Moves battery settings to the Main menu under “Device” and adds rim size in mm for more accurate speed and distance readings.

Nov 29, 2024 - K241129A-V6400C:

  • Factory release notes here.
  • Fixes ‘motor blocked’ errors
  • Improves torque sensor behaviour (see “Ghost pedalling”)
  • Amps are at different values but are hard set and cannot be changed (see Factory default settings).
  • Speed is capped at 32kph throttle-only and 40kph while pedalling. These can still be changed if you have access to the advanced menu. (See Factory default settings).
  • Does not remove access to the Advanced menu. If you had access before you will still access after. If you did not have access before (post Oct motors), you will still not have access
  • Some reports of the software simply not working to install this version. In this case, the old updater may work whereas the new one won’t, or vice versa. See Controller firmware update tool versions
  • Some complaints of finding the torque sensor too aggressive in the lower levels and/or the speed limits in lower levels being too low or too high. (Everyone has their preference).
  • It is not possible to roll back to an older version after installing this one

May 21, 2025 - K250402-V6400C:

  • Fixes an issue where parameters were not being saved.
  • Reported to remove access to the Advanced settings with older T24 display firmware but possibly can be worked around with the latest T24 firmware.
  • Amps are still hard set and cannot be changed (see Factory default settings).
  • Speed is capped at 32kph throttle-only and 40kph while pedalling. These can still be changed if you have access to the advanced menu. (See Factory default settings).
  • It is not possible to roll back to an older version after installing this one

Aug 1st, 2025 - K250801-V6510C:

  • Resolved the controller malfunction that occurred after the system upgrade (To7’s notes)
  • Enhanced the performance of the torque sensor for greater stability (To7’s notes)
  • Further improved overall riding quality for a smoother and more comfortable experience. (To7’s notes)
  • Some reports that this firmware version is causing more rapid heating of the controller which is causing “voltage drift” issues with the torque sensor.
  • Controller amps are still hard set  (See Factory default settings)
  • Speed is capped at 32kph throttle-only and 40kph while pedalling. These can still be changed if you have access to the advanced menu. (See Factory default settings).
  • It is not possible to roll back to an older version after installing this one

DM01 firmware versions

Links to older and current firmware versions (strikethrough means not recommended):

May 29, 2024 - K240529A-V6026C
Jul 24, 2024 - K240724A-V6306C1 (regarded as the best version by many)
Aug 02, 2024 - K240802A-V6207C
Oct 16, 2024 - K241016-V6212C
Dec 16, 2024 - K241216-V6400C:

  • Factory release notes here.
  • Amps are at different values but are hard set and cannot be changed (see Factory default settings).
  • Speed is capped at 32kph throttle-only and 40kph while pedalling. (See Factory default settings).
  • Some settings refuse to save. See this video.
  • It is not possible to roll back to an older version after installing this one

May 09, 2025 - K250509-V6500

Aug 1st, 2025 - K250731-V6510C:

  • Resolved the controller malfunction that occurred after the system upgrade (To7’s notes)
  • Enhanced the performance of the torque sensor for greater stability (To7’s notes)
  • Further improved overall riding quality for a smoother and more comfortable experience. (To7’s notes)
  • Amps are still hard set and cannot be changed (see Factory default settings).
  • Speed is capped at 32kph throttle-only and 40kph while pedalling. These can still be changed if you have access to the advanced menu. (See Factory default settings).
  • It is not possible to roll back to an older version after installing this one
  • Jonas reports that this firmware is great so far but the default settings leave something to be desired. He has some suggestions to improve it. See Jonas’s DM01 settings.

Older Display firmware versions

These versions should be fine to update from the old M1/M2 options, adding Eco/City/Sport modes, and should not remove access to the Advanced menu. If you have an older Display and are having trouble installing a more recent firmware version, try installing one of these first.

T24 - Oct 2024 - TO7-T24V-Y241016.hex_.zip

T154 - April 2024 - TO7-T154-Y240402A-Shut-down-M1M2.zip

M15 - April 2024 - TO7-M15-Y240430A.zip 

LCD-135C - June 2024 - TO7-LCD135C-Y240621A.zip 


Locked Displays

Updating the Display to the latest firmware versions released in Dec 2024 - Jan 2025 will lock you out of the Advanced menu, and it is unlikely to be reversible. (The dates can be seen in the URLs if you hover over the links. eg https://to7motor.com/wp-content/uploads/2024/12/TO7-T24V-Y241225.zip)

There is also an indication of this in some of the firmware filenames. e.g. T154 - https://to7motor.com/wp-content/uploads/2025/01/TO7-T154-Y240927-No-advanced-menu.zip

Note that if you do install the latest version anyway, one anomaly, at least with the T24 Display, is that the version number does not reflect in the numbers on the Info screen. The file name for the latest T24 version is TO7-T24V-Y241225, yet the Display will show it as 24121.

ToSeven will advise how to unlock the Advanced settings on request if you have a reason to do so and understand that it will void warranty.

Easter egg: While in the main settings menu, scroll to Unit. Then press and hold the up and down buttons together for 10 seconds. If this doesn't work, try holding the “I” and Power buttons together for 10 seconds.


Controller firmware update tool versions

In some cases, attempting to install or reinstall certain controller firmware versions, an older update tool will give “connect fail” or other errors, while the latest version will work, or vice versa. If you have trouble installing a particular firmware version, it may be worth trying a different version of the tool.

Dec 2023 FOC-IAP-Tool-Ver-3.1-CMD-119-20002.zip

Aug 2024 1_TO7_MiddleMotor_IAP_Tool_ForWin7-Win11.zip

Dec 2024 TO7-G2-IAP-Tool-Ver-5.1-20002-2.rar.zip

Mar 2025 (Better English language support)  TO7-G2-IAP-Tool-Ver-5.2-CMD-20002-2025-3-27-英文工厂版.zip

Instructions to use it are the same for all versions. See “How to update the firmware” above.

“Conntect Fail” (Connect Fail) error

This error is usually caused by a mismatch between the controller version and the update tool version. See above. It can also occur if attempting to update to a newer version from a very old version. In these cases it may be necessary to try installing a version in between the two versions, then try again.

“MCU unidentified, try again or IAP version is lower or pack version is lower” error

The error below will come up when attempting to roll back to an older firmware version after installing firmware after November 2024 for the DM02 or December 2024 for the DM01. There is no known solution for this so far.

“Access violation at address 000000000” Error

Similar to above, this error may occur when attempting to program blocked or lock-out firmware. (Any firmware version that has the last digits as V6400 or higher will be a lockout version). Contact ToSeven for a solution.


“Program Fail” error

ToSeven have identified a faulty batch of programming cables which were shipped out between April and July 2025. Using one of these cables will result in a “Program Fail” error when attempting to update, followed by a “communication interrupted” error on the display when booting up the motor afterwards.This is recoverable using a properly functioning programming cable in most cases.


Getting started with the settings

One unique feature with ToSeven motors is that most of the motor parameters can be altered from the display. Other motors do not have this option, or they require connecting to a laptop and using a special software tool. However, there are a lot of parameters, and ToSeven has not yet been forthcoming with an easy-to-understand guide. The following is a work in progress but will hopefully help new owners with a starting point at least.

The T24 Display will be used. Other Displays should be similar with minor variations.

How to use the T24 Display.

The T24 manual can be downloaded here. There is a lot of information shown on the display as summarised here:

When you turn the display on for the first time by long pressing the power button (23), you should see “Calibrating, don’t tuch pedal”, followed by “Success”. This will not happen every time thereafter. It may only need to recalibrate after weather changes, settings changes, firmware updates and so on.

Long pressing the up button (20) will turn on lights if you have them connected.

Hold the down button (22) for 2 seconds to activate “walk mode”. Let go of the button to deactivate. This can come in handy when you need to walk the bike for whatever reason. Note that it will take off immediately so be ready for it. Also, the speed it goes is relevant to the gear it’s in.

Long pressing the down button (22) will also turn on the Cruise Control if you’re moving. Hitting the brakes, pedalling, or pressing any button should deactivate it again. (Note, I couldn’t make this work so it may have been disabled in later firmware versions or there is some trick to it that I couldn’t figure out).

Pressing the “I” button (21) will change between Eco, City and Sport modes. See “Advanced Settings” for more detail on what these do and how to set them up.

The up and down buttons will change the power level. These are also customisable. See “Advanced Settings”. Be aware that level 0 provides no power at all. Check this if nothing is happening when you start riding.

Short pressing the power button will change the info displayed on the bottom of the screen. A useful one here is “Test” which will display details of various parameters as you ride, which can help with fault diagnosis. Short press the power button to scroll through them and then hit the up button to exit. Another useful one is “Info”. Hitting the down button for this option will display the firmware versions of the Display and Controller.

To reset the timer, hold the power and down button together. Watch the screen with this one and let go of the buttons as soon as a reaction is seen. Holding them down for too long may reset everything. It may also be a bug and could randomly reset everything.

Main Settings

To get into the Main Settings menu, long press the Power button to start the system. As it begins to start, immediately long-press the arrow up button and the power button together until a prompt to enter a PIN appears. Then enter 1234 using the up and down buttons to change the number, and short press the power button to move to the next number. Here you will find these options (some options may or may not appear depending on the firmware version):

Unit

  • Use the up and down buttons to change between Metric (kilometres) and “British” (miles). (I don’t know why they didn’t call this “Imperial” or “USA”).

Rim Size

  • Use the up and down buttons to select your wheel size. The default is inches (24”, 26” etc) which won’t provide a completely accurate speed reading, but in later firmware versions (since October) there is now a “RimSizeUnit” under “Device” which allows changing to mm for a more accurate speed reading. An easy way to determine a tyre’s diameter is to use the ISO/ETRTO number which is usually printed on the side.

    The formula is 2 x tyre width + bead seat diameter x pi (3.142). In this example, 40 is the tyre width and 622 is the bead seat diameter, so:
    ((40 x 2) + 622) x 3.142 = 2206mm, (the number to enter as the Rim Size).
    Note that the incremental units (i.e. go up or down in units of 1, 5, 10 etc) can be changed by holding the up or down button for a few seconds.

Light

  • Switch between Auto, Manual or On if you have lights connected.

AutoPowerOff

  • Changes the amount of time the system will wait when the bike is doing nothing before it switches itself off.

Device

Selecting this one will give you the following options:

  • Throttle - Enable or Disable
  • PedalSensor - Enable or Disable (Later firmware. Should be enabled or the motor won’t work)
  • PASStartCount - Enter the number of starter magnets up to 6. (Determined by manufacturer. Leave at the default of 1).
  • TorqueSensor - Enable or Disable. When disabled, the motor uses cadence sensing (PAS) only.
  • RimSpeedSensor - Enter the number of magnets attached to the wheel, which would normally be 1.
  • ShiftSensor - Choose from Activate, Delay (allows altering the amount of time the shift sensor cuts power), or Mode. The DM02 doesn’t come with an option to connect a shift sensor so this is for other motors and can be ignored. Simply decrease pedal effort and it will shift easily and safely, even on internally geared hubs. Alternatively, lightly squeeze one of the brake levers just enough to activate the brake cutoff, then release it again after the gear change. Back pedalling will also instantly turn the motor off, which is great for internally geared hubs and also for derailleurs, but not if the chain stops completely since the chain needs to be moving to change gears. There is a delay though where the chain will continue moving but without any real power, allowing for a safe change.
  • CranksetTeeth - Enter the number of teeth on your chainring.
  • CassetMaxteeth - Enter the number of teeth on your largest cassette cog.
  • CassetMinTeeth - Enter the number of teeth on your smallest cassette cog.
    Note: For internally geared hubs, see “Do mid-drives work with Rohloffs and other geared hubs” above.
  • BrakeLight - if you have a brake light connected, options are:
    - D
    isable (Brakes flashing)
    - Enable (Half on when not braking, full when braking)
     
    - PWM - (All brakes are o
    n)
  • SpeedSensorFail - Choose from Speed Unlimit or Speed Limit. If set to Speed Limit, the motor will stop when no signal is received from the speed sensor. Choosing Speed Unlimit can also smooth out the dragging sensation some people experience when the speed limit in a given level is exceeded.
  • Battery (located here in later firmware versions from October 2024. Settings are the same as in older firmware versions in the Advanced Settings).
  • RimSizeUnit - (Later firmware versions). Set the wheel diameter in millimetres for a more accurate speed reading. See “Rim Size” above for more info.

Password

Selecting this one will give you the following options:

  • ModifyPassword - Change the PIN
  • PasswordMode - Change the Password mode to one of these options:
    - Menu (required to access the main menu)
    - None (No password required to access the Main menu. Note this does not disable it to access the Advanced menu)
    - PowerOn (requires a PIN when starting up, perhaps as an anti-theft measure)

Save

  • Saves any settings just altered, then shuts down. (Don’t forget to do this after making changes!)

WithoutSave

  • Discards any settings just altered, then shuts down.

FactoryDefault

  • Restores everything to factory defaults.
    If this doesn’t work, a workaround may be the following procedure - click the power button, let go immediately, click again and hold for 1s, let go and then click again and hold until it turns on and says receiving.

Advanced Settings

The information below is meant as a guide only, based on information gathered from the High Voltage Light Electric Vehicles Discord channel which you can join here. Some settings are “best guess” or conjecture. Be aware that while the settings here are assumed to be fine, it is possible that some might exceed the manufacturer’s recommendations and void warranty. Running at higher speeds and power levels may also increase heat and wear & tear. Use at your own risk.

While in the Main Settings menu, scroll to “Unit” then long press the up and down buttons together. Then enter the password 1234 using the up and down buttons to change the number, and short press the power button to move to the next number.

Note: if this does not work, it has most likely been disabled by the manufacturer. All motors purchased after October 2024 have these settings disabled. Updating to some controller firmware versions and/or Display versions may also remove access. This is to cut down on warranty claims caused by people entering bad settings and damaging the controller and/or complaining about poor performance, and “to prioritize the motor's service life and user safety”. There is still a way to do it but this will void warranty if done without authorisation. Contact them for more information if you need to change something.

Here you will find these options:

Application

Selecting this one will give you the following options:

  • LevelCount - This allows you to have up to 8 levels of assistance. The default is 5.
  • Cruise - Enable or Disable Cruise Control.

Speed&Power

This is the amount of Speed and Power for each level of assistance. What to set these on is individual preference and may require some experimentation to find what works for you. See Example Setups below for reasonable starting points if you’re not happy with the factory defaults. Most people would want incremental settings here, beginning with low power and speed in the lower levels, up to 100% and no real speed limit at the highest setting. The cadence/PAS sensor mostly* uses the Spd** and Pwr values, and the EAssist values to a lesser (to no) extent. The torque sensor mostly* uses the EAssist and Spd** values, and the Pwr values to a lesser (or no) extent.

*The amount may vary between firmware versions. In older firmware, Eassist settings had no effect on PAS mode, while power settings had no effect on torque sensor mode. In more recent firmware versions they seem to cross over a lot more.

** See PAS > SpeedLevel, and TorqueSensor > SpeedLevel below for how Spd behaves. The values set in the Speed&Power levels tend to be vague and imprecise on their own.
Note also that there are also 3 modes, Eco, City and Sport, that govern the amount of assistance available in each of these levels as a group. See “
Controller” below.

EAssist levels work a little differently. Unlike the Pwr levels, these aren’t a power cutoff value as such. With the torque sensor enabled, they function more like the amount of effort you have to put in to reach the maximum that the motor can produce in the mode you are in (Eco, City or Sport). For example, if you have Level 1 EAssist set at 20%, it will provide 20% of its power when it senses pressure on the pedals, then ramp up all the way to the maximum as you put more pressure down. Likewise, if you have a level set at 80%, you get 80% of its power initially, ramping up to the maximum with very little extra effort. Lower values mean you have to work harder for the reward, and vice versa. Note that it could be argued that there is little point setting an Eassist level to 100% since it then behaves like PAS, providing full power as the pedals start turning with nothing extra when more pressure is applied. However, that’s not necessarily a bad thing for many people who would only use this setting when they want maximum power with minimum effort.

Doug disagrees with the above somewhat, and provided the diagram below based on his assessment. (Click for larger view with scroll option).


Battery

Note: In more recent firmware versions, the battery settings are found in the Main Settings under “Device”.

Selecting this one will give you the following options:

  • Type - choose your battery voltage - 36 volts or 48 volts or “customize” if using something other than 36 or 48 volts. (Be aware that setting values that are too different to the “Type” value (e.g. selecting 36V and then entering the 48V values in the advanced battery settings) may stop the motor from working until the settings are changed to more closely match).
  • Standard Voltage - adjust the voltage above in increments of 1.
  • LowCutVoltage - To protect the battery, this setting will shut everything down if the battery falls to this level. The battery’s BMS (Battery Management System) will also cut out if it falls below a certain voltage*, so this is just an extra precaution.

* Battery BMS is normally set at 2.8V/cell which works out to the following values:

  • 28V for 36V battery
  • 36.4V for 48V battery
  • 39.2V for 52V battery
  • 44.8V for 60V battery
  • 56V for 72V battery

If you don’t want the motor cutting out when there is still some juice in the tank, then use these values for LowCutVoltage, but if you want to be more conservative, set at ~2-4V above these values. If you’re running a battery without a BMS (which is ill-advised), definitely go ~2-4V above.

There are also some more (slightly hidden) settings here if you find the display is not showing the correct voltage. For example, showing less than 100% when it is fully charged. While in the Battery menu, long press the up and down buttons together. (see also this video). This will bring up a new screen where the battery calibration can be fine-tuned. Select each % to adjust as necessary. A properly functioning battery and charger should result in the voltages in the chart below. Note that the incremental units (i.e. go up or down in units of .1, .5, 1, 10 etc) can be changed by holding the up or down button for a few seconds.

Thanks to Atak_Snajpera for putting this chart together. For the ODS file of the above chart, click here.

Note that these are resting voltages and it will sag below these numbers under load. Also, if you compare the 0% values to the BMS cutoff values above, they are several volts higher. The reason for this is that after these 0% values are reached, there is a sudden nonlinear (waterfall) drop in voltage. (See chart below). You are not getting many Wh after that point. Maybe 3-4% max, so it is good to have that few percent hidden below 0% on display.

However, if you have a large battery, then you may find you still have quite a few miles left in the tank while the display is showing 0%. If that is unsuitable, you can try dropping 1-2 volts from the 80-0% values, or use the numbers in the table below. These are plotted to be linear and with a lower 0% value.

Battery

36V

48V

52V

60V

72V

0%

30.0

39.0

42.0

48.0

62.0

20%

32.2

41.9

45.1

51.5

66.0

40%

34.4

44.7

48.2

55.0

70.0

60%

36.6

47.6

51.2

58.6

74.0

80%

38.8

50.4

54.3

62.1

78.0

100%

41.0

53.3

57.4

65.6

82.0


However, if the battery tends to cut out too early using these figures, download
this spreadsheet and raise the 0% values by 1 or 2V (the 20-80% values will automatically update to match) until you find a happy medium.

Note: the “Test” menu from the display will show battery voltage. After connecting a freshly charged battery, go to this menu (on the T24, press the power button repeatedly until “test” is displayed at the bottom, then hit the up button to enter), then use this value for 100% battery in the chart above.


Controller

Selecting this one will give you the following options:

  • MaxCurrentECO
  • MaxCurrentCITY
  • MaxCurrenSPORT

These three control the maximum amps available in Eco, City, and Sport modes. These modes can be switched between on the display by pressing the “I” button, the idea being to have modes with better battery range and lower power when needed, and a Sport mode when you want to cut loose. On the 500-watt or lower DM02, having three modes could be considered unnecessary, and it would be better to just have one mode that does it all, controlling the amount of power in each level instead. This was Ian’s plan mentioned in the “the one mode to rule them all” example setup below. However, it doesn’t hurt to have them there as well. The main thing is not to exceed the maximum amps that the controller can support since it may cause it to overheat and/or possibly damage it. For the 500-watt version with a 48V battery this is 18 amps.* (15 amps for the 250- & 350-watt versions). With a 36V battery it can go as high as 20 amps. From there you want it to be progressive, so for Eco mode for the 500-watt motor with a 48V battery you might start with 8 amps, 13 for City, and 18 for Sport. Or if you want to be more conservative, 8, 12 & 16 amps, or for a wider range of difference, 6, 12 & 18 amps. (Note that the display will not allow going below 5 amps).

* The manufacturer has since revised this recommendation to 14.2 amps with a 48V battery. See “what are the maximum safe amps for the DM02”.

Note that whether using older firmware where 18 amps is possible, or with newer firmware set at 14.2 amps, sustained effort at maximum amps (i.e., slogging away at low RPM up a massive hill), or in hot conditions, can cause the controller to reach its maximum temperature. If that happens, its temperature control measures will step in and reduce power or shut it down until it cools sufficiently. To keep the motor at its happiest, remember to change down gears and spin when you feel it bogging down.


Motor

Selecting this will give you the following options. These should be left alone unless you know what you’re doing:

  • PolePairs - Magnet pairs in the motor, should not be changed.
  • Reduction Ratio - Reduction ratio of gearing, should not be changed
  • AngleOffset - Likely to do with the FOC controller angle, should not be changed
  • MotorConstant - not sure what this does. Leave alone.
  • StartMinVoltage - not sure what this does. Leave alone.
  • StartSpeed (rpm) - not sure what this does. Leave alone.
  • StartMaxCount - not sure what this does. Leave alone.
  • StartValue - not sure what this does. Leave alone.
  • Test motor - Warning, make sure the rear wheel is off the ground with this one as the motor will start immediately. This is to test the above parameters.

PAS

Selecting this will give you the following options:

  • StartupCount - the number of PAS starter magnets (determined by manufacturer)
  • KeepTime(ms) - 200ms up to 1000ms. This is the length of time the motor continues after you stop pedalling. The default is 600ms (a touch over half a second) which works quite well. Lowering it to 200ms reduces run-on even more but can also reduce responsiveness and cut out completely at low speeds or if cadence drops below 60rpm. I also experienced these issues with it set to 400ms.
  • Strength (rpm) - best guess is that it is supposed to regulate the power curve according to cadence. Default is 10. Lower values tend to make the power ramp up jerky and unpredictable.
  • SpeedMode - Choose from Speed_Level, Speed_MaxLevel, and NoSpeedLimit.
    If Speed_Level is selected, it will cut out at the maximum speed set for each level. i.e. if you’re in level 2 and have it set to 25kph, it will stop assisting when it reaches 25kph.
    If Speed_MaxLevel is selected, the motor will keep accelerating up to the maximum Speed level set in the Speed & Power settings.
    My preference is Speed_Level since it can be difficult to maintain a set speed in PAS mode (torque sensor disabled) when needed. Note that when you exceed the speed limit in a given level and the motor cuts out, it can take a few pedal strokes for the motor to engage again once you drop below the limit again.
    NoSpeedLimit behaves as expected.
  • MaxSpeed (rpm) - set the maximum cadence (rpm) you want the motor to keep applying assistance up to. After that, it will cut out.
  • CurrentOffset (a) - This is the amount of power applied when the PAS sensor is triggered after you start pedalling. The default is 5 but if you find it too aggressive, dropping as low as 0 amps can help.

See also “The Hauler” setup example for suggested settings to get the best out of PAS mode.

Throttle

Selecting Throttle in the Advanced menu will give you the following options:

  • Activate - Enable or Disable the throttle.
  • SpeedMode - Choose from 0-12, with 12 “Scooter mode” being the highest.

The manual has the following table, explaining that the throttle behaves differently depending on whether or not PAS is in operation. i.e. you’re pedalling or not when you engage it.

A table with text and numbers

Description automatically generated

  • “Null” means the throttle doesn’t work if you are not pedalling as well. However, some do not behave as expected. For example, Level 11 should work whether pedalling or not, whereas in actuality it does not work if not pedalling.
  • “Gear speed” means how fast you go is dependent on the gear the bike is in.
  • “Level” means the maximum speed is tied to the speed set for the level you are riding in.
  • “Full” vs “Full2”, I have no idea, but I would assume it means full power. However, with all options I have tried, the amount of power appears to be tied to the level you are riding in, including Scooter mode, which you would expect to override everything and give maximum speed and power. For example, if you are riding in Level 2 and have it set to 20% power, then the throttle will also only give you 20% power.
  • Some options appear to give identical results but may have speed limits.e.g. Level 7 in the latest firmware is restricted to 32kph.
  • The throttle also does not work in Level 0, which begs the question - what is Level 0 for?

TorqueSensor

Selecting this will give you the following options. Most of these should be left alone unless you know what you’re doing:

  • Activate - Enable or Disable (also available in the main menu under “Device”)
  • Mode - Choose from Safe or Sensitive. Safe is the default and works better.
  • ZeroVol(mv) - Torque sensor voltage when idle. Default is 700mv (0.7V).
  • StartupVol(mv) - Startup voltage. The necessary increase in voltage that must be applied when the pedals are pushed for the motor to provide power. Default is 200mv.
    -
    One owner has been experimenting with the above two settings and found that setting ZeroVol to 1100mv and StartupVol to 100mv gave much smoother acceleration, reduced the ghost pedalling effect significantly, and the motor reduced power much earlier which made gear changes safer.
    A graph with a red line and blue line

Description automatically generated
  • CurrentOffset (a) - This is the amount of power (amps) applied when the torque sensor is triggered when pressure is applied to the pedals. If you find it too aggressive, lowering it can help.
  • Filter - Reported to be the “ramp time” or the time it takes to accelerate to the desired power. A lower number is less time, therefore faster.
  • StrengthValue - Works in conjunction with, and affects, EAssist level. Default is 10. Reducing this number to 3 or 4 is reported to reduce surging and create a smoother startup.
  • SpeedMode - Choose from Speed_Level, Speed_MaxLevel, and NoSpeedLimit.
    If Speed level is selected, it will cut out at the maximum speed set for each level. i.e. if you’re in level 2 and have it set to 25kph, it will stop assisting when it reaches 25kph.
    If Speed_MaxLevel is selected, the motor will keep accelerating up to the maximum Speed level set in the Speed & Power settings.
    NoSpeedLimit behaves as expected.
    My preference is NoSpeedLimit or Speed_MaxLevel since it is easy to maintain a lower speed when needed by simply reducing pedalling effort. This also then makes it possible to cycle at higher speeds with less assistance, thereby reducing heat generation and battery consumption. 
  • Keeptime - unlike this option in the PAS settings, lowering it (200ms) can make it feel much more lively and responsive, while raising it to 1000ms can reduce the rubber banding effect while pedalling.

TempSensor

Selecting this will give you the following options:

  • MinTemp - starting point for overheating. (Default is 70°C)
  • MaxTemp - maximum overheating point. (Default is 100°C)

When the motor reaches MaxTemp, the motor will drop 70% of its power until it cools sufficiently. This behaviour is different to older firmware versions as seen in this video from 3:05. Here he experienced a 70% loss of power when it hit the MinTemp level, which in his case was 60°C. Bear in mind this older version of the firmware also had added parameters to enable and disable the Controller TempSensor and also set the amount of throttling that would occur. These options have since been removed and the MinTemp now defaults to 70°C. This value possibly has a bearing on cold weather conditions as it does not seem to be a factor in when the motor reduces power now. For example, Ian mentions in this video that he hits 83.9°C for several kilometres but makes no mention of the power stepping down.

A screenshot of a computer

Description automatically generated
The highlighted options are no longer available, but it is safe to assume they are still there but hard set by the factory.

Rarebird6969 from California Ebike reports:

When the controller temp reaches the factory default temp of 100c, the motor will “roll back” decrease power to 30%…. you will feel it drop in power instantly.  This is the motor telling the rider “Hey man….I’m overheating here and I need a breather!”. As soon as the temp drops below 100c the motor will kick back up to 100%.

It’s best practice to stop and let the motor cool off for a few minutes. Also evaluate the current riding conditions to assess why is the motor getting too hot…. are you in the proper gearing…..or is your gearing not low enough for the hill you may be climbing…. have you been using the throttle too much for a long period of time…. too much weight (cargo bikes) etc….. If you don’t stop to take a moment to let it cool, you will then get an intermittent power decrease that will give the rider the feeling the motor is broken.  It’s not broken, it’s just the controller doing what it was designed to do…. decrease power to help you save the motor before something breaks. This is BIG concept that a lot of riders ignore or just are not aware of how to monitor.

If you are going to do some hard climbing or long throttle usage….. I would advise to use the display temp reading to help you see your current temp. On the T24:

Click the power button 10times till you see “Test” and the ^ icon on the bottom of display. Then click the ^ button to access the display diagnostic readings….click the power button until you see the live “controller temp” reading. (Ignore the Ambient temp).

If 100c is too high for you, the temp setting can be lowered to whatever you want in the “Advanced Menu” parameters under the last tab “Temp“.

He has also tested this in the lab:

I have pushed the DMO2 and the DMO1 Past 100 Celsius many times under testing and the throttle-back at 100 Celsius works and is a great indicator that I need to stop and let the motor cool off.

I’ve pushed it far enough to blow multiple controllers and melt the nylon gear as well. The key to remember if you’re going to push the motor hard is to put the display on the screen that shows temperature so that you can monitor your temp as you ride.

The manual also states that there should be a warning on the display if the controller or motor goes over temperature.
A black and red text

Description automatically generated

Olek from ToSeven had this to say in the Discord channel which is also worth noting:

Heat is relative, the controller will throttle the motor. There are too many variables, you could overheat the motor at 15a if you put it on high gear. Large front ring and pedal at a low cadence. If you are running in the right gear at a very comfortable cadence, say 70 rpm upwards, then the motor overheating will be down to environmental temperatures. This cadence rule is a general rule of thumb and will apply to all mid drive motors. If you are struggling so is the motor, drop a gear.
We have all of this lab tested at ambient temperatures of up to 45°C with and without replication of airflow cooling. The motor is reliable at 18a. If it gets too hot it will self-throttle.
We have to allow for individual circumstances and use cases, please understand this. We cannot account for every possible scenario. That’s why there are user adjustments and automatic throttling. If you are in a very hot hilly environment you might want to adjust your max amps or change out your rear cassette.


DM02 Example Setups

The following are user recommendations and may be customised to suit individual preferences. For example, if less or more power is required in a particular level, adjust power, speed or amps accordingly. Keep in mind that more power & speed can mean more heat generation, faster battery consumption, increased wear & tear, and may void warranty.
Settings are based on a 48V battery on the 500W motor unless otherwise specified.

The Factory defaults (From Nov 2024 DM02/Dec 2024 DM01 firmware)

Controller (amps are hard set as follows):

DM02 (500W)*

DM01 (1000W)*

36V

48V

48V

60V

Eco

9

7.1

10

8.3

City

12

9.5

18

15

Sport

18

14.2

30

25


* For other wattage motors, check the sticker or engraving on the bottom of the motor for maximum recommended amps.

For other voltage batteries for the DM02, the maximum amps can be calculated using the formula: <36v E/C/S value (from the 2nd column above)> × 38 ÷ <battery voltage>. eg 18 × 38 ÷ 48V = 14.2A (Fully charged 48V is 18 × 38 ÷ 54 = 12.66A)

For the DM01, the formula seems to be <48v E/C/S value (from the 4th column above)> × 50 ÷ <battery voltage>. eg 30 × 50 ÷ 60V = 25A.

Note that this also means that the amps go up as the battery discharges, providing more even power across the range.

A basic formula for peak power is: volts x controller amps = watts. eg a fully charged 48V battery on the 500W DM02 is 54V × 14.2 = 766 watts.

Speed & Power

Level

Spd

Pwr

EAssist

1

10kph / 6mph*

25%

30%

2

15kph / 9mph

35%

50%

3

20kph / 13mph

50%

60%

4

32kph / 20mph

70%

80%

5

40kph / 25mph

100%

100%


* DM01 Level 1 is 6kph/4mph and 20% power.

PAS > SpeedMode > Speed_MaxLevel

TorqueSensor > SpeedMode > Speed_MaxLevel

Throttle > SpeedMode > Level 7.

See also DM02 firmware version notes and DM01 firmware version notes


The Goody Two Shoes

Close to the factory settings in the latest firmware to stay safe but with a bit more speed in the lower levels, more progressive power levels, and a reduction in the EAssist levels for less aggressive torque sensor behaviour.

Controller 

36V

48V

Eco

9

8

City

12

12

Sport

18

16

Speed & Power

Level

Spd

Pwr

EAssist

1

15kph / 9mph

20%

10%

2

20kph / 13mph

40%

20%

3

25kph / 16mph

60%

40%

4

32kph / 20mph

80%

60%

5

40kph / 25mph

100%

80%

PAS > SpeedMode. Set to “Speed_Level”.

TorqueSensor > SpeedMode. Leave at Speed_MaxLevel or set to Speed_Level” if you want it to match the speed of the level you are riding in.

Throttle > SpeedMode > Level 7.


EN1594 compliant

EN15194 is a European standard for "Pedelecs" or electrically power-assisted cycles (EPACs). It specifies requirements for the safety, performance, and design of e-bikes with a maximum power output of 250W and a maximum assisted speed of 25 km/h. In Australia, e-bikes meeting this standard are classified as bicycles and don't require registration or licensing. (NSW allows up to 500W but it must progressively reduce power after 6 km/h). Throttles are allowed in most states but they must cut out at 6 km/h to give you a boost off the line but no more.

The settings below, if applied to a motor rated at higher than 250W, along with an EN1594 sticker, will provide extra torque and power while giving the appearance of being street legal if stopped and subjected to a basic wheel off the ground test, but you may still get in trouble if the bike is dyno tested. If you are in a strict country where this may happen, buy the 250W version of the DM02. Even in a less strict country, be aware that if you are involved in an accident, the bike will probably be seized and subjected to more advanced tests, and these settings alone may not get you off the hook.

Main settings:
Device > SpeedSensorFail
 set to ‘Speed Unlimit’. This can help reduce the dragging sensation when the speed cutoff is reached.

Advanced Settings:
Controller 

36V

48V

Eco

9

7

City

12

10

Sport

18

15

Speed & Power

Level

Spd

Pwr

EAssist

1

18kph / 11mph

25%

20%

2

25kph / 16mph

40%

40%

3

25kph / 16mph

60%

60%

4

25kph / 16mph

80%

80%

5

25kph / 16mph

100%

100%


PAS > SpeedMode. Set to “Speed_Level”. (See “The Hauler” for why).

TorqueSensor > SpeedMode. Set to Speed_MaxLevel. (‘NoSpeedLimit’ will ignore the speed cutoff.)

Throttle > SpeedMode. Set to level 3 (6kph)


The Hauler

For heavier riders or carrying loads. These settings work equally well for me riding the DM02 in PAS mode or with the torque sensor enabled. The Spd & Pwr values are mostly for PAS riding while the Eassist values are for torque sensor enabled riding. With the torque sensor enabled, I spend most of my time in City mode, levels 2-4. I only use the higher power and speed levels for short bursts. Sustained use may increase heat and wear & tear.

Controller 

36V

48V

Eco

12

10

City

16

14

Sport

20

18

Speed & Power

Level

Use

Spd

Pwr

EAssist

1

Shared Paths

18kph / 11mph

25%

20%

2

Bike paths

25kph / 16mph

40%

40%

3

Commuting

30kph/ 19mph

60%

60%

4

Fast Cruising

35kph / 22mph

80%

80%

5

Off road

40kph / 25mph

100%

100%

PAS > SpeedMode. Set to “Speed_Level”. This will make the motor cut power when the speed is reached in each level, making it easier to maintain a set speed in PAS mode. There is a sweet spot here (which may take a little experimenting to find depending on your weight and your local terrain) where the motor will have just enough power to reach the speed but no more. Too much power can have a yoyo effect, launching the bike beyond the speed level and then cutting power over and over. See also “Dragging sensation when speed limit is exceeded” which may help with this as well.
Be aware also that it can also take several pedal rotations before the motor kicks in again after the speed cutoff has been exceeded.

TorqueSensor > SpeedMode. Set to Speed_MaxLevel or NoSpeedLimit.

Throttle > SpeedMode. Set to level 12 Scooter mode.


One Mode to Rule Them All

Ian has been experimenting with using 8 levels and only using Sport mode, but Eco and City modes are still there in case needed.

Application > LevelCount - set to 8 (Note, if changing from 5 to 8 levels you will need to scan through and check all of the levels as it can leave some peculiar default values).

Controller 
Eco - 8
City - 12
Sport - 15

Speed & Power

Level

Spd

Pwr

EAssist

1

15kph / 9mph

11%

6%

2

25kph / 16mph

21%

14%

3

30kph / 19mph

30%

20%

4

35kph / 22mph

40%

30%

5

35kph / 22mph

50%

40%

6

35kph / 22mph

60%

50%

7

40kph / 25mph

80%

60%

8

50kph / 32mph

100%

100%



Jonas’s DM01 settings

With the Aug 1st, 2025 firmware release, Jonas reports that it works well but the default settings are not the greatest. “there's a weird interdependency of eassist and power. I have to keep power pretty high and eassist rather low, way better torque response than stock but I'm still fiddling around with values. If you go higher you hit max power already at level 2 or 3, so you lose dynamics. Eeassist has always been a mystery box, and now it behaves differently.”

Speed & Power

Level

Spd

Pwr

EAssist

1

45kph / 28mph

46%

20%

2

45kph / 28mph

54%

32%

3

45kph / 28mph

62%

44%

4

45kph / 28mph

70%

56%

5

60kph / 38mph

82%

68%

Device > Shift Sensor > mode > pwr 10%

PAS > Keep Time > 200ms

Torque Sensor > mode > sensitive

Torque Sensor > keep time > 200ms

Torque Sensor > startup voltage > 300mV


Other resources

ToSeven website.
ToSeven YouTube channel.
High Voltage Light Electric Vehicles Discord channel
 - ToSeven Official Documents
High Voltage DIY Electric Bikes and Vehicles YouTube channel.
ToSeven Mid-Drive FaceBook group
Golden Motor YouTube channel.
JohhnyNerdout YouTube channel
Ian’s 98% Project YouTube channel.

Sellers

ToSeven official AliExpress store (China, International)
PSPower (Asia, Europe, UK, USA)
JohnnyNerdout (Canada, USA)
Golden Motor (North America, Canada)
California Ebike (USA - local pickup only, no shipping)
Velocite Velo (North Carolina, USA)
MidDrives (USA)
Ebike Market Place (Las Vegas USA)
EbikeSource (USA)
EbikeStuff (Poland, Europe)
Electric Bike Conversions (UK)
Ofer (Bulgaria)
Skylo (France/EU)
Yureidla E-Bike Solutions email yebikesoz@gmail.com (Adelaide Australia)

There is also a 250-watt clone or OEM version of the DM02 sold under the brand name “Viribus” on Amazon UK, However, be aware that it uses proprietary firmware and displays, and ToSeven displays are not compatible. More here.