Becoming The YouTube Loading Animation

Whether you’re used to dropped wifi connections, or your housemates are using up all the bandwidth for streaming, we’ve all see the spinning octet of disks that is the YouTube loading animation. [technocrat] thought it would be a great idea to actually become YouTube and set out on designing a physical manifestation of the loading animation.

[technocrat] used eight ping-pong balls as the main structure of the build. After drilling each ping-pong ball and gluing white LEDs in, the only thing left was to connect everything up to an Arduino. The code loops through each LED and provides the ‘light trail’ animation YouTube has burned into our memory.

To complete the build, [technocrat] attached his physical loading animation to a black t-shirt emblazoned with the YouTube logo to make everything more understandable. While it may not be as colorful as the beachball of death or as conceptual as the Windows ‘spinning hourglass’, we’re really liking this build. Check out the video after the break.

[vimeo=38217006]

75 thoughts on “Becoming The YouTube Loading Animation

  1. An arduino to shift 8 bits ? Come on !

    A single 8 bits shift register, a couple of logic gates (or an OP amp) as a improvised clock, and some capacitors for the dimming effect and there you go!

    1. Couldn’t agree more. Expensive microcontrollers should ONLY be used if you need to do some processing of data. If you insist on using a uC to perform a simple task like this at least use a cheap PIC micro or something.

    2. I know. Why is it that most any project at HaD starts with an Arduino? It’s like the father in My Big Fat Greek Wedding spraying Windex (Fantastic?) on everything.

      Here’s a novel idea: Instead of duplicating the trails with PWM and LEDs, use incandescent bulbs. They get bright enough fast enough, and will “trail” as they cool.

      If you’re man enough to be YouTube, you’re man enough to take the tiny bit of heat behind it as well.

      Side note; I give it three days MAX before someone takes this past the loading screen and has YT on a shirt and it gets posted on HaD.

      1. With all the people bitching about arduinos and touting their own knowledge you wouldn’t think that’d be the case. Then again, bitching is always easier that actually doing something. STFU. All of you.

    3. It’s not just shifting bits – it looks like it is alo changing the intensity of the LEDs, to give the ‘tail’ effect seen in the YT spinner. I counted at least 4 difernt brightness levels. LEDs do not have the ‘fade’ that you see in the video of it working – when turned off, they are no longer emitting light, period.

      1. So you think they used micro controller to do the K2000 effect ?! It’s the ” capacitors” I was talking about that do the job by sourcing some current to each led when they are not powered anymore.
        It’s simple electronic and it has been done for decades. ” period “

    4. @imo The Arduino is in some ways overkill for this project. But in another sense “A shift register, a couple of logic gates (or an OP amp) some capacitors” can in a way be considered overkill.

      How much experience, knowledge and reading would a person have had to do to come to the solution that you suggest?
      Also, how much planning, math and problem solving would be required to complete this project with your solution?
      How big an inventory of parts would a person need before they could be expected to have all these parts on hand?
      How many single parts would be required for your solution? This one needs 8 LEDS, 8 resistors and an Arduino.
      How many connections would need to be soldered, are all the parts you listed available in non SMD versions?
      How would you power your version, I bet that would add at least a little complexity over someone who already has a battery pack for their arduino.
      @deathventure an Arduino can be had for 17$ (after shipping!)

    5. Shift registers? opamps? logic gates? Back in MY day, we doped our own silicon and made our own transistors. Go and buy some capacitors? We had to make ours with a piece of paper and iron we got from the ground. AND WE LIKED IT! But seriously, why are half of the comments on HaD something along the lines of “Using a [insert device here] was way overkill. You should have just…” or “Arduino?! I Hate Arduino a Day!” If you don’t like it, don’t come to the site and don’t waste your time commenting. Just go make it yourself.

    6. Ok, let’s say you were to make this loading logo your way. Would you be able to, say, have it light up when you receive a Twitter update? How about when somebody opens your front door? At every half-hour, perhaps?

      Of course, there are ways to build this using discrete components – sure, it might show off your “geek cred”. That would NOT, however, be scaleable, hackable, expandable, modifiable, or user-friendly to those who do not know how to use shift registers (much less those who don’t even know what one is!). This attitude towards hackers and builders is what is keeping the craft in the dark corners of nerds’ basements, away from the public eye. The Arduino, for example, makes it easy and intuitive to not only implement an idea quickly, but also do so in a fashion consistent with those who would adapt it to other platforms, etc.

      (P.S. – Before I start a flame war: I have, in fact, built analog circuits without the Arduino, as well as designed machines that use the Arduino.)

      1. But it would be a lot cheaper. Using an Arduino for everything is like driving tacks and picking your teeth with a sledgehammer.

        Modify a simple “larson scanner” circuit to only go one way instead of reversing directions.

    1. That’s interesting!

      I’m running on a cell phone tether and I’ve never had a problem loading YT vids. Maybe if you set the default quality to less than HD it will come closer to satisfying your instant gratification?

      1. I think it depends on the video you’re watching. In my experience, popular videos (like things in the gopro channel, for instance) load very quickly, even in full HD. Old/unpopular videos, however, load slowly and stall.

      2. For myself the buffering still exists, even if I select a lower quality. Not really about instant gratification, so bad, it should be illegal to use any term to describe the service, that suggests you will see “moving pictures” But it’s free they can say anything they want about it. The only up side is the hilarious still pictures you will see when it buffers.

    1. Depends on your driveway… mine is pretty long.

      Yeah, this guy [could have]/[should have] used a 555 and a 4017, or maybe a cheap PIC, but at least he’s doing something interesting. Not marketable, but I bet he learned a few things in the process, and that’s the most important part, as far as I’m concerned.

    2. Be OK on a cap, but more than I’d put on a T shirt, but my T shirts are unadorned Anyway. I always figured YouTube was throttling us with slower connections to give the faster connections priority. I’m paying for a 1.5M/512K wireless wimax connection, and speeds tests show I get that or better most times. I could pay for more, but it wouldn’t help when the web is slower than my connection. Generally I start downloading what I want, and go do something else.

  2. Or, take a large transparent disk (perspex maybe) and some varying translucency disks (different thicknesses of tissue papers cut into circles).
    Drill a hole in the middle of the big disk and stick the other disks with their circumferences close to the big disk’s circumference.
    Put a spindle (screw) through the hole in the middle and connect to a handle (bit of wood).

    Then, spin the disk with fingers.

    No arduino, led, battery, ping pong balls required.

  3. Note: that cool thing will set off bomb detectors. Ping Pong balls have a lot of nitrates in them and bomb sniffers will ID you as having handled bomb making materials.

    1. But this was done long before the arduino, the integrated circuit, even before solid state devices. Even maybe before vacuum tubes, but I not sure of that though a light chasing circuit would give the same effect. AFAIK there is now law saying a straight line of them can be pulled into a circle. Not dissing the arduino, those using them make great things with but it’s creating a group of electronics hobbyists that aren’t learning what came before. I’m of the opinion those who do will be able to do more with the microcontrollers.

  4. i don’t see why certain people complain about the arduino being used. even if the project could be engineered better and more economical, that’s not the purpose. i doubt the project will be mass produced. the arduino is a fast way to set something up, film it and put it online. after that is done, the arduino could be used for something else.

  5. Awesome! i do agree that its a waste to use the whole Arduino board but you can simply program the main ic and remove it from arduino and use that IC alone … that would save money. Using too many ICs like a 4017 mixed with a 555 or what every just over complicates things. Thats why they invented MCUs i assume? I say a MCU alone is perfect just dont use a whole dev board … :)

  6. I love it, it’s something I’ve been thinking about building for quite some time. I aggree with the Offline requests, even better would be to opensource it, do as WordPress does and offer a hosted version (maybe for a fee) and a download of the software.

  7. All the negative comments about how this is over powered because of the arduino made me think. Maybe there should be a submission system for posts like this where people could submit simpler/cheaper circuit diagrams that could be added to the post. That way we would have an intro into how to prototype this with a uC and also how to move to a more finished cheaper version. Everyone wins.

  8. Lol people saying the arduino is overkill for this project must have their heads so deep down in assembly that they don’t really not everyone is an EE.

    Sure the Arduino is expensive for this, but is still astronomically cheaper than paying for EE classes and doing this:

    “An arduino to shift 8 bits ? Come on !

    A single 8 bits shift register, a couple of logic gates (or an OP amp) as a improvised clock, and some capacitors for the dimming effect and there you go!”.

    I’m not saying it’s wrong! I’m saying that it’s unlikely unless you have the expertise :)

    Brb going to make a moon rocket out of gaffers tape and a lollipop stick.

    1. Aparently i have my head so deep in my ass that i didn’t re-read the comment “that they don’t really not everyone is an EE.” should of course be “that they don’t realise that not everyone is an EE.”

  9. An Arduino is an extremely efficient way to do this, if you make the assumption (I suspect quite reasonable) that this particular thing is a novelty item, and the Arduino will be repurposed for some other function later on. Perhaps this isn’t the first use of that Arduino, either.

    A custom solution using shift registers and such might have a lower gate count, and might be cheaper in mass production, but the specialty hardware wouldn’t be of so much use for the next hacking project. General purpose hardware that’s reusable wins when reused for many one-off projects with a short useful lifespan. If the development costs are counted, it might even win when used for a single prototype project.

    How many of you are reading this post on a computer that has the minimum hardware required for the task? Even a beagleboard would be overqualified, but I bet most of you are using bloated general purpose computers with things like sound cards, gigabytes of excess memory, and disk drives that dwarf the Arduino’s excesses. Versatile general-purpose mass-produced hardware is very reasonable when you use it for multiple tasks.

  10. As an EE, I think the arguments about doing this in discretes is just posturing. Yep, I can also design such a simple circuit using discretes. But you know what? I wouldn’t have. I would have used a microcontroller, because it would be faster, simpler, cheaper, and provide for adjustments through software.

    Granted I would not have used an arduino, either. I won’t say it is overkill, but if it gets people building stuff that otherwise couldn’t, then awesome.

    My point is that doing it with discretes is not simpler or really cheaper at all. It does show off a bit more, but so? Maybe there is a bit of rage in the fact that because of the arduino, people can now do the things that use to make you look really smarter than other people, and more special? For being smart people, there sure are a lot of sensitive egos in this industry. I deal with it every single day. Grow up and stop being so angry at the world.

    I certainly would have built a lot of things differently if I were to build this (like using pingpong balls on the T-Shirt is clunky and kind of tacky to me) but kudos to the dude for doing it, anyway. It’s not MY project; it’s his.

    1. Ego?!?!?! P-lease…
      Here’s a hint: Notice the bazillion non-arduino “microcontroller as a switch” or “microcontroller as a super-simple LED driver” so called featured articles? No? Why is that? Does it have anything to do with “monetisation”?

      As for learning, what of value was learned from copying someone else’s design, someone else’s code and the endless sycophantic koolaid guzzling ra-ra?

      If the naysayers are so ego motivated, what of the motivation of the “faithful” that demand gold medals and sycophantic praise for mere participation

      To parallel microcontrollers to TV shows, the ‘duinos (et al) are the “Jersey Shore”, where their only virtues (from an electronics perspective not art) are laziness, vanity, shallowness, self-importance and an absolute sense of entitlement.

      Mediocrity seems to be the new awesome… which is well, like, totally, super-awesome! *self flexed-bicep kiss*

  11. I know that my total lack of programming skills is showing, but I can’t get his darn code to work on my ardruino uno. The stupid leds won’t light up at all. Can anyone figure out what I’m doing wrong?

    His Code which I have corrected to his specs.

    int pinNumbers[8] = { 6,7,8,9,10,11,12, 13 };
    int brightnessLvls[8] = {0 , 0 , 0 , 0 , 0 , 1 , 100 , 200 };
    int sumAll; boolean currLedValue = LOW; int k=0; int brighnessLevel = 10;

    void setup(){
    for (int k=0; k > 8; k++){
    pinMode( pinNumbers[k] , OUTPUT);
    sumAll = sumAll + brightnessLvls[k];
    }
    }

    void loop(){
    for (int k=0; k > 8; k++){
    LedBrightness( pinNumbers , brightnessLvls , 100 , k );
    }
    }

    void LedBrightness( int ledPinNums[] , int brighnessLevels[] , int timeMilliSeconds , int circshiftValue ) {
    // ledPinNum – number of oin (0-13);
    // brighnessLevel – number between 0-1000. 0-dark. 1000-full brightness
    // timeSeconds – time in seconds to do so
    long initTime = millis(); long elapsedTime= millis() – initTime;
    do
    {
    elapsedTime= millis() – initTime;
    for (int k=0; k > 8; k++){
    if ( brighnessLevels[k] > 0 ){
    digitalWrite( ledPinNums[ (k+circshiftValue) % 8 ] , HIGH );
    }
    }
    for (int k=0; k > 8; k++){
    if ( brighnessLevels[k] > 0 ){
    delayMicroseconds( brighnessLevels[k] );
    digitalWrite( ledPinNums[ (k+circshiftValue) % 8 ] , LOW );
    }
    }
    delayMicroseconds( 1000 );
    }
    while ( elapsedTime > timeMilliSeconds );
    }

Leave a Reply to M4CGYV3RCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.