Hacking the Crystalyte Cruise Control module HFS5681B or C

Get all your technical information about electric bikes here.
Post Reply
User avatar
amberwolf   100 GW

100 GW
Posts: 32157
Joined: Aug 17 2009 6:43am
Location: Phoenix, AZ, USA, Earth, Sol, Local Bubble, Orion Arm, Milky Way, Local Group
Contact:

Hacking the Crystalyte Cruise Control module HFS5681B or C

Post by amberwolf » Jul 09 2010 4:01am

Note: I'm having trouble with the card reader so pics will be added to this post as soon as I get that to work. (lots of technical difficulties here the last few days; black thumb electrically I guess)

This CC is the same one sold at ElectricRider here:
http://www.electricrider.com/crystalyte/x-ctk.htm
Since I got it (and another unused one) from BrandonB, it is actually probably the very same unit from this thread:
http://www.endless-sphere.com/forums/vi ... =2&t=17353

The PCB is marked HFS5681C, even though the case sticker says HFS5681B. HUEFEN is presumably the manufacturer of the PCB itself, probably the ITL19810 is their internal PCB p/n.

It uses the HT46R47 One-Time-Programmable MCU in the SOIC-22 format:
http://www.holtek.com.tw/english/docum/uc/46x4x.htm
There are a few unused I/O pads on the board, which I am not sure if they do anything in this version or not (would depend on the firmware).

They appear to be:
P VCC (Programming VCC?)
BRAKE (Brake engage input, inhibits cruise?)
TMNG (Throttle voltage output?)
5V (5V input; from controller?)
5V (5V input; to throttle?)
ZL (unknown--throttle input?)
GND (Ground; from controller?)
GND (Ground; to throttle?)
Only the BRAKE (orange), TMNG (green), first 5V (red), and first GND (black) are connected to the outside world via the cable. The others are unconnected.

I presume there are two 5V and two GND so that one set would have been soldered to a cable going to the controller, as it is now, and the other set could go to the throttle on the handlebars, so that it does not take a second cable running all the way back to the controller just for that. I can verify these pads with just a multimeter to see if they are connected directly to each other (probably).

I also presume that perhaps the ZL pad is for a throttle signal input, so the MCU can read that and emulate it's output back to the controller for the same reason, and also to set a cruise level at the existing throttle level, at the tap of the Cruise button, without having to + and - button your way up to the speed you were at. I'll have to trace out the pad to the MCU to see where it goes. If it goes to an analog input, then I'll presume this is indeed what it is for, and try wiring it that way.


There's some test points marked, for Brake and 5V, as well as GND and ZL. What appears to be a solderable jumper position point is marked as FIX SET, which might be FIXED in one position (jumpered by trace) and SET in the other (open currently). What this fixes or sets I don't know.

There are also a few unpopulated component areas, including LEDs (and their dropping resistors) for what are probably four cruise levels, L S M and H:

As well as what is probably a pullup or pulldown resistor for the + switch. Another component I dont' know what it might be for, resistor or cap could go there.

More later as I get back to this project and find out. Feel free to post any info you know of, or links to threads that have it (I didn't find much beyond how to hook it up).

Post Reply