Electronic – Hacking/Controlling BLDC from CD-burner

analogavrmicrocontroller

I have an old CD-burner (HP 9100 plus) where I would like to control the BLDC motor from.

My idea is to use the original IC of the burner as the driver and use an ATtiny13 for controlling it. There are however some problems.

I found out that the IC is similar to the LB11699H datasheet, only lower model.

When I hook the CD-burner up to the power the motor spins up and down by itself a couple of times and then stops. I disconnected the cable to the laser head for safety. During the time the motor spins I can make it stop and spin a bit faster by changing pins 1 and 2, but when the motor is stopped by the on-board circuit, I can do nothing… I don't get the motor spinning. What is going wrong?

Also I need to have an analog signal between 0 and 2 volt to control the IC. Can this signal be generated with a smoothed PWM from ATtiny13 or do I need to use something else? Perhaps two batteries with voltage dividers and transistor connect to ATtiny13 pins? How do I do this?

Could someone help me out here? 😀

Best Answer

(I really have no experience with this particular application, so this is a bit of a shot in the dark - hopefully it'll give you some ideas)

How thoroughly have you separated this from the rest of the drive circuitry? From the part where you say you disconnected the wires from the laser head, it sounds like it's still in the drive. If so, you're probably fighting against the automatic drive startup behaviour where it spins up and checks to see if there's a disk before shutting down.

At the very least, check to see if something is happening on pin 7 (BRAKE). It looks like that pin going high will brake the motor. You want it to be low the whole time. If you can see it transition low to high right when the motor stops, you've got your culprit :) If that doesn't seem to be it, try checking the other pins on the controller to see if one of them does it (they might have changed the pinout between chip versions).

As for how to get your 0 - 2V level, smoothing a PWM output is pretty tricky and the exact capacitance needed varies based on how much current is being drawn. If you don't need to vary the voltage, I'd do a voltage divider. If you do need to vary it, but can live with discrete steps I'd look at doing several voltage dividers, either on multiple pins of the Attiny, or attached to something like a ripple counter where you could select which output pin is ON and thus control which one of several resistors is used as the top half of the voltage divider.

Good luck on this project. Salvaging parts can be tricky. I've got immense respect for the folks who pull it off.