JMP-rope, the programmable jump rope

Mix sport, technology and art and you get the perfect project.

I really enjoy art even though I am not much of an artist myself, I am definitely a technologist (more of a researcher of technology than a user TBH), and I've become a sports person too in the latest years, in particular I discovered how jumping rope can be a fun way to do cardio, way funnier than playing hamster on the treadmill; and each time I was jumping rope I started thinking about a tech project involving a jump rope.

Now here it is: I call it JMP-rope, the programmable jump rope.

It's a device made of a programmable LED strip attached to a jump rope, which can be used with high exposure photography for Light Painting.


The principle behind it is the same as those cool POV (Persistence of vision) displays.

For technical details, check out the posts about the hardware and the the software used to make the photographs below.

If you are a jump roper, a pixel artist, a photographer, or “just” a hacker and have some ideas involving a JMP-rope: drop me a message and JMP on board.

I am even thinking about applying the technique to ferris wheels, has anyone got one I can borrow?

JMP-rope logo
JMP-rope ao2 logo
JMP-rope Debian logo
JMP-rope Firefox logo
JMP-rope Adafruit logo
JMP-rope Openhardware logo
JMP-rope Opensource logo
JMP-rope S.S.C.Napoli logo

CommentiCondividi contenuti

Hi Antonio, Nice project,

Ritratto di Alan Carvalho de Assis

Hi Antonio,

Nice project, thanks for sharing it!



Hi Antonio- I am interested

Ritratto di tastewar

Hi Antonio-

I am interested in a similar POV project, and have a question for you. Do you have any kind of sensor to determine the spinning rate of the rope, or does the code assume a fixed rotational speed? A quick glance at the code suggests that it's fixed, but I would love to know if I am missing something.

Hi, yes, in the current code

Ritratto di ao2

Hi, yes, in the current code the animation frame rate is fixed, and set according to the exposure time on the camera (one animation loop per shot); hence the jumping rate has to match more or less this time too (one rotation per animation loop).

I am looking into a rotation sensor for the next prototype, the idea is that by measuring the angle it's easier to see the effect live, i.e. the effect is less dependent on the jumping rate.

I found a slip-ring/rotary-encoder combo which would work quite well but the manufacturer said that only one unit costs quite a lot.

Would you be interested to partner up?

I know this is an old post.

Ritratto di JayRod

I know this is an old post. But i am interested in going in on those rotary encoder slip rings with you. I have an idea that almost matches yours. I would love to work on it with you.

My ability to work on these

Ritratto di tastewar

My ability to work on these hobby projects is very intermittent, unfortunately, so I doubt it would be fruitful for you to look to me for any help.

For my intended application, I was thinking about using this sensor:

I understand about your

Ritratto di ao2

I understand about your limited time. Please let me know how it goes with the gyroscope.

Ciao ciao, Antonio

Hi Antonio! I tried to use

Ritratto di P43YM

Hi Antonio!

I tried to use your sketch with my bike POV. I added a sensor on the wheel, and Arduino takes measurement time of one revolution and then calculates the time of delay between frames. But my reed switch, which I used as a sensor totally unsuitable for this. Now I'm waiting for the Hall sensors from China. Also, I think to remove the constant repetition of animation and draw pattern only once after the triggering of the sensor. But now I'm stuck on a problem with the sensor. You can look at my POV here article on russian language, but you can watch my videos.

Hi P43YM, it was actually me

Ritratto di ao2

Hi P43YM,

it was actually me in the comment on that page, not a scammer :)

For the JMP-rope v2 I am planning to add a rotary encoder to measure the position of the led strip; my prototype would be using an optical mechanism, but a magnetic one with a Hall effect sensor could be better for your case indeed.

The point is to measure either the speed (RPM) or the angle, as you understand.

Please keep me posted about your developments with a magnetic sensor.

Plus, I will be using a led strip based on APA102 instead of WS2801, it is better for POV applications.

Internet is a dangerous

Ritratto di P43YM

Internet is a dangerous place. :-)

I heard about APA102, but I have 4 meters ws2812b I will try it first. As I heard it must work at 30 fps per thousand diodes, so that diodes 30 can operate at a speed of 1000fps.

People in the comments advise me to use 2 sensor: 1 detects wheel revolution, and the second will be triggered every few degrees. It is also possible to use the accelerometer like here

I also noticed that the one tape is not enough. For a good picture, we need at least two tape which is placed on both sides of the wheel, and when the sensor triggers the animation should be sent to the first tape from the first frame, and the second from middle frame.

Hey man! are you still

Ritratto di Anonymous

Hey man! are you still working on this jump rope? Are you selling these? I am interested in combining jump ropes with going to festivals and stuff. thanks!

Hi, I am not selling the

Ritratto di ao2


I am not selling the JMP-Rope, but I am planning to build a version 2 at some point in the future; v2 will have a stabilized image and more lights, to make it easier to make videos with it.

Feel free to ask me anything via email.

Ciao, Antonio

Invia nuovo commento

Il contenuto di questo campo è privato e non verrà mostrato pubblicamente. If you have a Gravatar account associated with the e-mail address you provide, it will be used to display your avatar.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente
  • Elementi HTML permessi: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Linee e paragrafi vanno a capo automaticamente.

Ulteriori informazioni sulle opzioni di formattazione

Questa domanda serve a verificare che il form non venga inviato da procedure automatizzate
Enter the code without spaces.