Brushless DC (BLDC) motor with Arduino – Part 2. Circuit and Software


In this post I will describe the hardware and the software part of a project involving the use of BLDC (Brushless DC) motor salvaged from a broken XBox 360. This is a second installment in the series of posts related to Arduino and brushless DC motors. Please see the first part for a bit of info on the theory behind the commutation sequence. Once you understand the commutation sequence for the particular design of the BLDC motor, the circuit design for the BLDC driver becomes pretty clear. It is not much different from a bipolar stepper driver in that we need the be able to both source and sink current at all ends of the windings, except of course in this case there are only three ends whereas the bipolar stepper has four.
Read the rest of this entry »

Blu-Ray Teardown – HP CT10L BD-ROM / DVD Rewriter

HP CT10L BD-ROM/DVD R/W drive , ready to be disassembled

HP CT10L BD-ROM/DVD R/W drive , ready to be disassembled

Even though it takes me much longer than I anticipated, I’m still collecting parts for the laser cutter based on broken CD/DVD/Blu-ray drives. This time I decided to open a Blu-ray drive for the first time, never had a working 405nm laser diode harvested from a Blu-ray drive before.

This time the broken drive teardown is performed on an HP CT10L BD-ROM/DVD Rewriter drive (HP part number HP nPC P/N:491775-6CO). This is an older drive (manufactured in October 2008) and I expected it to have some useful parts – my experience has been that the most useful for disassembly parts are usually from 2003-2008 time frame. I was surprised to find not only two useful laser diodes inside but also an interesting part I did not expect to be in there … Read the rest of this entry »

Driving a three-phase brushless DC motor with Arduino – Part 1. Theory

Typical CD/DVD Spindle BLDC Motor With 12 Magnetic Poles and 9 Wound Cogs

Typical CD/DVD Spindle BLDC Motor With 12 Magnetic Poles and 9 Wound Cogs


This is the first part of what will probably be two (or more) posts describing one of my latest projects – an Arduino Stroboscope based on the spindle motor of a broken Xbox 360 DVD drive. I will save some practical information (like why I chose Xbox’s drive) for the second post. Here I wanted to concentrate on the theory behind using Arduino or another MCU to drive a three-phase Brushless DC electric motor such as a CD or DVD drive (or HDD for that matter) spindle motor, such as the one pictured further in the text. Read the rest of this entry »

Arduino Code Tidbits – #1 – Declaring an Array with Pin Values

Arduino Code - simple yet sometimes so challenging!

Arduino Code - simple yet sometimes so challenging!


Every once in a while you come to a point in writing a software program where you spend unexpectedly long time trying to write just one line of code correctly. Has it ever happened to you?

I had one of those forehead slapping moments a couple of days ago writing a program controlling a brushless DC motor. I’ll post the full program that came out later as a part of the description of an upcoming project. Just wanted to say that ironically, the Arduino code tidbit I want to describe here did not actually make it into the final version of the sketch! But I was surprised by having to spend so much time researching such a simple issue and finding it mentioned in neither official Arduino references nor elsewhere online.
Read the rest of this entry »

Serial OLED display and Arduino – a perfect combination

Demo application for Seetron GLO-416Y serial OLED display

Demo application for Seetron GLO-416Y serial OLED display

Every once in awhile your MCU, such as Arduino, needs to output some text and this is where you normally start bumping up against its limitations. Unless the MCU is exclusively serving a conventional LCD or other type of display capable of showing text, the display is pretty seriously taxing MCU’s available instructions cycles, memory as well as the number of output ports left after producing the useful work the device was designed for in the first place – move servos, scan inputs etc.

Enter the serial LCD Alternative – Seetron 4-line, 16-character Serial OLED Display which I recently had an opportunity to work with, thanks to Scott of Scott Edwards Electronics Inc., the manufacturer of this great device.
I will be using the display in a couple of projects I’m working on but I could not resist to check it out as soon as possible and that’s how the demo application you see below came about Read the rest of this entry »

Arduino Code Syntax Highlighting Plugin for your WordPress Blog

Arduino Brush for SyntaxHighlighter Plugin - sample of output

Arduino Brush for SyntaxHighlighter Plugin - sample of output

Ever since I published the first lines of Arduino code on this site I was not satisfied with the way it looked. I’ve been using various IDEs (Integrated Development Environment) and advanced text editors for programming for a very long time and have gotten quite used to the software marking various important parts of my programs with different colors and bold fonts. Indeed, Arduino’s own IDE does exact same thing although I have to admit I would love to change the way it marks things a little bit, whenever I get time for it. Nevertheless, Arduino IDE’s color-marked up code is very useful and makes for an easier read, especially for someone not familiar with its specialized functions such as digitalWrite() and such.
It this kind of color markup that I wanted for the code posted on this site. Enter SyntaxHighlighter Evolved WordPress plugin
Read the rest of this entry »

Arduino Nano and HP5082-7433 vintage 7-segment LED display


I have to admit, I created this 7-segment display project not because I needed a visual output for my next Arduino project but simply because I have a really soft spot for those whimsical big-eyed miniature LED displays. Some 20+ years ago I have hand-soldered hundreds of these little displays at one of my first jobs and seeing these displays come to life was always a big relief – it meant that the device was working. But I digress…
In any case, despite the fact that these HP5082-7433 LED displays are rather hard to come by these days, they are still available from online sources such as eBay and they are a great match for any MCU-based project that requires visual output, especially indoors. They pack 3 digits that are big enough to be seen from anywhere on the desk and yet fit inside a breadboard-friendly DIL-12 package (15.37mm x 6.35mm). They are very easy to drive due to the very small forward currents and the rest of this post is about how to do just that Read the rest of this entry »

FujiFilm FinePix F300EXR – don’t delay that upgrade!

FujiFilm FinePix F300EXR - do NOT use before upgrading the firmware

FujiFilm FinePix F300EXR - do NOT use before upgrading the firmware


So, I ‘ve got myself a new point-and-shoot digital camera – FujiFilm FinePix F300EXR, pictured above. I’ve had a great experience with an older FujiFil camera – FinePix Z – and thought that you cannot go wrong with these guys, especially given the impressive set of F300EXR features – 15x optical zoom, 12M Pixels sensor, bunch of preset shooting mode and even a panoramic mode which I never had on a camera before. Well, not so fast … Read the rest of this entry »

Arduino Nano V3.0 – MCU Development Made Smaller

Arduino Nano V3.0 board and a dime coin - a size comparizon

Arduino Nano V3.0 board and a dime coin - a size comparizon


I recently had an opportunity to add a new tool to my MCU development toolbox – an Arduino Nano V3.0. Newark – an electronic components distributor – was kind enough to send this little board for review. Arduino Nano is but one of their range of Arduino boards and shields and its tiny size which does not sacrifice performance or capabilities made it especially attractive to me. I have several Arduino-based projects lined up that could use smaller size boards and, based on the results I got so far, the Nano will definitely be a part of one of them in the future.
Read the rest of this entry »

P-38J Lightning – CNC Files For The Laser Cut Miniature Model

Lockheed P-38J Lightning - miniature 1:212 laser cut foam model

Lockheed P-38J Lightning - miniature 1:212 laser cut foam model


Here is another model I’ve designed around the size limitations of Groover’s micro laser cutter from discarded DVD drives – 1.5″x1.5″. I wanted this model to be in the same scale as my earlier Supermarine Spitfire model – 1:212 scale after seeing a 1944 photo in Famous Aircraft: The P-38 Lightning (by Gene Gurney) picturing a P-38 (F-5 version on a reconnaissance mission) accompanied by a Spitfire and the caption said: “Two of the fastest aircrafts in the world at the time this photo was taken”. I though it would be nice to see them together again, materialized on a much smaller scale :) Read the rest of this entry »

Tools

Coming soon ...

Recent Comments
  • Bruce: Thanks for taking the time to answer. I truly appreciate it.
  • admin: Thanks for stopping by, Bruce. It has been awhile since I have updated or frankly, even looked at the circuit,...
  • Bruce: Hello First off, let me say that I like your design with LT1121, as compared to the other LM317 designs,...
  • Robert: Thanks for you reply. I’m following a tutorial (https://www.instructables....
  • admin: Thank you for stopping by, Robert. To be honest, it’s been a couple of years since I looked at the code....
  • Robert: Hello, can you explain why the 24 coil 22 pole motor I’m using (model BGM4108-130) does not rotate...
  • Ron: One correction. The original 7200-BN bulbs were 2.5 watts. I also have 3 of the vented replacements left for...
  • Ron: I have some of the upgraded 7200LED-BN bulbs that LOA sent me a year or so after I installed 2 4-puck strings in...
  • Chisight: You seem to be trying to implement a constant current supply but the LT1121 doesn’t have a constant...
  • Joshua Donar: Would you happen to know where the driver is for the CT10L drive is? Haven’t been able to locate...
Meta