That was a nice explanation! However, I want to mention few things 1. I2C is Half-Duplex (not Simplex) 2. SPI is Full Duplex 3. In I2C, we can configure the peripheral to both the modes - Acknowledge and No Acknowledge
@elhoward74403 жыл бұрын
SMBus and I2C are slightly different protocols using the same hardware. Isn't No Acknowledge actually SMBus?
@AMG-gc4io3 жыл бұрын
what is I2C Protocol in Arduino Nano ?
@knuckleduster052 жыл бұрын
@@elhoward7440 no, ACK and NAK are both part of the I2C addressing protocol. When you write to a slave, the slave needs to pull down the SDA line to ACKnowledge that it is ready to receive communications.
@thekitsunedev_hun2 жыл бұрын
@@AMG-gc4io Its the Wire.h library and the same pinout as the uno (A4,A5)
@ksawery6568 Жыл бұрын
Also, I don't think you say Bauds/second, as 1 Baud = 1 bit/second
@savage83365 жыл бұрын
This is honestly one of the most helpful videos I've ever watched. I wish I saw this in school a few years ago.
@mugglepower Жыл бұрын
fuck schools man schools never teach you shit. of the 100% of content I learnt from college(in which my major MATSE is top 10 in US) probably 15% of the shit is actually useful. rest they just make you jump through hoops and run in circles and chase your own tail. I talked to professors and very smart people(well, smarter than me for sure) and they all tell me they purposefully make this shit difficult. I picked up more programming stuff in a month with my flipper zero than an entire semester worth of programming courses in college/. by the end I finished my college programming class i still have trouble fucking printing hello world but with interest and a bit of self learning I'm writing sql now.
@AiJ_Alew Жыл бұрын
I m not of this theme. Even dont know what that chips are for.... i m cab driver . Wanted just watch some fun on utube before sleep. And even I understood how these guys communicate😊 Really good lesson. I wish i could see that 50 years ago. Maybe that could change my life
@puriap2505 жыл бұрын
Finally I understand how timing of serial communication works. Thank you.
@pertileluca5 жыл бұрын
In every video your animations are a pleasure for the eyes!
@elhoward74403 жыл бұрын
PCIe uses serial lanes because of another advantage of serial, parallel interfaces suffer from signal skew of bits sent over traces of differing length, so the top clock speed of a serial bus can be higher than the top speed of a parallel bus. PCIe can have up to 16 serial lanes, but data is divided a byte at a time to each lane rather than a bit at a time. We have such good serdes chips now that serial is taking over.
@rayhan87013 жыл бұрын
this is the only video on the youtube which is very clean about protocols
@arnavjain75645 жыл бұрын
This is something I was really planning to study and the fact that you made a video on this at the perfect time is just awesomeee thanks😄
@ELECTRONOOBS5 жыл бұрын
Sign up at ELECTRONOOBS.io: electronoobs.io/ Follow me on FACEBOOK for more: facebook.com/Electronoobs help me on Patreon: www.patreon.com/ELECTRONOOBS
@TheJay66215 жыл бұрын
and Sign up at electronoobs.io
@ELECTRONOOBS5 жыл бұрын
@@TheJay6621 Thanks, just added that!
@fldr4362 Жыл бұрын
what a tutorial! wow thank you my friend!
@cmfanz5 жыл бұрын
@electronoobs, just a little correction needed in the table at 10:27. I2C does have an acknowledge system. The slave will pull the SDA line low when it has successfully received the transmission from the master. This will show up as the last pulse that appears after all the data bits are transmitted. This last pulse will be a high if the master does not receive an acknowledge from the slave. This way, you can clearly get a confirmation of the handshake.
@garrytuohy9267 Жыл бұрын
Nicely summarized. It would be interesting to see how JTAG compares with these protocols.
@djihadbouakaz6355 Жыл бұрын
The most simplified video in the field of telecommunication ever, thanks a lot
@yadusolparterre4 жыл бұрын
Wow, it's really rare to find videos that are explained so clearly !
@GuilhermeFerreira-po5ek4 жыл бұрын
O sotaque não engana. TUGAS NO PODER!
@wgm-en2gx5 жыл бұрын
CAN and JTAG would be interesting.
@adiigeak85685 жыл бұрын
+1
@whootoo11175 жыл бұрын
JTAG, CAN, RS-232 & MIDI
@Ashishchabha5 жыл бұрын
CAN is also very commonly used in protocols. Please make a video.
@DanielToebe5 жыл бұрын
Yes I would love to see a deep dive in to can
@MarceloCutin5 жыл бұрын
Absolutely agree. CAN bus would be great.
@acecool17153 жыл бұрын
This is great, hope this series continues
@harshdesai19325 жыл бұрын
You just have made me understand one of my most confusing Topic. so glad to have you in my subscription list. You are amazing. realmente te aprecio hermano
@abdulkhadarmohd72835 жыл бұрын
Yes sir we want more videos on this topic thank you, you are awesome Love from india
@puneethkumar7034 жыл бұрын
hi Mohammed Arbaz, I am a part of the open-source Arduino simulator development team. It will be great if you can have a look and share your feedback🙏😃 Some of the examples are here wokwi.com/arduino/libraries and here www.wokwi.com as well if it is interesting kindly let me know
@TheHookUp5 жыл бұрын
This is a really great video. I teach this in my intro to engineering class and this video is going to be a must watch addition to that lecture. Cheers.
@AntoineAshraf4 ай бұрын
Very nice video, just a few things to note - UART can work in both half/full duplex modes - There can be more than 1 stop bit in UART in some cases - I2C is a half-duplex protocol - SPI is a full-duplex protocol - The concept of acknowledgement in I2C is based on whether the slave is ready to receive data or not, so it's not applicable to generalize the term over I2C.
@jvon38854 жыл бұрын
I wish I would have paid more attention in school. But I'm glad ppl like you are around to whip me into shape.
@neilbedwell7763 Жыл бұрын
Really concise summary. I had next to no idea of each of these implementations, or even much of an idea of their spec beyond a communication vector, so this becomes a very welcoming introduction and comparison
@ak771-i9i3 жыл бұрын
You removed all the doubts which I had since 30 years in my mind Thanks alot
@SahilKhan-pt6pj5 жыл бұрын
Why not you should surely post more.I really admire and thank you for these videos.Keep it up.
@MrForcat Жыл бұрын
Masterclass, I studied a bit of this decades ago but much better explained. Now I want to create an MBUS CDC emulator for 30 years old car stereos.
@Tyler-kh6gp4 жыл бұрын
This is a really awesome video! I've rewatched it 3 or 4 times over the years to prepare for interviews
@robdoggitydog2553 жыл бұрын
They actually asked you stuff about this?
@bramburn4 жыл бұрын
Dude I couldn’t explain this any better. Well done
@montaguemonro5653 жыл бұрын
This is the first video that explains this in a way that makes perfect sense to me. Thanks!
@justdoingodswork3 жыл бұрын
We need a video on CAN protocols too, thank you so much for this video.
@spabbarter4 жыл бұрын
Please hook us up with the JTAG and CAN most definitely. USB and debug would be helpful as well. I’ve had a lot of trouble finding good videos for these, but this one on serial communications was superb!! Well done!
@arijitghosh63784 жыл бұрын
Thanks for simplifying these seemingly complex protocols for us. Up until now I kinda treated them as black boxes in my head to keep the complexity away but now it feels great to have a fundamental understanding of how they work. Although Id love to see a bit more explanation on SPI.
@ayushkaiwart24514 жыл бұрын
Easy understand videos. Its Better than the IOT class lectures that i attended in my college.
@jonasduell9953 Жыл бұрын
Well, this sums it up greatly. I work a lot with digital signaling via I2C which usually come in a 4 pin layout, GND, VCC, SDA and SCL since active devices need an additional power source. Anyway, great content, subbed
@abdullahkhan-qk3lk3 жыл бұрын
So far the Best Video i have seen on Communication Protocols! Amazing explanation bro!
@lincolnkarim15 жыл бұрын
Very clear explanation. If I may suggest--It may be worthwhile to draw the vertical sides of the pulses slightly slanted to remind us that the pulses are not ever square, but it takes time to climb from low to high and likewise to fall from high to low. I believe that the counting actually takes place at the middle of the slope (zero crossing) of the leading and trailing edges. Thanks for taking the time to produce this video.
@kothamahesh1003 жыл бұрын
Its really a clear explanation with all the variations among communication protocols. Expecting vedios on CAN and JTAG. thanks for the vedio..
@benhetland5765 жыл бұрын
Speaking of "bauds per second" is actually not very useful in this context, because the term "baud" itself actually means "state changes per second"! (Thus bauds/sec would technically be the _change_ in the rate of communication.) A change in state of a communication line may also - and often does - represent more than one bit, although for I2C and RS-232 it does indeed represent only 1 bit per (potential) state change, so its baudrate equals the bitrate or bps (bits per second).
@kuukatti5 жыл бұрын
And also, I2C does not need to know the baud-rate beforehand, that's why we have a wire for a clock.
@alteriaautomation68674 жыл бұрын
yeeep
@remus-alexandrusimion34393 жыл бұрын
In most digital communications baudrate is bitrate. The difference applies to analog communication, where phase shift and multiple amplitudes can encode bits. And yes, all sync communication can lack the bit rate information since the clock establishes the bitrate. It is however usual to establish some margins for each device, and if master is outside those margins errors can occur (usually due to hardware timing restrictions of some other kind).
@hansdegroot6528 ай бұрын
So i2c could do adaptive baud rate? In theory at least
@yasirrakhurrafat11423 ай бұрын
@@hansdegroot652 i think you could develop a program on the sending and receiving device. That'd send a signal to the receiving device to change its baud rate (on the receiving device). On the uart communication system as well, although it'd take its sweet time for the changes to take effect. As for the i2c, itd be just about instantaneous. Soo, yes.. theoretically you could have adaptive baud rate on the i2c, although I think a predetermined, static rate should probably be more efficient and stable.
@rgusso Жыл бұрын
best video so far explaining protocols in a simple way! thanks for doing it!
@whitenorthstar2 жыл бұрын
The best explanation I have come across thus far...thanks!
@sanderd175 жыл бұрын
Serial is slower in theory, but in practice, it's very hard to match the different bits up when using parallel communication. The faster your clock, the harder parallel communication becomes. With the clock speeds we have today, serial communication is without a doubt the most stable and fastest way. You can also double a serial link by doubling the wires. But unlike in parallel communicating, you don't have to synchronize the bits, you only have to synchronize after large portions of data have arrived. The fastest serial links (like gigabit ethernet, and USB C) , now use multiple wire pairs for serial communication.
@greymind00724 жыл бұрын
I respect and really appreciate the effort it would have taken for you to make such nice animations for explaining. Its a delight to see your work . I'm a fan, really helped me to understand concepts better. I will appreciate if you show more of oscilloscope result with a simple example data. Otherwise i love the work. Its just A1 class
@1.21gw53 жыл бұрын
amazing clarity.......................keep up the good work brother
@PrasadPusalkar-b9f Жыл бұрын
Great video buddy cant be more simplified than this
@dontstop_fun64 жыл бұрын
Since long time, I was searching for such an explanation and today by your video my concept got clear about bauds transmission. I'm really thankful to you for that.
@volkangundogdu10082 жыл бұрын
Nice and clear explanation of baud and reading process of a bit in a bit train.
@dikshitadesai2 жыл бұрын
I so appreciate you elaborating these concepts on the circuit boards. That literally saved me hours of hustle. Very well explained! Thank you
@ayushsalve12113 жыл бұрын
u saved me from my orals . thank you sir
@taimooredits18412 жыл бұрын
Great, this video is more helpful for everyone. your way to teach is totally awesome.
@siddharthmali58415 жыл бұрын
Great. Please make video on protocols like CAN and USB.
@omskariyazmaraikayer9134 жыл бұрын
Brief and to the point. Very useful video .
@drnda20072 жыл бұрын
Very good and, I'd say, 'honest' presentation, quick enough not to be boring and without any unnecessary talk to make video purposely longer.
@HealzDog4 жыл бұрын
You explained serial communication better than anyone else
@adyaandagastyasharma32023 жыл бұрын
Very simplified explanation of such complex concept.
@davewreski69004 жыл бұрын
You make it much easier to understand using your Scope. It is nice to see someone knows what a Oscope to display what you are describing. Keep up the good work. UP SCOPE !
@chuckthebull4 жыл бұрын
I have worked a lot with MIDI protocol, it uses mostly three 8 bit bytes in a row with a low going start bit.. started in the 80s for communication between synthesis and still used today even professionally.
@JeffCaplan313 Жыл бұрын
"The first low is a start bit." sounds awfully similar to "The first step is the hardest." 👏 👏 👏
@balajiprakash11304 жыл бұрын
The best explanation I have ever heard!!! Hats off ;) This video just solved a great mystery in my mind on serial communication.
@kentkvalnes46212 жыл бұрын
This presentation was one of the best I've seen in a while. Simple and very easy to understand. thanks🙂
@SearchFT4 жыл бұрын
Very nice informative. Short and sweet. No wharra wharra. Just straight talk, how technical people like it 😋👍🏻 Thanks
@pavankumar2704893 жыл бұрын
I believe at 5:10 the start bit is the once which leaves the transmitter first and also reaches the receiver first. So the positioning of start bit in the video should be away from Tx and towards Rx.
@1DR31N4 жыл бұрын
I enjoyed a lot this video,showing the oscilloscope waveforms. Awesome. Congratulations.
@XanthiumIndustries2 жыл бұрын
we have a youtube channel that deals with Arduino,ATmega328P,Java,Serial programming ,robotics. So if you like these stuff do Subscribe. Sorry for annoying
@praveenarora45893 жыл бұрын
great job man!! very shortly and precisely you describe everything.....
@rehmankhan-ve9vo4 жыл бұрын
Thanks sir I am lucky that I have found this video. This is the best explanation about digital protocols that I have ever seen. Thanks a lot for this.
@likeitornot68214 жыл бұрын
Thank you bro, you have explained the concept confused me for a longtime in a way that even a beginner can understand
@carlosbah46232 жыл бұрын
The best explanation out there. Btw in the uart explanation . Shouldn't be the data order from rx to TX
@godsdelightjude23822 жыл бұрын
Really nice illustrations, loved the voice over too. Perfect video 📸 🤩
@moinshaikh66844 жыл бұрын
Very very nice explaination with practical! We need such brilliant teacher for the world!
@avinashreddybhavanam5 жыл бұрын
sir continue the videos with other protocols to
@XanthiumIndustries2 жыл бұрын
we have a youtube channel that deals with Arduino,ATmega328P,Java,Serial programming ,robotics. So if you like these stuff do Subscribe. Sorry for annoying
@dmo307411 ай бұрын
This was excellent, exactly what I was looking for. Nice overview.
@raj610914 жыл бұрын
just superb learnt a lot today. very important for a drone guy
@vladimirgrach12352 жыл бұрын
Great video! Short and straight to the point! Thanks!
@surya.62835 жыл бұрын
Please make for other serial communication protocols. I am waiting along with other thousands of people. Your explanation is excellent.
@ilm5elee1975 жыл бұрын
With each new video, quality of content is increasing. This channel is next eevblog.
@WayneRiesterer5 жыл бұрын
Great video! Technically, the I2C bus is half-duplex (not simplex) and the SPI is full-duplex.
@XanthiumIndustries2 жыл бұрын
we have a youtube channel that deals with Arduino,ATmega328P,Java,Serial programming ,robotics. So if you like these stuff do Subscribe. Sorry for annoying
@domestron44225 жыл бұрын
Nice video man You inpired me to start youtube and making videous I love how much work you put on videos You are awesome! I love some day to be one of my subscribers.
@tonysfun5 жыл бұрын
I agree! Well done videos! Mine are unedited and nothing even close to these!
@RoaringMuffin Жыл бұрын
WOW Amazing video and explanation. Bunch of things that have perplexed me for years solved in 12 minutes... JEEZ where were you in university.
@deang56222 жыл бұрын
You can have asynchronous communication with a clock. Look up Manchester bi-phase encoding. Because Manchester encoding works using edge transitions and not signal levels, the data can experience pulse width distortion, the clock is recoverable, and the data can still be recovered from the signal correctly.
@praveenraj295 жыл бұрын
Awesome Video tutorial on Serial Communication with very clear explanation. Kudos Electronoobs!!!
@mortenlund14182 жыл бұрын
I can not give you enough thumbs up. Great video!!!
@topten70645 жыл бұрын
You are great teacher and good voice, thank you very much
@RohitSingh-px7op3 жыл бұрын
Oh my God !!! i am so thankful to you. I mean u did so much effort on one video for explaining each and everything and that too for free❤️❤️❤️❤️❤️❤️u r legend
@mopatibogatsu79414 жыл бұрын
So revealing, I've always been curious about serial communication
@RandomHubbb8 ай бұрын
I do not get why you are pointing to the TX for starting bit. Should not the start bit be already close to the RX side on the illustration you have? I got confused.
@sameerUNO101005 жыл бұрын
You are making grate videos which are very useful for us Keep making such videos: )
@TalkingGIJoe3 жыл бұрын
What is Simplex Transmission Mode? In this mode, we have unidirectional communication- meaning it’s a one-way street. Out of the two connecting devices, only one is capable of transmission- the other one is only capable of receiving. The simplex mode can always utilize a channel’s entire capacity for sending the data in a single direction. For Example - Traditional monitors and keyboards use the Simplex transmission mode. In this case, the monitor can only generate the output, and the keyboard can only introduce an input in the system. What is Half Duplex Transmission Mode? In this mode, every station can both- receive and transmit data- but not at the very same moment. When one of the devices sends information, the other one can only then receive it. It also happens vice versa because the transmission is not unidirectional. The half-duplex mode comes into play in those cases where we don’t need the transmission in both directions at the same moment. For Example - A walkie-talkie uses the Half-Duplex Transmission Mode. Here, we send messages in both directions, but the transmission still occurs in one direction at a time. What is Full Duplex Transmission Mode? In this mode, both the stations have the ability to both receive and transmit data simultaneously. The signals that go in one direction in a Full-Duplex mode share the link’s capacity with the signals that go in the other direction. Such kind of sharing can occur in two alternative ways: The transmission link must have two transmission paths that are physically separate- one of them for receiving and the other one for sending. The link can divide the capacity between the signals that travel in either of the directions. The Full-Duplex communication mode comes into play when one requires a continuous connection in both directions all the time. However, it needs to divide the channel’s capacity between both these directions. For Example - Telephone networks that establish communication between two people via a telephone line use the Full Duplex method. Here, the individuals can listen as well as talk at the very same time.
@93366116803 жыл бұрын
The explanation is very good..pls continue making more videos
@wowtah5 жыл бұрын
Well done, nice explanation. It's worth noticing that I2C is bi directional too. A master can read values from its slave devices.
@SteveH-TN23 күн бұрын
Appreciate you sharing this video and information. It has been very informative, well organized & helpful. Definitely I learned something new 😁
@xnetworkDEVILx5 жыл бұрын
man your topics are just what i need ...just thanks man
@electronic79795 жыл бұрын
Very helpful video 👍
@pnutamechatronix5445 жыл бұрын
Please do more on CAN communication and the others. You are such a great help in education and simplifying such difficult subjects many thanks
@noorulhasanfzn0034 жыл бұрын
Thank you for this video. Best thing about you, is that you keep it very simple yet effective. Please make a video on CAN communication.
@prabhakaranbaskar14004 жыл бұрын
This is how you gain a subscriber.💯
@JasonDrennen4 жыл бұрын
Thank you sir I have been using these protocols for quite a few years now. This video explained it to me better then I've ever understood. I would just hook it up as it said and not realize the difference.
@cyberprodigy3 жыл бұрын
Thanks, this is really the best explanation online.
@meirrose23474 жыл бұрын
In one great video I learned so much about the serial connection I use every day on my arduino. Thank you
@rwlohk4 жыл бұрын
This is also how PLC work,Cool and thanks
@tawalioualao74443 жыл бұрын
Cool and great. I like you explain theses concepts with graphics and animate images. Very simple and easy to understand. From Benin I like your video and want one about CAN. Thanks
@oliviazhai18312 жыл бұрын
thanks so much for the video, is so helpful for my exam ❤
@armincal98343 жыл бұрын
I have seen a thing called "over sampling rate" in the reference manual of stm32 MCUs for UART communication. Apparently it can sample the incoming data 8 or 16 times WHILE it is being transmitted to distinguish between noise and real data