Votol EM-100 & EM-150 controllers

If you want variable regen, so that the brake lever varies the amount of braking just like your mechanical brakes do, then you may need a different controller. Most FOC controllers should have this ability; the Phaserunner by Grin Tech or other ASI-based controllers could do it, VESC of probably any flavor could do it (check the implementation before buying), etc. The Lebowski brain can do it; but you have to "build" your controller so only if you're very DIY).

Some of them implement this as a separate variable-voltage input from the throttle, some of them use the brake light switch (or ebrake switch) to engage braking mode, that then turns the throttle into a braking force control.
Thank you so much!
 
Are the throttle signal voltages at the controller's throttle input pin, as measured, within the limits the software has setup?

If the power-on voltage of the throttle exceeds the throttle-high limit, or the throttle-low limit, then when the unit turns on and reads that it will fault to prevent a possible runaway condition. Similarly, if the throttle was normal but goes too high while using it, it should fault the same way.

I don't recall if the software shows you the voltage it reads there, but if it does and it's not matching the actual voltage, and / or shows the voltage is out of it's limits, that could confirm the above.
I'm measuring a range of 0.838v to 4.61v on the throttle signal pin which is within the range specified by the software.

Currently it is set to:
low protect: 0.34v
start voltage: 1.27v
end voltage: 4.31v
high protect: 4.82v

The software doesn't show a throttle output voltage that I can see, just battery voltage and RPM.
 
Hmm. While those voltages are perfectly normal, the only thing that makes sense for the error you get is if the throttle signal is out of the range the controller is expecting. :/

Do you have a second multimeter you can verify with? Or replace the battery in your meter and retest (a low battery can cause a high reading).
 
Votol’s are sensitive to the high protect. Increase it further. From memory the last time I did it I had to set the high protect to 4.9.
 
If you want variable regen, so that the brake lever varies the amount of braking just like your mechanical brakes do, then you may need a different controller. Most FOC controllers should have this ability; the Phaserunner by Grin Tech or other ASI-based controllers could do it, VESC of probably any flavor could do it (check the implementation before buying), etc. The Lebowski brain can do it; but you have to "build" your controller so only if you're very DIY).

Some of them implement this as a separate variable-voltage input from the throttle, some of them use the brake light switch (or ebrake switch) to engage braking mode, that then turns the throttle into a braking force control.
Could we push a PWM signal to the brake signal pin of the Votol controller to control the strength of regenerative brake? I wonder how much frequency the mosfets inside the controller can hold on during the regenerative brake process!
 
Hmm. While those voltages are perfectly normal, the only thing that makes sense for the error you get is if the throttle signal is out of the range the controller is expecting. :/

Do you have a second multimeter you can verify with? Or replace the battery in your meter and retest (a low battery can cause a high reading).
So I managed to solve the issue, turns out it's not actually a throttle error but the controller was in park and locking out the throttle itself.
I've worked out I can get it to work normally, as long as I short out the park cables momentarily before using the throttle. Does this sound about right? I suppose I'll install a momentary switch to achieve this in future, since it's a bicycle and doesn't need to be put into park.
 
Could we push a PWM signal to the brake signal pin of the Votol controller to control the strength of regenerative brake? I wonder how much frequency the mosfets inside the controller can hold on during the regenerative brake process!
That hasn't been found to work on any controiller so far because of the ramping delay on the brake line--it's short but enough to keep this from working. Some are software, some are hardware. It's not the FETs or gate drivers--those have to PWM all the time during motor operation. The problem is the actual brake switch input.

You can try it and see, but...the PWM period has to be short so you can have a good range of signal change. Short enough that the brake probably doens't have time to respond as if it were a changing signal, and will probably just be "stuck" on or off depending on which part it's more sensitive.

If a controller doesn't have an analog brake control input, and doesn't have the option of "slip regen" where you back off slowly on the throttle and it then brakes down to the new speed, or the option of using the brake switch input to change the throttle into a brake control, then it's unlikley to be able to support variable regen braking.

If it's open-source you could change the code to do it, but since Votol is not, my guess is you can't do it if it isn't already in there. :(
 
So I managed to solve the issue, turns out it's not actually a throttle error but the controller was in park and locking out the throttle itself.
I've worked out I can get it to work normally, as long as I short out the park cables momentarily before using the throttle. Does this sound about right? I suppose I'll install a momentary switch to achieve this in future, since it's a bicycle and doesn't need to be put into park.
It's good that you found the problem; personally I'd expect that the park feature should have been documented (as well as any other features, especially those required to operate it). But most of these companies are terrible at documenting anything, and most don't even tell you how to turn it on. :(


How is the park function intended to work? Most functions are either on, or off, in most systems, so usually either grounding a switchable signal input or connecting it to 5v would turn it on, or off. Does this function require just a momentary pulse?

If it does, there are options to do this automatically.
 
That hasn't been found to work on any controiller so far because of the ramping delay on the brake line--it's short but enough to keep this from working. Some are software, some are hardware. It's not the FETs or gate drivers--those have to PWM all the time during motor operation. The problem is the actual brake switch input.

You can try it and see, but...the PWM period has to be short so you can have a good range of signal change. Short enough that the brake probably doens't have time to respond as if it were a changing signal, and will probably just be "stuck" on or off depending on which part it's more sensitive.

If a controller doesn't have an analog brake control input, and doesn't have the option of "slip regen" where you back off slowly on the throttle and it then brakes down to the new speed, or the option of using the brake switch input to change the throttle into a brake control, then it's unlikley to be able to support variable regen braking.

If it's open-source you could change the code to do it, but since Votol is not, my guess is you can't do it if it isn't already in there. :(
Thank you!
 
So I managed to solve the issue, turns out it's not actually a throttle error but the controller was in park and locking out the throttle itself.
I've worked out I can get it to work normally, as long as I short out the park cables momentarily before using the throttle. Does this sound about right? I suppose I'll install a momentary switch to achieve this in future, since it's a bicycle and doesn't need to be put into park.
You can disable the “park” feature in the GUI. Just disassociate it from the port it’s assigned to I.e. for the port for which “park” is assigned, select from the drop down menu the feature labelled “empty”.
 
Hello, does anyone know what motor temp sensors can be used with Votol controllers?
Will the regular NTC 10K work?
Fardriver controllers allow you to select the sensor type, I don't see this in the votol software.
Thank you!
Yes it works, you need to select "53:Ext_temperatrue_MF52_103_B3380" in PA0 on Port Setting Page. Regular 10K NTC will work with slight deviation. To get good results use "B3380" Part Number.
 
phase angle should be -60 for hub almost always, nonetheless check diferent values there and see.. if it doesnt run in any angle from -180 to 180.. then change phase and hall wiring, there are 36 combinations...
You need firmware .bin for em150, if you get it, please post it here.. I only have the .bin for em100
Please can you share .Bin file for EM100 to meetdpatel2805@gmail.com
 
Yes it works, you need to select "53:Ext_temperatrue_MF52_103_B3380" in PA0 on Port Setting Page. Regular 10K NTC will work with slight deviation. To get good results use "B3380" Part Number.
Thank you so much for answering. Just found the 3 ext temp port settings yesterday. However if I select 53:Ext_temperatrue_MF52_103_B3380 I get 0 degrees in the display, -6 degrees for 52:Ext_temperatrue_KTY84_150 and 190 degrees for 38:Ext_temp_KTY83_122.
I tested using a 10K ntc probe I have (that is tested to work) and tried it on several ports (PA0 is being used for High Speed Switch by default on my EM50-4).
It doesn't seem to matter if I connect the other end of the probe to ground or 5v, the temperature output does not change.
I am wondering if the external temp port is perhaps hardwired to one of the pins, perhaps the motor temp pin in the hall plug?
If so, I would need to find a way to determine it's port (ex: PB2, PC14) so I can set it to 53:Ext_temperatrue_MF52_103_B3380 .
Also I don't see the external temperature protection settings in the software. Do you know if there's a way to enable it?

1701245089635.png

Thank you.
 
Last edited:
I tried connecting a MF52_103_B3380 to the motor temp pin and it seems like all it takes to activate the reading is assign any unused port for 53:Ext_temperatrue_MF52_103_B3380.
However, the values are get are off.
In order to get the proper ambient value I did a voltage divider with a 10k resistor: GND-NTC10K->(OUTPUT)<-10K-(+5V). This gives me a good ambient value, but when I hold on to the NTC the reading goes way up to 43 degrees celcius.

Can anyone tell me how the probe should be connected? I must be doing something wrong.
Thanks!
 
Thank you so much for answering. Just found the 3 ext temp port settings yesterday. However if I select 53:Ext_temperatrue_MF52_103_B3380 I get 0 degrees in the display, -6 degrees for 52:Ext_temperatrue_KTY84_150 and 190 degrees for 38:Ext_temp_KTY83_122.
I tested using a 10K ntc probe I have (that is tested to work) and tried it on several ports (PA0 is being used for High Speed Switch by default on my EM50-4).
It doesn't seem to matter if I connect the other end of the probe to ground or 5v, the temperature output does not change.
I am wondering if the external temp port is perhaps hardwired to one of the pins, perhaps the motor temp pin in the hall plug?
If so, I would need to find a way to determine it's port (ex: PB2, PC14) so I can set it to 53:Ext_temperatrue_MF52_103_B3380 .
Also I don't see the external temperature protection settings in the software. Do you know if there's a way to enable it?

View attachment 343512

Thank you.
I had tried with PA0 port with 10K NTC and it worked well.
May be you should try with same.
 
I had tried with PA0 port with 10K NTC and it worked well.
May be you should try with same.
I managed to get a reading as I posted earlier after connecting the probe to its default pin (in the plug with the halls) and assigning MF52_103_B3380 to any unused port. However the reading is off.

Can you please tell me how you connected the NTC? Did you use a voltage divider or just ground the other end?

Thank you.
 
I managed to get a reading as I posted earlier after connecting the probe to its default pin (in the plug with the halls) and assigning MF52_103_B3380 to any unused port. However the reading is off.

Can you please tell me how you connected the NTC? Did you use a voltage divider or just ground the other end?

Thank you.
You just need to connect NTC's one terminal to controller and other one to ground.
 
Well it looks like I have run into another problem with the Votol EM-150-2, I tried messaging Siaecosys but they're not replying anymore. When the motor spins up it will reach a speed limit of around 2k RPM which is really a bit low, it will also cut power under too much throttle input. I couldn't find any RPM limiter in the settings, aside from the HDC figure, but that was well above 2k RPM and didn't affect the issue.

I tried tweaking settings through the entire interface using a guide, but it's still doing it. I also noticed the motor is getting dangerously hot, even though the bike is up on a stand with no load on it. My only guess is it's something to do with field weakening, since it's happening at higher RPM.
 
Hello, I installed a ntc10k b3380 in my motor yesterday (one pin to GND, one pin output) and my temperature reading is off. I get 60 degrees when the actual temp is about 20.

Is there a way to calibrate this via software? 53:Ext_temperatrue_MF52_103_B3380 is already selected and the TC1, TC2 and TC3 values seem to be for the controller temp reading.
As a last resort I can calibrate it by manually adding a resistor in series so that the reading at 100 deg celcius is correct, as that's where the motor protection seems to kick in.
 
Depending on where the sensor was ordered from, it might not be the right one. I've ordered a number of temperature sensors of various kinds from Amazon and Ebay and Aliexpress, and have yet to actually get the kind I ordered from any of them; they're always the wrong beta, despite whats' marked on the package. :(

The only one I got so far that was the beta it said it was was a set I ordered from ebikes.ca a few years ago.

The next ones I get will be from Mouser or Digikey whenever I order some other components to make it worth ordering (will probably be a long time from now); I need at least two different betas (and would like to get an assortment).
 
Depending on where the sensor was ordered from, it might not be the right one. I've ordered a number of temperature sensors of various kinds from Amazon and Ebay and Aliexpress, and have yet to actually get the kind I ordered from any of them; they're always the wrong beta, despite whats' marked on the package. :(

The only one I got so far that was the beta it said it was was a set I ordered from ebikes.ca a few years ago.

The next ones I get will be from Mouser or Digikey whenever I order some other components to make it worth ordering (will probably be a long time from now); I need at least two different betas (and would like to get an assortment).
I measured it with a multimeter before installing and testing at 20 and 35 degrees celcius the resistance values were proper so not likely to be a sensor issue, at least not at 20 degrees celcius. I am not looking for super accurate readings, just want to make sure I don't fry my very undersized motor.
 
CAN usually means CANbus, which is a specific serial communications protocol. It's unlikely that either set of wires with that label would support a speedo sensor, but if you find such a sensor that sends it's data via CANbus and you can program/setup the controller to read it, then it might work, if the data it sends is compatible with what that controller expects.

It's possible the diagram is mistaken and the speedometer connector is not CANbus, but just the usual digital input, or that it is *capable* of CANbus but is also used for just a digital input.

Most of these controllers use the hall sensors in the motor to read wheelspeed, for hubmotors. For nonhubmotors they may have a separate speedometer / wheelspeed sensor input, which would just be a regular digital input that simply counts pulses.

If the speed sensor is just a simple magnetic reed switch, like most are, with just two wires, it shouldn't hurt to try it on this connector...but if the wires really are CANbus and they trancievers they used don't have any short circuit protection, the repeated shorting of the wires that the sensor will do could damage them. If it works as a speedo sensor, then that's not a worry...but if it doesn't, you should disconnect the sensor until you find out why.



The two pictures you show only show the connectors and labelling, but not what they go to or any other context. Does the manual, or even the setup program, say anything about these connectors? Or about the speedo sensor choices themselves?
Amberwolf,
The connectors pictured are from the Em-150 wiring diagram i received. Looking at the setup screen though i think i need to use the ‘Lin’ sensor. As you can see in the attached photo of the setup software, the options are Hal speedometer or One-lin. In the wiring diagram i highlighted the single white wire labled ‘Lin signal’.

Currently, my display does show speed using the Hal
is the number of pole pairs setup correctly? That is the number of pairs of magnets in your motor.
This is the QS-138 motor
How many magnet pairs does it have? that's the number you put in there.
I just googled it and found that five is the correct number of pole pairs for a QS 138 motor. What else can I change in the configuration to correct the speed on my display? It is roughly double what it should be.
 
Back
Top