Introduction: POV Globe 24bit True Color and Simple HW

Picture of 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

Picture of 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

Picture of 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

Picture of 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

Picture of 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

Picture of 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 :-)

Picture of 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

Picture of 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

Picture of 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

Picture of 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

Picture of 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


frarugi87 (author)2018-01-08

Maybe you have already answered this, but.. Why did you put the buck converter before the bearings? I'd have put it after (i.e. on the moving part); this way the voltage on the bearings is not important, can be noisy, and moreover you regulate it after the bearings, so the current on the bearings is also lower

Gelstronic (author)frarugi872018-01-08

Hey, cool idea, never thought about it !!!

Sometimes you do not see the forest for the trees :-)

lukee1986 (author)2017-12-30

Well done i like it but dont have the tools or wisdom to do stuff like this vet it in to production i want 1

DanielM949 made it! (author)2017-11-29


Thank you very much for our help. Your advice is valuable for me to advance in learning the programming of "microchips".
I'll let you know when it works on my side.
Good to you
Daniel Maire

DanielM949 (author)2017-11-28


creating a directory "bitmaps" and put in the Png files (rainbow, DT64
erde64, jupiter64)...

After copying your new file "_BOOT_1" in the SDcard...

unfortunately have the same problem. The TLE
4905L responds well, to the oscilloscope, by cutting power (connection to P0 Cluso Blade) nothing affects the LEDs.

If I mannually cut the power the LEDs change.
If you need a photo of my montage on the bredboard let me know.
Thank you again for your help.

Gelstronic (author)DanielM9492017-11-28

only for understanding:

If you mannually cut the power at P0 the LEDs change, so the code is working and the only problem is the hall sensor ?

DanielM949 (author)Gelstronic2017-11-28

Hello, No, it's the opposite the hall sensor works well, it cuts the power well. But that does not affect the LEDs. They stay lit without changing. Thanks for your help. Daniel Maire

Gelstronic made it! (author)DanielM9492017-11-28

Ok, try the "AllOn" bin first, this code only switch on all LEDs, if success,

try the other bin. I think i made a mistake with the pin assignment in the code.

Don't forget to rename the BINs.

If still got problems we have to program the prop directly or ask cluso for support

DanielM949 (author)2017-11-28

Sorry for my english I translate and write with Google translation, I have a message of "Instructable" which says: "We have a" be nice "comment policy. Please be positive and constructive with your comments or risk being banned from our site ". I confess I do not understand this message. "
I do not see where I could have been non-constructive and not positive?
Daniel Maire

DanielM949 (author)2017-11-26

on the electronic part I climb on a bredboard Cluso's propoller and put
the connections as they are shown on your site "Gangters Propoller".
I tested the scope of operation of the TLE 4905L. It cuts the current well against the magnet.
But do not act on LED ribbons.
I think the content of my SD card is not valid because of my knowledge in programming is very poor. I do not understand much between EEPROM File BIN and HEX etc ...
Could you please tell me which files should be on the SD card.
I attach the photos of the contents of the SD card. I think there are too many files but I am afraid to make a mistake if I eliminate some.
Thanks for your help

I join
Daniel Maire

Gelstronic made it! (author)DanielM9492017-11-26


i think the first problem are the files from the OS. Use a directory "bitmaps" on the sd card where to put only the bitmaps. I modify the code to change in this directory.

Second problem is another clock frequency the blade use, i also modify this,

try the attached BIN

DanielM949 made it! (author)2017-11-16

Hello Gelstronic,

I'm back !
I had a lot of trouble "mechanics" around the axis and its training. To know a lot of balancing problem and I redid the central axis completely using a lathe and a straight stainless steel shaft.

The mechanical part works well now.

I go to the "electronic" part. I received the P8XBlade2. At first glance the hookups are almost the same as on the "Gadget Gangster".

If the connections are different would you plan them?

the "hall effect" I'm thinking of modeling of a support (Fusion360) where the magnet will be on
the top of the support of the power brushes and the base of the rotating
ring ...?

thank you in advance
Good to you

Daniel Maire

Gelstronic (author)DanielM9492017-11-16

Looks good !

The P8XBlade2 use the same connections to the sd-card P12-P15.

If you have any questions to get the P8XBlade2 working feel free to ask me.

Keep on !

AsE2 (author)2017-09-14

I live in eu-Lithuania so where i can buy P8X32A Parallax Propeller Microprocessor or flip? I don't want to pay 50$ for shipping...

Gelstronic (author)AsE22017-09-16

what about belgium:

AsE2 (author)Gelstronic2017-09-17

Too expensive €66.54...

Gelstronic (author)AsE22017-09-18

Then buy at cluso:

I think he only wants the real shipping coasts

dannamo (author)2017-09-05

Hello sir thank u for u sharing this with us
One q u using arduino pro for motor servo
Can I use the arduino for led light also instead of propeller microntroller?

Gelstronic (author)dannamo2017-09-09

Another suggestion, If you have not realized the voltage supply over the bearings yet, have a look at this project:

This is more elegant because of less friction and the missing voltage drop of the bearings.

Gelstronic (author)dannamo2017-09-06

sorry but definitely not !

dannamo (author)Gelstronic2017-09-06

Hello sir thank u for ur respond
I can't find propeller platform selling anymore !
Can I replace it with some thing else ?

Gelstronic (author)dannamo2017-09-07

You won't find them on those cheap china shops,ali.....etc.

But if you use uncle google you'll find them in us,eu and australia,

where do you come from ?

dannamo (author)Gelstronic2017-09-07

I live in USA
I found this
And this
But the one u using which is Gadget Gabgester Propeller platform I can't find it
I would appreciate if u guid me or if u have link for which I can get
Thanks u sir

Gelstronic (author)dannamo2017-09-08

yes the Gadget Gangster Propeller is no longer available, the

p8xblade2 is the best choice or

and a micro sd slot

dannamo (author)Gelstronic2017-09-08

If I use The p8blade2 I can download the same code u have right and the same software to program it ?
But also I need to have the TTL to program it correct ? Thanks

Gelstronic (author)dannamo2017-09-08

same sw, TTL programmer only for p8xblade2, the FLiP has USB

dannamo (author)Gelstronic2017-09-08

If I get the flip i need to get sd card modular coz it doesn't have on the board right

Gelstronic (author)dannamo2017-09-09

That's correct

dannamo (author)Gelstronic2017-09-08

Also the layout the pins on the p8xblade2 doesn't have the P on the pins like P1,p31
It's just number that's the same connections u have it on the pic should be right?
Could u put the connection pic again it's not clear blurry
Thank u again sir

Gelstronic (author)dannamo2017-09-08

same Pins, P1=>1............

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

Photo 1 set with controller test Turning 5V LED lighting

Photo 2 Detail of the coupling with the motor

Photo 3 Detail of the rotating Controller which supplies 5v

Gelstronic (author)DanielM9492017-08-03

Wooow, that looks pretty good !

DanielM949 (author)2017-07-27

Congratulations on this POV
I'd like to build your project like the Helix. Always questions:
Think that a simple arduino Uno or mega can replace the card gadget gangster that apparently is no longer produced.

I also start with electronics:

Is the Propeller HAT from Pimoroni adaptable to your project?
It works with a Raspberrypi that becomes the montage that you propose with the card "Gadget gangster"?
Apart from all this I started building your globe. To
feed the globe part I am adapting a "rotating collector" if you are
interested I can send you the stl files and the photo of this feed.
I really count on your help, thanks in advance

Richardt131 (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 (author)Richardt1312017-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 (author)Gelstronic2017-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 (author)wielewaal2017-05-07

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

wielewaal (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 (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 (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 (author)Cluso992017-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 (author)2017-04-18 is cool, maybe you can try APA107 LED course, so that you can save much money.

wielewaal (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 (author)wielewaal2017-04-17

Motor is not very hot but esc needs a heatsink

wielewaal (author)Gelstronic2017-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 (author)wielewaal2017-04-18

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

Cluso99 (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.

Gelstronic (author)Cluso992017-04-16

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

i have not considered the "overclocked" version.

Cluso99 (author)Gelstronic2017-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?

About This Instructable




More by Gelstronic:Remote Control: ESP8266 With Coin CellPoor Man's Hue SwitchPropHelix - 3D POV Display
Add instructable to: