amberwolf said:
Thanks--that is useful info. Tells us at least how that specific version of signal muxing works. I suspect they are using the thermistor itself as the pullup resistor for the speedo hall signal, inside the motor (but without seeing the hardware inside the motor, dunno for sure).
Hi,
The NTC fitted in the motor(s) that Grin sell are actually connected as a pull *DOWN* resistors. It is essentially connected between the ground, and the signal pins of the speed hall sensor so that it's output is multiplexed with the speed signal on the white wire.
A potential divider is formed with the upper resistor (R1) being the 5k pullup resistor in the CA, and lower resistor (R2) being the NTC.
The temperature component is encoded in the amplitude of the square wave. I don't have a capture of the oscilloscope trace, but suffice to say that it looks very much like a regular square wave with a Vmax of between 0.5V to 3.3V and a Vmin of around 0V. Just visually observing the trace really doesn't show much because the temperature component changes so slowly.
The diagram that Grin uses to illustrate this is actually an accurate illustration of what the wave looks like:
If you measure the square wave you will see that the lowest part of the square wave is always around 0.13V or thereabouts (the offset described below), and the top / peak of the square wave is a voltage that changes with temperature which is around 3.33V at 25 deg C. and reduces to 0.58V at 100 deg C. when using a B3900 thermistor.
It is perfectly possible to retro-fit thermistors like this in other models of motor. I have successfully done this serveral times and had the signal successfully de-multiplexed by the Baserunner and displayed correctly by the CA. It is worth confirming that at the present time, Baserunner Z9 is the only controller (that I know of) that does this de-multiplexing. The Baserunner L10 and the Phaserunner both do not do this because they have separate temperature wire inputs.
When using this scheme, I noticed that the temperature displayed on the CA had a small error. The CA would under-read the motor temperature slightly. This error was being caused by a very small voltage drop in the ground wire. This voltage drop was present because of the return current from the hall sensors in the motor sharing the same ground line as the temperature signal was using for it's reference ground.
This caused Vout to have a DC offset of around +0.13V which translated into around a 6.5 degree under-reading at 100 deg C. motor temp.
I corrected for this by using a slightly higher Beta value thermistor which caused the voltage to be pulled down a bit further as the temperature increased. I found that using a 10K B4100 thermistor reduced this error to less than 1% at 100 deg C.
I remember Comrade is interested in Aikema motors from another thread, so I have included below some photos of a thermistor retro-fitted inside an AKM-74SX motor. The wires are soldered to the capacitor because it was already connected across the hall output and it has much larger pads to solder to than the actual hall sensor and this was the easiest place to solder them.