Introduction: POV Globe 24bit True Color and Simple HW

I've always wanted to make one of these POV globes. But the effort with all the soldering of LEDs,wires etc. has deterred me because i'm a lazy person :-) There has to be an easier way ! In this instructable i will show you how to build a POV globe with less electronic parts than other projects. The reason is the use of the adressable LED strips APA 102. This stripes don't need any driver electronic and can be directly connected with only 2 wires to a microcontroller. The state of the LEDs is ( and has to be ) VERY fast changable. To get a stable image the SPI clockrate is about 10 Mhz and could be even higher. For further information about the LEDs look here.

Another advantage is the use of normal bmp files that are stored on a microSD card.

Let's go !

Step 1: BOM

Here is a list of the main parts you'll need. For the LED ring i use my 3D printer, you can also use a slice of a PVC pipe (diameter 150-180mm).The bearing brackets are also printed, but can be made of a wood piece for example. For the basic frame i use some old metal profiles, feel free to use other metal profiles, wood, plastic or whatever. Be sure that the frame is torsionally rigid and a bit weighty.

For the drive shaft:

  • threaded rod M8, length 250mm
  • M8 nuts
  • brass sleeve 10mm, length 100mm

  • 2 pcs. plastic washer 8mm (see also STL files)
  • Flexible Shaft Coupler 5mm to 8mm (those who where use for Nema 17)

for powering the LED ring over the shaft:

  • 2 pcs. ball bearing 6300 (10x35x11) full metal

  • bearing brackets, see STL files or make from wood with a 35mm whole saw

  • 4 pcs. screw M4x40 with nut
  • 2 pcs. cable shoes 8mm
  • Brushless Motor with 5mm shaft

  • 4 pcs. M3 screws for mounting the motor
  • ESC for brushless motor,possibly with fan

Alternatively you can use a combination of a brushed motor/esc with enough torque.

The motor described above has enough torque but never reach his max current of 50 Ampere. My supply measure less than 4 Ampere. So there is no use for a 50 Ampere ESC. I put a heatsink with fan on my 18Ampere ESC and it works fine.

For accurate "firing" the ESC i use an

another option is a

Power Supply:

We need 12V for the motor and 5V for the LED ring.

  • I prefer the use of old pc supplies like shown in this instructable.


  • There are lots of 12V/5A supplies out there from china.

LED Ring:

  • 64pcs. APA 102 LED (2 Stripes a 32pcs.)
  • Electrolytic capacitor 1000µF 10V
  • TLE 4905L Hall sensor + magnet
  • pull-up resistor 10k,1k
  • Ring: Use the STL file or a slice of PVC pipe
  • cable ties 100mm
  • GOOD glue, that the stripes don't fly away at 2400rpm :-)

The Parallax Propeller Microcontroller:

Don't be afraid of this microcontroller, it is a powerful 8-core mcu with 80Mhz and is just as easy to program/flash as an arduino !

There are several Boards on the parallax site available, or look here,you also need a microSD Breakout

Another (my) choice is the P8XBlade2 from cluso, the microSD reader is already on board !

For programming the arduino and propeller you also need a USB to TTL adapter board like this one

Step 2: Housing

Here you see the housing. Make it from any material that is sturdy enough. In the end you need some kind of a cubic cage with approximately 100mm edge length where you can mount the motor and the ring/ bearings. The cube is mounted on a solid wood plate with distance bolts. A hole for the motor was drilled into the plate.

Step 3: The Drive Shaft

I choose a threaded rod with a length of 250mm. The length of the brass sleeves are about 30 and 50mm depending on the size of the cage and the shaft coupler. The upper (and longer) sleeve has to be isolated from the rod because it forms the positive pole for the ring supply. This is done by insulating tape and plastic washers. The sleeve will not fit on the rod with the tape until you increase the inner diameter from 8.0mm to 8.5 - 9.0 mm by drilling/milling. The other sleeve including the rod forms the negative pole.

Step 4: Brushless Supplying

Now it's time for the bearings. I choose bigger ones than the standard bearings because of better conductivity. Place the bearing in the holder and position the plate on top of it. The small hole at the side is for the cable. Don't forget the shaft and the washer between the bearings/sleeves.

I 3d-printed the holders, have a look at the stl/zip file.

Step 5: Motor Control

Have a look at the schematic how the motor electronic has to be connected.

If you have never program an arduino look at instructables :-) The two buttons are for motor speed. If you switch on the power supply the ESC gets a value of 500µS. Press one of the buttons to switch on the motor. The sketch took the value "StartPos = 625". Later, if you've found the right speed this value has to be changed. By using the left or right button you decrease/increase the speed, press both buttons at the same time for 2 sec. and the motor will stop.

Be sure that the motor/globe rotates counterclockwise, like the real earth :-)

Step 6: One LED Ring to Rule Them All :-)

Here comes the core ! Printed with my 3d printer but as i said above there are also other options. To save weight i have many holes place in the frame. Now cut two strips off, each with 32 LEDs. Better count off several times before using the scissor :-)

Placing the strips is a littly bit tricky. You have two strips/columns that generates odd and even lines. The odd lines are at one side of the ring, the even lines are at the opposite. Mark LED number 16 at each strip (respectively line number 32 and 33) and fix it at the frame like showing at the pictures. One led fits exactly between two opposing LEDs. So you have two place the second strip with an offset !!!

After that you can fix the PCB/PCBs, i made small slots in the bracings so the PCBs can easily attached.

Before you mount the ring on the shaft, you must balance it. Use a thin stick to balance and screws or nuts as counterweight.

Step 7: Schematic

In this schematic you see how the MCU board is cabled to the other parts at/in the ring. I also attach a photo of the hall sensor and the magnet. The schematic use an older and bigger fritzing MCU-board because i don't find fritzing templates of newer/current Propeller Boards. Feel free to ask your questions for the board you'll choose/get.

Step 8: Programming/Flashing the Parallax Propeller Microcontroller

This is the binary that can easily transfer to the prop-board. Here is a link to one of my previous Instructables that also use the propeller microcontroller and show you a HOW TO.

Step 9: Bring Into Service

Ok, first we only copy the test picture to the sd card.

  • If the ring is manually rotated, the LEDs must flicker every time the hall sensor passes the magnet.
  • now start the motor and increase the rotation speed until the LEDs are aligned (see the 2 pictures)
  • the Voltage has to be constant and the ring must turn slighty to get a stable/aligned picture
  • connect the arduino terminal to the motor control
  • notice the shown value
  • stop the machine
  • replace the value to variable "startPos" in the POV_MotorControl sketch
  • flash arduino again

Next time you start the motor you'll get the right speed.

The next step is no longer necessary with the new software, from a speed of 38 to 44 rps the odd and even lines are "locked" correctly.

(Use the up/down buttons for fine tuning if necessary.)

Now you can "fill" the card with your other pictures.

Have fun !!!!!!

Step 10: How to Create Your Own BMPs

You want to use your own pictures ? No problem, i show you:

  1. Resize your image to a resolution of 120 x 64 pixel
  2. rotate 90 degree counterclockwise
  3. mirror vertical
  4. possibly reduce the brightness (the LEDs are very bright),

    the best brightness correction for images is to use gamma correction with a factor of 0.45

  5. save as BMP with 24bit color and no RLE

after saving the size of the file has to be 23094 byte !

Any other size won't work.

If you want, store several images at the sd card. They are shown one by one each after one rotation.

Now it's up to you to create a better Death Star than mine !

Step 11: Additional Infos

Some things I noticed:

  • If you use one of the tiny CpuBlades from cluso don't forget to solder the 3 pin jumper labelled QE for programming
  • my bearings have a voltage drop of approx. 0.5 V so i have to increase the voltage from the dc-dc converter up to 6 Volt.
  • (January 13, 2017), added the ring.stl in step 6

  • (January 17, 2017), the best brightness correction for images is to use gamma correction with a factor of 0.45
  • (January 17,2017), update POV Globe0_2.binary
  • (January18,2017), upload source code in step8
  • (January 27,2017), upload new source code, version from 0_2 to I_0_1. Have made a great progress with the synchronization between odd and even lines. It's no longer necessary to find the correct speed, simply bring the ring to a speed of 38-44 rounds per second and the lines aligned !
  • (March 03, 2017), modified the bearing holder
  • (March 09, 2017), upload a test binary to switch on all LEDs


Richardt131 made it!(author)2017-05-07

hi, i am building this nice gadget. i collected the parts. i bought this ESC

( )

don't know if i can use this, seems not 12v (max 8,4v) at your schematic it is connected to 12V, could i use this with a extra stepdown converter ? also it has 2 wires to the motor, maybe it s better to get one like this ?

thanks !

Gelstronic made it!(author)2017-05-08

This depends on which motor is used. The first ESC is for brushed motors with two wires the second one is for brushless motors, these motors have a three wire connection und these are the better choice because of the higher efficiency.

Richardt131 made it!(author)2017-05-09

thanks, gonna order a other ESC

wielewaal made it!(author)2017-05-06

Here is a picture when it's standing still, as soon as i put the motor on everything goes off

Gelstronic made it!(author)2017-05-07

Hi, that looks great, I use about 6.5 volt, at less nothing works

wielewaal made it!(author)2017-05-06

i have everything put together now but when i turn it by hand the leds go on and change color so it's working but when i turn on the motor on, all leds go off

How mutch voltage do you put on the bearings (power supply side) how mutch power drop will there be true the bearings ?

rclayled made it!(author)2017-05-04

In Step 6 on placing the LED strips on the side is easy - the gap between LED 16 and LED 17 splits the brace. For the other side - is LED 16 or LED 17 directly on the brace (counting from the bottom of the ring)? Or does it even matter?

Cluso99 made it!(author)2017-04-29

A number of people have been building the POV Globe using my P8XBlade2.

For those people, there is another way rather than re-programming the EEPROM.

Format your microSD card, preferably FAT32 these days, else FAT16.

Copy the file (from Parallax forums) to your PC. Unzip them and copy those files to your microSD card. (use the sd not the sc zip file!)

Copy the bitmap files from the Instructables article to your microSD card.

Copy or Rename your POV binary file (the runtime file you would be programming into the EEPROM) to _BOOT_P1.BIN and then copy this file to your microSD card.

Now when my OS boots, it will search for the _BOOT_P1.BIN file, and if it finds this, it will run it instead of my OS.

This way, you don't even require the USB-Serial converter.

BTW I have my LED string on the way so I can build one too. However, I will be overseas for a month from next week so it probably will not happen until I get home.

Gelstronic made it!(author)2017-04-30

Thanks again for the Info about the use of the sd card.

Cluso, i think your have to turn on your reflow oven first when you are at home because my next project is coming up :-)

JasonG23 made it!(author)2017-04-18 is cool, maybe you can try APA107 LED course, so that you can save much money.

wielewaal made it!(author)2017-04-16

Gelstronic how hot gets your motor when running>

I got the motor and ESC that you listed but when i run it the motor get very hot after a while

Gelstronic made it!(author)2017-04-17

Motor is not very hot but esc needs a heatsink

wielewaal made it!(author)2017-04-17


I'm only testing it (only the motor+esc waiting on the P8XBlade2 from cluso99) also the motor starts running if i put 830 as StartPos in the arduino, with your value (625) it won't start, is that a matter to recalibrate the ESC?

Gelstronic made it!(author)2017-04-18

no need to recalibrate, just use the values that works and bring enough speed

Cluso99 made it!(author)2017-04-15

When using my P8XBlade2 you will need to change the clocking as I overclock the CPU. In POV Globe_I_0_1.spin change the clock settings from:

_clkmode = xtal1 + pll16x
_xinfreq = 5_000_000


_clkmode = xtal1 + pll8x
_xinfreq = 6_000_000

It is not necessary to have/modify the clock settings in the sub-objects FAST_ASM_xxxx.spin files as only the top object settings are used.

I have attached the modified source and binary and eeprom files.

Enjoy :)

Note: I have updated my website and some older links have broken. Please use and follow the links.

POV_Globe_I_0_1a - Archive  [Date 2017.04.16  Time 08.28].zipGLOB101A.BINGLOB101A.EEP
Gelstronic made it!(author)2017-04-16

Thanks for the information, i ordered my Blade with 5Mhz crystal and

i have not considered the "overclocked" version.

Cluso99 made it!(author)2017-04-17

I have not supplied the P8XBlade2 with 5MHz xtal. It uses a tiny surface mount crystal 2.5x3.5mm IIRC. There are via holes that can take a watch can 5MHz xtal provided the 12MHz SMT xtal is not mounted, or a track is cut on the underside between the via and xtal.

Perhaps you used the CpuBlade which does not have the microSD socket?

GuiC3 made it!(author)2017-03-08

hi gelstronic , do we only have to upload the binary file rigth?

im using clusos P8XBlade2 board so should work fine.

i have solder link QE and WE

i upload the binay file only and got no errors without the sd card.

then fat format the sd card .

copy the test picture to sd , insert in and try to spin by hand but got no ligths on! using 5,5v supply.

any clues what could be?

pin 0 - hall sensor

pin 24,26 - data

pin 25,27 - clock

Gelstronic made it!(author)2017-03-09

Pins seems to be ok, test the attached binary from last step, it switches on all LEDs

GuiC3 made it!(author)2017-03-09

thanks for fast replay :)

i have try the test file and 80% leds turns on with a load of 2,7 amps at 5,2v.

then i upload the the run file and not a single led turns on! dont know what im doing wrong. the load is about 1,1amp 5,2v

tested the hall sensor and turns on everytime it detect the magnet but doesnt make any diference with the leds

it doesnt give me any errors when upload.

here some fotos of my cylindrical pov


Gelstronic made it!(author)2017-03-09

Here is another binary for testing the sd card. Hook up a LED(with180ohm) at pin 23. After some blinky and testing stuff the program will store some data at the sd card, after that you can check it in the pc. Did you already try another sd card? File Stestem is FAT(Standart)

rclayled made it!(author)2017-04-08

I ran the ISD_Card_Profiler.binary file and saw nothing on the SD card and no blinking on the LED. I loaded a very basic program into the EEPROM:

PUB Toggle




waitcnt(3_000_000 + cnt)

Complies and loaded into EEPROM fine. The LED blinks as expected. Can you attach the source for your debug programs?

Any idea about why I am not seeing anything with your ISD_Card_Profiler.binary?


Gelstronic made it!(author)2017-04-09

Here's the source code, please note the data/clock pins from the LEDs

AllOn APA102 -
rclayled made it!(author)2017-04-10

Thanks - I had to make a few changes to the _clkmode and _xinfreq to match Cluso's card and things are working.

GuiC3 made it!(author)2017-03-10

hello mate , got no luck! i upload SD CARD binay to eprom as described in your link to the other tutorial , but the led doesnt blink. i have tested the led and works fine. led +resistor with the positive pin at 23 and the negative to negative. its weird cause detects the board , loads good , i can see the small leds of the USB-Serial CP2102 6pin blinking so fast when upload. dont know if im doing something wrong when program the board. i only have experience with arduino.

Gelstronic made it!(author)2017-03-09

I wonder about the high current, 1.1 Ampere when all LEDs are off is to much

the propeller only needs some mA. hmmmm

rclayled made it!(author)2017-04-06

When using the AllOnAPA102 Binary - does it simply turn all LEDs on or does it work using the Hall sensor with the magnet. I am not getting any LEDs on either way. Just looking for where to start troubleshooting......

Gelstronic made it!(author)2017-04-07

After uploading the binary all LEDs has to turn on immediatly, without use of hall sensor

rclayled made it!(author)2017-04-05

Looking at the Schematic in Step 7: one of the pull-up resistors is tied to 5V and the Hall Sensor output. The second pull-up resistor is tied to the Hall sensor output and then 'disappears' under the propeller board. What is it connected to?

Gelstronic made it!(author)2017-04-06

The resistor is connected to P0

rclayled made it!(author)2017-04-04

All good - motor running - on the propeller configuration and then the final assembly.

Gelstronic made it!(author)2017-03-15

Maybe you have to program/calibrate the ESC. Here is an example:

rclayled made it!(author)2017-03-13

Just starting to build the globe - finally got all of the parts. I have a question on positioning the LEDs on the wheel. I understand the odd/even configuration and the positioning to offset them on opposite sides. After I glue the LEDs to one side to the wheel does it matter if the offset is up or down on the opposite side? I hope my question makes sense - I've been trying to decide if it matters but thought I'd ask/.

Gelstronic made it!(author)2017-03-13

it doesn't matter, maybe the cables must be exchanged, but you'll see when running the first picture

Richardt131 made it!(author)2017-03-03

did you only glue the led strip ? mine is self adhesive was your's also ?

Gelstronic made it!(author)2017-03-04

mine also was self adhesive but it didn't hold.The centrifugal force is
very strong and they flow away. I have additionally used superglue.

rclayled made it!(author)2017-02-13

I'm having a tough time finding the LED's in black - your link goes to a white PCB model - poking around I can see the black PCBs but never a product code or link. I am using link to AliExpress. Any other ideas?


Gelstronic made it!(author)2017-02-14

here you can choose between white and black

DeltaFlo made it!(author)2017-02-05

I am wondering if this motor would work:

with 2mm to 5mm adapter and then 5mm to 8mm coupler?

I have trouble finding a cheap brushless motor with 5mm shaft on

Gelstronic made it!(author)2017-02-06

Hmm, i think the kv is too high und you probably need a gearbox, better choose a motor with a lower kv that has a higher torque.

Trimman0806 made it!(author)2017-02-05

How critical is the brushless motor kv. Is it possible to use a 2600kv or 3000kv motor? Want to build it and have some motors from my RC hobby parts bin I would like to use, if possible.

NeilRG made it!(author)2017-01-28

I believe you misunderstood my last question. I not concerned how much current the spinner motor draws. Im trying to figure out if the upper bearing could be replaced by a motor which is being spun by the rotation of the ring and used as a generator to supply power to the rotating electronics in the ring .

The shaft of the generator is fixed to the frame. The body of the generator is attached to the rotating ring so that as the ring is spun up, the generator could supply power instead of putting voltage through the bearings.

I look forward to hearing from you.

Gelstronic made it!(author)2017-01-29

Sorry Neil, of course you want to know the current the ring needs. When i turn on all LEDs in color white they need about 2,7A. But the average current in normal operation is rather 1A.

NeilRG made it!(author)2017-01-26

I appreciate this is a Propeller based project. Yo habla Spin. The clever way you got around needing a slipring is inspired. Beautiful project.

Thank you,


Gelstronic made it!(author)2017-01-26

Thank you Neil, spin is in :-)

But the most work is done in PASM !

NeilRG made it!(author)2017-01-28

I saw this, collected it and downloaded it , i havent actually studied it yet !! I havent searched instructables specifically for propeller projects but you have inspired me to do so. Keep up the great work.
I have a idea . If the upper bearing were replaced by a brushed dc motor mounted inside the rotating ring and the shaft were fixed to the frame the motor would become a generator driven by the spin motor and thus supply a dc voltage to the display and micro controllers. Because the mass is centrallized balance would not be affected, however driving a load with the generator would increase the mechanical load for the spin motor.
Could you provide current measurements for just the rotating part of the display? I havent done the math but i think the idea may have merit.

Gelstronic made it!(author)2017-01-28

The current to the motor is about 4 ampere

Gelstronic made it!(author)2017-01-27

update software !

Ashishpardikar made it!(author)2017-01-24

can you post demo?

Gelstronic made it!(author)2017-01-24

What do you mean with demo ???

About This Instructable




More by Gelstronic:PropHelix - 3D POV DisplayPOV Globe 24bit True Color and Simple HWKey Holder - Guitar Amp like
Add instructable to: