Seeeduino XIAO - 32-bit Arduino-compatible Microcontroller

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
today in the workshop we'll be taking our first look at the siddwino shall we'll examine the features and capabilities of this tiny but powerful 32-bit microcontroller we'll also see how we can use arduino code and libraries with the show good things come in small packages so welcome to the workshop well hello and welcome to the workshop or i should say welcome back to the workshop it's been a little while since i created the video and i apologize for that but i have been very busy doing some renovations down here in the workshop including adding a new area to the workshop that i'll be showing you in a little while let me just say that if you think i have a lot of parts stores over here you ain't seen nothing yet at any rate i have something else new in the workshop and that's what i want to talk to you about today and it is a new microcontroller it is called a shao and it is made by seed studios it's part of their c duino line this is an arduino compatible microcontroller that uses the sam d21 chip that a lot of other microcontrollers use and that makes it much faster than the arduino and more capable it has more io devices and more interrupts and it is also very very inexpensive and very very tiny it's an excellent device for wearable projects and it's also an excellent device just for general purpose projects now xiao is a rather odd name and i didn't even know how to pronounce it at first to be honest it's spelled x-iao and so i did a little bit of research on it and i found out that a shao is actually a musical instrument it is a flute that was created in china about 28 centuries ago and is still around today now i'm not sure why they decided to name a microcontroller after a flute maybe they were hoping for the same product lifespan although 28 centuries is a pretty long life span but at any rate it is a quality built product as i said it is very inexpensive it's less than five dollars u.s for one of these boards and it has a lot of advantages over an arduino so what we're going to do today is we're going to take a detailed look at the shower see how it works and see how we can program it so let's go and start with that the c duino show was designed by seed studio and as part of their c duino line of arduino compatible microcontrollers the device uses one of the sam d21 microcontrollers a 32-bit controller that is running at 48 megahertz it has 256 kilobytes of flash memory and 32 kilobytes of static ram the xiao has a usbc interface which also provides power to the device its extreme small size and low current makes the device ideal for wearable and portable projects another advantage of the show is it's very inexpensive these devices are less than five dollars us a piece the show has 11 digital i o ports it has 11 analog inputs that use a 12 bit analog to digital converter there is also one digital to analog converter that provides an analog output all of the pins on the shell support interrupts 10 of the pins are pulse width modulation capable the device has an i2c an spi and a uart interface it also has six sircom serial interfaces which can be configured as additional i2c spi or uarts let's take a look at the pinouts on the shell unlike many chips this one starts labeling the pins at pin 0 so the 14 pins go from 0 to 13. three of the pins are being used for power pin 13 is being used for 5 volts pin 12 for ground and pin 11 for 3.3 volts these pins provide outputs from the shower's internal voltage regulator when using the usbc connector there are 11 analog inputs a0 to a10 these are all 12-bit analog inputs the same pins are used for 11 digital i o pins remember that the xiao is a 3.3 volt logic device and is not 5 volt tolerant many of the pins have other functions as well pin 0 is the output of the digital to analog converter so this is the analog output pin 1 is the reference pin the equivalent of the aref pin on the arduino uno this can provide a reference voltage for the analog to digital converter pins 4 and 5 are the sda and scl connections for the i2c connection note that these mimic the same connections used on the arduino uno pins 6 and 7 are the transmit and receive respectively for the uart and pins 8 9 and 10 are used for the spi connection to the device all of the pins on the show support interrupts some of the interrupt pins are rather unique the pin 4 interrupt is a non-maskable interrupt other interrupts can be masked and ignored but this one cannot also note the pin 5 and pin 7 are both tied to interrupt number 9 so they can't be used simultaneously for interrupt purposes with the exception of pin 0 all of the pins on the shell support a pwm output on the top of the device the most prominent feature is the usbc connector this is used for both power and data reset on the show is performed by connecting two of the pins on the top together there is also a procedure for doing this multiple times to reload the boot loader the shallow has four leds the one labeled l is the user led and this is the equivalent of the pin 13 led on an arduino uno the t led is the uart transmit indicator the r led is the uart receive indicator and the p led is the power indicator on the bottom of the shell we see some additional connections there are two connections for a serial debug there's also a repeat of the reset with the associated ground connection and another power connection with a ground and a v in this is very suitable for wearable applications the sam d21 processor used in the xiao is also used in several other popular microcontrollers you can program the cduino show using circuit python which is a subset of python created by adafruit for microcontrollers you can also use the arduino ide which is what we will be using today in our experiments now let's do a quick comparison of the xiao and the arduino uno the xiao uses a 32 bit sam d21 microcontroller whereas the uno uses an 8-bit atmega328p microcontroller the show is clocked at 48 megahertz which is three times faster than the 16 megahertz clock used on the arduino uno the xiao has 256 kilobytes of flash memory as opposed to the 32 kilobytes of flash memory on the uno the xiao has 11 digital i o ports the arduino uno has 14 digital i o ports and keep in mind you can also use the analog ports on an uno to give a total of 20 digital i o ports the xiao has 10 pulse width modulation capable ports the arduino uno only has six the cal also has 11 analog inputs and these use a 12-bit a-d converter the arduino uno has six analog inputs and it uses a 10-bit a-d-converter the c-duino xiao has one analog output whereas the arduino uno does not have any analog outputs the cduino shall can be purchased individually or in a handy three pack so now let's take a look at this amazing little microcontroller now here i have a three pack of the c duino chao and i want to show you the difference between it and a number of other common processors which i have over here specifically the size of it so let's take a look at the shell first let's move this box aside over here this is the show as you can see it's extraordinarily tiny and here's a couple of other processors you can compare it against this is the arduino uno of course and as you can see this thing is just a fraction of the size of the uno it's barely bigger than the usb connector on the uno here is an esp32 and esp32 cam and again as you can see the xiao is much smaller than those this is an arduino nano 33 iot it's the same size as the old arduino nano but this unit actually uses the same microcontroller that the xiao uses but again you can see that you could probably put three shallows in the space of that this is an arduino pro mini which is maybe about twice the size of the show and this is the only thing i could find that really compared in size to it and this is a small 80 tiny board now of course if you want to compare the capabilities of an a t tiny board with only a few i o ports to the c duino shao there really is no comparison and performance number of ports etc but they are roughly the same size a little shower is even a little tinier than that and this is a raspberry pi zero which of course is not a microcontroller it's a microcomputer but i brought it out here because this is approximately the same price as the xiao and of course this is a complete little computer it has an hdmi output etc etc but as you can see it is much much larger than the c duino shao now uh you saw already in the animated presenter what the pin outs and everything of the shower as you'll notice it comes without the pins soldered in they give you the pins they also give you in the box a number of these little stickers that you can stick onto here to help you with the pin outs and of course you don't have to solder the pins on you could surface mount this thing if you wanted to you could solder the pins on the other way use female pins are only soldered to the connectors that you actually need so it's a very versatile little device the c duino xiao is a relatively new microcontroller and as a result there's not as much information out there about it as there is with established controllers like the arduino uno or the esp32 however there are some good resources online that you should be aware of one of the main resources of course is the wiki that seed studio has provided for the c duino show and this actually gives you quite a bit of information about the show and about setting it up and demonstrating with it another resource cduino has provided is a resource page and on this resource page which they'd continually update they will add links to other articles and resources for the cduino show another place you can go is the cdno forum they have a specific form for the cduino show within their forum and you can communicate with other show users there ask questions and actually take a look at some of the other questions which may answer some of the queries that you have and finally another resource that i found that is very good is this blog over here and you can find the url to the blog inside the article that accompanies this video on the dronebot workshop website i use this particular blog for a lot of the information that i had for the show this is made by a user who got an early copy of one of these and basically dissected it he has a number of other articles on here as well on the show including articles on using the show with platform io which is a different ide than the arduino ide and is superior in many ways and you'll be seeing platform i o by the way here in the dronebot workshop as well and so you'll find the link to all of these resources on the article accompanying this video on the dronebotworkshop.com website so now that we've seen the show let's start and work with it now i mentioned that the xiao could be programmed using either the arduino ide or using circuit python well today we are just going to focus on the arduino ide the xiao is a little bit like the esp32 in that you have to set up a new boards manager in your arduino ide in order to work with it so i'm going to show you how to do that right now and then we'll run some very basic tests on the seeduino show in order to work with the c duino shall in the arduino ide you're going to need to install an additional board manager if you've used the esp32 with the arduino ide you've done this already and it's a similar procedure you need to go into file and then go into preferences in preferences you'll see a box for additional board manager urls now if like in my case you've used the esp32 or an additional board you've already got an entry over here but you need to put a second one in so click this little button right beside the text box and this will open up another text box i'll just expand it so we can see it and in the line below this insert the url for the board manager for the show now you can get this url off of the seed studio wiki or you can get it off the accompanying article to this video on the dronebotworkshop.com website once you've done that click ok and then click ok over here now that you've done that you need to add the board to your arduino ide go into tools and then go into the board and go into board manager up in the top we're going to try to filter our search by typing in cdwinoshow and we get one entry over here which we can install once the installation is complete you can close your boards manager and now when you look in your boards you'll have an additional entry down over here for c duino boards including the c duino show over here and this installs the cdwino board manager and boards into your arduino ide now here i have a cduino shao and it is hooked up to my usb port and this is basically brand new out of the box i haven't done anything to it yet and you can see a flashing light on it and that is because the show like many arduino compatible devices already comes pre-loaded with the blink sketch now i want to show you something about my hookup because we need to talk a little bit about usbc cables not all of them are necessarily the same the xiao of course uses a usbc connector for both power and data but many usbc cables are only made for power and do not carry data signals and so it's important to use a usbc cable it also carries data now what i've done over here actually i'll just take this apart for a second and show you is i have used a micro usb cable and a micro usb to usbc adapter and i found that worked very well because the usbc cables i happen to have in stock only seem to carry power connections so you might want to keep that in mind bear in mind that if you connect the usbc cable that only has power on it you will see the blinking light of course because the sketch is already loaded but you'll run into problems when you go to upload sketches now if we go over to the blank sketch we can upload another version of it we'll just change the rate of the blink let's change that down to three thousand and so that should give us a three second blink instead of a one second one now up in the tools over here we have to make certain of course we have the right port and board so under the board in the boards manager you're going to go into this new section that you just installed and you're going to pick this arduino shall and then over here on the ports look for the port that says see duino show on it which in this case is this one over here for me now this is a good way to determine if your cable actually has data connections because if it doesn't it won't say see we know xiao on the port but the port will show as being available so that's a good clue as to whether or not you really have the right kind of usbc cable and so i'm going to upload that to the show and you don't need to do anything like you do with the esp32 by pressing any buttons or anything you just upload it as you normally would for an arduino and let's take a look at our show over here and now as you can see the blink rate has changed so we have indeed successfully uploaded to the cduino show so now that we've hooked the show up to our computer and have successfully used the arduino ide to send it to blink program we can move on to examining some of the other features of this microcontroller what i'm going to do right now is hook up a very basic circuit now it really doesn't do very much this is just a demonstration circuit and it'll show you how to use some of the different i o capabilities on the show for the test we're about to run we will of course need a seeduino shell we'll also be using a potentiometer now i used a 10k pot but any value from 5k to 100k would work just fine you'll need an led and i used a red led but the color shouldn't be critical you'll also need a push button switch and again any type of push button switch will work as long as it is normally open we'll begin by connecting the ground of the siduino show to one side of the potentiometer we'll connect the 3.3 volt output of the shower to the other side of the pot the wiper of our pot will be connected to pin 2 on the c duino show we'll connect the anode of our led to pin 9 of the show we'll connect the cathode of that led to ground note that we are not using a dropping resistor in this circuit we'll connect one side of the push button switch to pin 7 of the show the other side of the push button switch will be connected to ground again note that we are not using a pull up resistor finally pin 0 of the seeduino show will be connected to pin 4 and this completes the wiring for our test experiments so our first test sketch is going to be a test of the analog input pins and what i want to illustrate with this is just a few differences between running a sketch like this on the arduino as opposed to running it here in the cduino shell now this is an extraordinarily simple sketch we start off by defining the analog input pin that we're using and that's a2 of course you could use another one of the analog input pins there are 11 of them and you would simply have to change the value over here i've also defined an integer that represents the input value that we're going to get back from that analog pin and i called it input underscore val now the setup is where i want you to notice a couple of differences between this sketch and one that has been written for the arduino the first thing we do is we set the analog read resolution and i'm setting it to 12 which is 12 bits and that's the maximum resolution of the a to d converter now you can set this for a different resolution if you want 11 bits or 10 bits if you don't want as high resolution out of your 8d converter if you eliminate this statement however the analog to digital converter will default to 10 bits not 12 bits and this is for backwards compatibility with old arduino sketches because you normally don't add an analog read resolution statement in an arduino sketch and the arduino has a 10 bit a d converter so if you want to get the full resolution of your a to d converter you need to put this statement into your setup the second thing i want you to note is how we are using the serial port you will notice that instead of serial begin i've got serial usb begin over here now this is unique to the sam d21 processors and other boards that use this processor also use this same comment serial usb is one of the serial commands supported by the arduino and serial usb uses a direct connection to the high-speed usb port that is built into the sam d21 chips the atmega328 chips do not have a built-in usb port they use a separate chip in order to drive usb but this is built into the sam d21s now another thing about this statement is i've got a speed over here of 9600 bits per second that's actually a farce and i could put any value i want into there because the serial usb port does not require you to specify a speed however if you don't put a value in there the arduino ide will fail to compile over here so you need to put something in here but just keep in mind that this does not have to correlate to the speed that you're running your serial port at because serial usb does not really require that after that the loop is pretty well exactly what you would expect we do an analog read as we would with an arduino of the analog in pin and assign that to the input val and then we will print that to the serial monitor again notice the use of serial usb over here i've added the slight delay over here and then we just go and repeat the loop again so an extraordinarily simple sketch with a couple of different statements up here that you need to take note of when you're working with analog devices on analog inputs on the sam d21 processors like the c duino shou so now let's take a quick look at it in action and so as you can see from the serial monitor we're getting a value back from our sketch and as i twist the potentiometer i can send it down towards zero although interestingly enough mine won't go all the way down to zero now this is a very sensitive a2d converter with a maximum voltage of 3.3 volts so i suspect i might be picking a little bit of noise up on this however i'll increase it in the other direction and as you can see we go all the way up to 40 95 on the other end so we do indeed have 12 bits of resolution as opposed to the 10 bits of resolution that you would be used to with an arduino uno or another avr type of arduino and so this is a very simple demonstration of the analog to digital converter on the c duino show now in our next sketch we're going to check the operation of the digital i o ports on the xiao as well as the operation of the built-in led and once again this is a very very simple sketch we start off by defining the inputs for the push button and the output for the led and you can of course connect these to different pins if you wish and just alter the code accordingly we also define a boolean that i'm calling button state and this is just going to represent the state of this push button whether it is a high or whether it's a low now in the setup we do a number of pin mode commands you'll recall that we did not use an external pull up resistor for our push button instead we're going to use the internal one in the show so we do that by doing a pin mode and using input pull up as our parameter now the led is set to an output and it's done in the normal fashion pin mode led output and we're going to do the same with the built-in led on the show as well and the reason for doing this will become apparent when we run the demonstration we're also setting up the serial port and once again we use serial usb and we pass it a baud rate that is completely irrelevant because it's really ignoring it but the compiler will require it then we're going to go into the loop and the loop is very simple and i know a lot of you're going to say you could have probably done it all in just about one statement but i broke it down into individual statements for a reason first we're going to assign button state to the value of the digital read of the button and that's pretty straightforward and then we're going to print that button state out to the serial monitor also pretty straightforward then we're going to simply write to the leds with that button state so we're going to write to the led and the built-in led and again the reason for doing this is going to become apparent in our demo so let's go and take a look at that demo and you'll see why we're driving two leds instead of one now believe it or not this demonstration is probably the most difficult thing i have ever had to film for a dronebot workshop video and i'll tell you why as you can see i've got a very close up view of the cduino shower right now and you can see my led over here which is currently on and here is my push button and the fact that the led is currently on will make some sense especially if you look at the serial monitor and realize that right now the push button is at a state of one which again makes sense because the button goes to ground and sends things to zero so the button is at a state of one and the led is on and that makes sense but what is difficult to film is down in the corner over here we have a very tiny led and that is the built-in led and what i want to demonstrate is that as i push the button our main led goes off but this other one actually comes on now it's very difficult to see it's over here in the corner i'm hoping you can see the little yellow thing it's i've tried all sorts of angles on the camera and i'm afraid this is about the best i can get but what i wanted to illustrate is that the built-in led operates in the opposite faction to the built-in leds on the arduino boards on the arduino board the led is activated at a logic one or a high on the cduino chao this led is on when the logic is low so it is exactly opposite and the same is true by the way for the other leds on the board over here the two blue leds that uh reflect the transmit and receive respectively which are also connected to d12 and d11 they also work in the same fashion they are on when the signal is low and off when the signal is high so that's one important difference between the c duino shao and the arduino boards now in this sketch we're going to do a demonstration of the analog output capabilities of the c duino shao and of course the arduino avr boards do not have an analog out so this is not a comparison to an arduino but just something to show you how to use analog out now this is based upon a sketch that seed studio had provided on their wiki and essentially all i've done to the sketch is i've cleaned it up a little bit they had for example a variable in that sketch to represent frequency they defined it but never used it so i just removed it and i also just cleaned up the code so it's a bit more readable but otherwise it's essentially the same sketch now we start by defining the analog output pin that we're going to use and in this case we cannot change this a0 is the only pin connected to the digital to analog converter we have to use that as our output pin we also define an analog input pin and of course if you want to move it from a4 you can move it to any of the other inputs we're defining a float as well a couple of floats that we're going to modify to create our simulated sine wave one called outval and we're going to initialize it zero and another one called increment and the increment is the amount that we are going to increase the value of outval and therefore simulate a sine wave now in the setup we see a command we haven't seen before analog write resolution and below it we have a command we have seen before analog read resolution well i'm sure you can probably guess what analog rate resolution does it sets the resolution of the digital to analog converter and the maximum resolution on the cdw is 10 bits and that's what we've set this to we also set up our serial port again using serial usb and passing it a baud rate that's completely irrelevant then we go into the loop and the loop is where we're going to generate our sine wave now remember our analog output is a 10 bit so it can represent any value from 0 to 1023 now as we can't go below zero and do a negative voltage we're going to offset our sine wave to the halfway point and halfway to 10 23 is 511.5 which is why we're using this number over here and so basically we take the halfway point and we add to it the sign of outval now it's going to start off as zero and basically we're going to change that value so we're going to do that and continually increment that in order to make a sine wave we're going to output this to the digital to analog port and you'll notice we use an analog write command the same command that you're used to using for pulse width modulation when you use the analog write command on a digital to analog converter port it outputs an analog voltage as opposed to a different pwm pulse width and this is actually the true use of analog write if you think about it then we're going to read that input from the pin that we've connected or analog the digital converter to and we're going to take that reading and we're going to do some math on it we're going to multiply it by 3.3 over 4096 3.3 being the maximum voltage that we can get and 4096 being because we're using a 12 bit converter and we have 4 40 96 different potential values coming out notice that because it's a float we also use the decimal point over here then we're going to print that to the serial plotter using the serial usb print of course you could use the serial monitor but you just get a bunch of random numbers which wouldn't mean anything the plotter gives you a visual representation which should look approximately like a crude sine wave then we're going to add a small delay and if you want to change the frequency of the sine wave you can increase this delay or set it to a different value accordingly but it's a relatively simple sketch a few commands we haven't seen before if we haven't worked with a digital to analog converter but let's go take a look at it now in action now if you haven't used the serial plotter before it's basically the same as using the serial monitor you go under tools and you will find serial plotter and we'll bring that up and as you can see we have a very approximate crude emulation of a sine wave over here so this is the sine wave that we are outputting from the digital to analog converter into our analog to digital converter and reading it back and placing it onto the serial plotter so it's a fairly simple demonstration and certainly not a perfect sine wave but it does illustrate how you can use the digital to analog converter to produce an analog output voltage for our experiment using libraries we are going to be needing a cduino show and an am2320 i2c temperature and humidity sensor will also require two pull-up resistors now the value is not critical and they can be any value from 2.2 to 10k we'll begin by wiring 3.3 volts from the cduino shall to pin one of the am2320 we'll wire the ground connection from the shell to pin 3 of the am 2320 the sda connection which is pin 2 on the am2320 is going to be wired to pin number 4 on this duino show the scl connection which is pin 4 on the am2320 is wired to pin 5 on the shell the two resistors will act as pull ups one side of each resistor will go to either the sda or scl line and the other side to 3.3 volts and this completes the wiring of our libraries experiment now in order to use the am2320 temperature and humidity sensor we are going to need a couple of libraries and we're going to use the library manager to install those so go into sketch and go into include library and go to manage libraries this will open the library manager now go into the filter and type in am2320 now the top listing for the am2320 is the adafruit am232 sensor library and this is the library that we are going to need to install as you can see i already have mine installed if you don't have it installed there will be a button on this side that you can click to install it now this library is dependent upon another library called the adafruit universal sensor library you may already have the universal sensor library installed if you've done some of the previous experiments i've presented here in the dronebot workshop but if you haven't you will get a dialog box popping up during the installation of the am2320 library that will ask you if you want to install the universal sensor library as well choose yes to do that and install both libraries after you've finished with that you can close the library manager now the sketch that we are going to use is one that is included with the library as an example sketch in fact it's the only sketch included with this particular library and we can get to it by going to the file menu then going to examples and then scrolling down to examples from custom libraries and look for the am2320 sensor library chances are it will be one of the first ones as the listing is alphabetical the only sketch we can try is basic am2320 and that's exactly the sketch we're going to use so open that sketch and here is the basic am2320 sketch now as you can see at the top of the sketch we are including two libraries the adafruit sensor library and that's the universal sensor library as well as the library for the am2320 the sketch is very simple we start off by defining an object that represents our temperature and humidity sensor and then we go into the setup now one thing you'll notice is that as this was written for the arduino we are using the command serial and not serial usb and that is fine that will also work with the cduino shall now remember in this particular case we are passing the speed of the serial port in the begin statement and this isn't something you need to note because you will need to set your serial monitor up to the same speed rate so that the display is actually correct otherwise you're going to get a bunch of garbled characters the other thing we do in the setup is we print to that serial port and then we initialize the temperature and humidity sensor and the rest of the sketch is extremely simple we just do two statements to print to the serial port and we print the temperature and the humidity by calling those functions from the am2320 library so do we do a read temperature and a read humidity there's a delay of two seconds applied at the end and that is something you need to do because this temperature sensor needs to stabilize for about two seconds so every two seconds you will print out a reading of the temperature and the humidity so it's a very simple sketch and the real purpose of this is to illustrate that we can use arduino libraries with the seed we know shao so let's run this and see what the temperature and humidity in the workshop is right now now here's my shower with my temperature sensor and the pull-up resistors on a solderless breadboard and as you can see from the serial monitor it is indeed measuring the temperature which currently is 24.4 degrees celsius and a humidity of 50.9 and that pretty well correlates with the temperature and humidity reading on the clock that i have here in my workshop the temperature is a bit higher than what the clock is reading but this device is much closer to the heater in the room than the clock is so it's probably pretty accurate and so it's really a very simple circuit and again the main purpose of using it is to show you how the c duino shall can be used with arduino libraries without any modifications so you can take a lot of your arduino code and use it on this amazing little microcontroller and so that wraps up our look at the cduino show for today but it's certainly not the last time that you're going to be seeing the show here in the dronebot workshop for one thing i purchased a few of those three packs so i've got quite a few of these little devices to play with and i can see them becoming very useful for a lot of the projects that i'm working on over here so you're definitely going to see more of this little microcontroller now if you'd like some more information about the shower or perhaps you'd like to get the sketches that i used today in our demos you can just visit the article on the dronebotworkshop.com website and you will find the link to that article directly below this video while you're on the website please consider signing up for my newsletter i send out an occasional newsletter just to let you know what's going on in the workshop but i'm not trying to sell you anything or trying to spam you in any way so you can sign up for that on the website and you can also sign up for the dronebot workshop forums if you're not a member of the forum yet well you're missing out because it's a great place to go to get advice about all your electronic projects from other enthusiasts just like yourself of course if you haven't subscribed to the youtube channel please do that please just hit the subscribe button at the bottom of the video and you'll be on the way and make sure that you hit that little bell notification as well and have your notifications turned on on youtube and that way you'll find out every time that i make a new video so with all of that said i hope that you're taking care of yourselves i hope that you're staying safe and i will see you again very soon here in the dronebot workshop goodbye for now [Music] do [Music] you
Info
Channel: DroneBot Workshop
Views: 171,439
Rating: 4.9383516 out of 5
Keywords:
Id: pTwEnckaPYY
Channel Id: undefined
Length: 41min 54sec (2514 seconds)
Published: Tue Dec 01 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.