Arduino Fiber Optics | Transmitting Numbers Using Light?

Поделиться
HTML-код
  • Опубликовано: 8 фев 2025
  • In this video we transmit numbers from one Arduino Uno to another Arduino Uno using light. No wires run between the two micro controllers, just a clear rod for light to pass through.
    Code for Transmitter Arduino: pastebin.com/t...
    Code for Receiver Arduino: pastebin.com/r...
    Unfortunately I don’t have a circuit diagram for this design.
    Arduino Uno - amzn.to/4dhEyAi
    16x2 LCD - amzn.to/4dglYJ0
    Photo-resistor - amzn.to/3WjrFQr
    5k Potentiometers - amzn.to/49WQsg3
    In reference to 4:30 - While electricity does travel slightly slower than the speed of light, practically this doesn't make much of a difference. The main advantages of using fiber optics come from their higher switching frequency making them more suitable for high bandwidth applications.
    Icosmophedron helped me code the transmission protocol for this video, you can find his itch.io page here: icosmophedron....
    He creates all sorts of cool games and I suggest you check them out.
    Music by The Arcadium: "Cineminate - New Beginning"

Комментарии • 91

  • @pkart8451
    @pkart8451 3 года назад +5

    Code?

    • @CarbonCoil
      @CarbonCoil  3 года назад +8

      For anyone who wants a copy of the code used in this video, there are PasteBin links in the description :)

    • @suryashanmugam2969
      @suryashanmugam2969 Год назад

      ​@@CarbonCoilconnection ckt

    • @GreenGino
      @GreenGino 3 месяца назад

      Binary code

  • @nikhilbarapatre2750
    @nikhilbarapatre2750 3 года назад +6

    that's really cool...a great way to understand how fiber optics communication works...keep it up man

  • @yelectric1893
    @yelectric1893 3 года назад +2

    I would suggest using a phototransistor as they have faster response rates than photoresistors. However, this is a great demonstrator and it works outstandingly. Great job!

    • @CarbonCoil
      @CarbonCoil  3 года назад +1

      Version 2.0 might be coming soon and thats one of the upgrades I would make for faster transfer time, thanks!

  • @gajendraray1618
    @gajendraray1618 Год назад

    that's is really cool and gives the understanding of how data is transmitted thank you for sharing this wonderful videos...

  • @krishnajasuresh3209
    @krishnajasuresh3209 Год назад +1

    I was not clear on how bits can be transmitted as lights.Thanks for making thus video.

    • @CarbonCoil
      @CarbonCoil  Год назад

      You’re welcome! Thanks for watching :)

  • @pkart8451
    @pkart8451 3 года назад +1

    After 2 day search on vedio I found such a great vedio

  • @icosmohedron
    @icosmohedron 4 года назад +1

    Now I need to make one that can transmit words. Most convoluted way to talk to people ever

    • @CarbonCoil
      @CarbonCoil  4 года назад +1

      Might be an idea for a future video!

    • @FieryCoal
      @FieryCoal 4 года назад +1

      Maybe binary? It’ll be a pretty long time before you get the message though

  • @cristianmejia4526
    @cristianmejia4526 3 года назад +3

    It has the potential to resolve the I2C distance problem and touch keyboard interference problem. In fact, I think that this is the solution. I would like to test it someday.

  • @FenrirTheMenace
    @FenrirTheMenace Год назад +1

    It's worth pointing out the light does not travel faster than electricity, but rather electrical signals degrade faster over lengths of wire, meaning repeaters will be necessary sooner, adding latency and distortion to the signal.

    • @CarbonCoil
      @CarbonCoil  Год назад

      This is somewhat true. While electricity does travel slightly slower than the speed of light, practically this doesn't make much of a difference. The main advantages of using fiber optics come from their higher switching frequency making them more suitable for high bandwidth applications.

    • @FenrirTheMenace
      @FenrirTheMenace Год назад

      @@CarbonCoil I don't follow. How can light have a higher switching frequency?

    • @CarbonCoil
      @CarbonCoil  Год назад +1

      @@FenrirTheMenace Essentially when you run a signal through a copper wire or a fiber optic cable, as you increase the transmission frequency, the signal degrades more in the copper wire than it does in the fiber optic cable (because of interference, reflections, etc.)
      The actual physics explanation behind this is a pretty deep topic, but the important takeaway is that fiber optic cables can carry much higher frequency ranges without distortion, and a higher frequency range means higher bandwidth (or the amount of data that can be transmitted over a certain time period) - Paraphrased from Prof. Robert Malaney, University of New South Wales

  • @chanisiaadhelia3428
    @chanisiaadhelia3428 4 месяца назад

    This is work & helping me, thank you so muchhh ☆

    • @CarbonCoil
      @CarbonCoil  4 месяца назад

      I'm glad to hear it!

  • @emreceylan9979
    @emreceylan9979 4 месяца назад

    You are a hero

  • @RoudraHasan
    @RoudraHasan 24 дня назад

    im just a 13 year old kid and it took me 1 day to figure out the circuit diagram

  • @surenbono6063
    @surenbono6063 Год назад

    .. impressive work ... someday we will have a Optical Serial Bus instead of USB flash drive... with 2 copper+ 2 optics wire and a photo detector in each OSB to manage & store data like a typical flash drive... reduces systems copper resistance heat and speed...mybe motherboard can be designed to handle photons as well to transfer data between drive to RAM..

  • @harrypineda895
    @harrypineda895 4 года назад

    Cool video, I learned a lot of interesting things

  • @NoOne-ei5hs
    @NoOne-ei5hs 2 года назад

    Very nice video!

  • @thetrailoutthere
    @thetrailoutthere 3 года назад +1

    That song @3:47 where he's making more circuits... like a group of people actually got together and said "let's record this!"

  • @heetsheth2063
    @heetsheth2063 2 года назад +1

    Sir, I have mail you can you please provide the code?

  • @faridabekk-uv2zx
    @faridabekk-uv2zx 2 месяца назад

    ما هي الاجهزة المستخدمة في هذا المشروع

  • @Kai-dk7cx
    @Kai-dk7cx 4 года назад

    Very cool!

  • @aniketdesai9386
    @aniketdesai9386 26 дней назад

    Circuit diagram please

  • @DBXLabs
    @DBXLabs 4 года назад

    Sounds like you need some laser diodes

  • @AhmedAshraf-zy9gg
    @AhmedAshraf-zy9gg 3 месяца назад

    Componnet ?

  • @HadjerElHamlili
    @HadjerElHamlili 8 месяцев назад

    i have question sir : how to connect SFP module with arduino?

    • @CarbonCoil
      @CarbonCoil  8 месяцев назад

      Hi, I'm not sure what you mean by SFP module?

    • @HadjerElHamlili
      @HadjerElHamlili 8 месяцев назад

      @@CarbonCoil i don't know how to explain it to you!!!

    • @CarbonCoil
      @CarbonCoil  8 месяцев назад

      @@HadjerElHamlili Could you reference a timestamp in the video?

  • @SoumodipNayek-b7b
    @SoumodipNayek-b7b 3 месяца назад

    Please send me your video circuit diagram.

  • @yametekudasaisensei539
    @yametekudasaisensei539 Год назад

    i love ur project, did u test increase the frecuency of data transmision?

    • @CarbonCoil
      @CarbonCoil  Год назад

      I have not tested this yet. The photo-resistor sensor I used is pretty slow to react to changes in light, therefore I would choose a different and more reactive sensor before increasing the frequency.

  • @webdevil6354
    @webdevil6354 Год назад

    How does it detect multiple zeros? Like 0000? What does it sensing ?

    • @CarbonCoil
      @CarbonCoil  Год назад +3

      Multiple zeros are represented by multiple time slots where there is no light. The transmission sequence begins with a starting signal that syncs both Arduino's and tells the receiver that data is going to be sent. Then the Transmitter sends data (the LED being on or off) in each time slot during the transmission representing a 1 or 0. To represent multiple zeros, the transmission Arduino would just send the starting sequence and then turn the LED off for a length of time in accordance with how many zeros there are.

    • @webdevil6354
      @webdevil6354 Год назад

      @@CarbonCoil thank you very much for a clear answer

  • @troyhayder6986
    @troyhayder6986 Год назад

    You could easily transmit data with binary...on or off...detecting the information might be a problem...because you have to detect at the speed of light...unless you use x amount of intervals...unless you use phosphorus...like in a crt display...that can detect light...I'll leave it to your imagination...

  • @4azorblade
    @4azorblade 2 года назад

    Can we use optical fibre instead of glass rod

  • @LyLeap
    @LyLeap 3 года назад

    By the way , why dont u use a laser diode module like Ky-008, and can u make the code faster?, I wanted to make a laser tag game but just couldn't the life of me thing of how to send data via light.
    Thank anyway u thought me alot

    • @CarbonCoil
      @CarbonCoil  3 года назад +1

      I could have used a laser diode but I didn't since this was just a test setup. The main bottleneck was actually the sensor. The Photoresistor sensor is quite slow and other sensors would ideally work better.

    • @LyLeap
      @LyLeap 3 года назад

      @@CarbonCoil ah i understand now, well thank for the reply

  • @priyaop5040
    @priyaop5040 3 года назад

    How fast can it go?
    And the ways to make the process more faster?

    • @CarbonCoil
      @CarbonCoil  3 года назад

      It's very slow due to the slow response of the photoresistor and my poor programming. This transmission could be sped up by using a photodiode instead of a photoresistor or some other faster-acting sensor, and then decreasing delays in the code.

  • @PlcProgram-all
    @PlcProgram-all 4 года назад +1

    Can you send me its circuit diagram and its program.
    Please

    • @CarbonCoil
      @CarbonCoil  3 года назад +1

      For anyone who wants the code used in this video, please email carboncoilbusiness@gmail.com
      I will send an email back to you that includes the code used in this video.

    • @francescocaramanna6096
      @francescocaramanna6096 3 года назад

      @@CarbonCoil i send you a email to...i very need this program /circuit !

    • @suhailkhan8690
      @suhailkhan8690 2 года назад

      Hey I too need circuit and code used

  • @I_ssues
    @I_ssues 3 года назад

    Can I use such a setup to prove that we can transmit the laser in fiberoptics freely in space?

    • @CarbonCoil
      @CarbonCoil  3 года назад +1

      You should be able to do this if you use a laser, yes.

    • @chrispusgithaiga383
      @chrispusgithaiga383 3 года назад

      @@CarbonCoil thanks. sending you an email rightaway so that you can send me the code used.

  • @emreceylan9979
    @emreceylan9979 4 месяца назад

    what kind of hero are you?

  • @Marto-w3q
    @Marto-w3q Год назад

    Isn't the speed of light and electricity the same?!?

    • @CarbonCoil
      @CarbonCoil  Год назад

      Electricity does travel slightly slower than the speed of light, but practically speaking this doesn't make much of a difference. The main advantages of using fiber optics come from their higher switching frequency making them more suitable for high bandwidth applications.

  • @satish5637
    @satish5637 2 года назад

    Great sir
    I want circuit and component details
    Please sir

  • @caz6925
    @caz6925 3 года назад

    can we use a single arduino???

    • @CarbonCoil
      @CarbonCoil  3 года назад +1

      Technically you could do this, but then there wouldn't really be a point in transmitting the data at all. One Arduino is the transmitter and one is the receiver.

  • @Axellse
    @Axellse Год назад

    Another way of transferring the data would be to have a laser instead of the rod

    • @CarbonCoil
      @CarbonCoil  Год назад

      Yes, another great idea for a bench-top test setup!

  • @PRANAVTECHGURU
    @PRANAVTECHGURU Год назад

    @CarbonCoil connection ckt please

  • @riko6962
    @riko6962 3 года назад

    can you transfer 1 gb video or other data and share the result

    • @CarbonCoil
      @CarbonCoil  3 года назад

      Probably not, the protocol is very slow and was written to only transfer a single number at a time. However, I might revisit this project at some point and make some improvements.

  • @pkart8451
    @pkart8451 3 года назад

    Can I send alphabet by using this Method?

    • @CarbonCoil
      @CarbonCoil  3 года назад

      Probably yes, although I haven't tried it or written code for it.

  • @ltgamer9068
    @ltgamer9068 2 года назад +1

    @carbon coil
    This is so interesting
    I have mailed you , can you send the code and design , for studying.

  • @eZy4k.
    @eZy4k. Год назад

    Using lasers may be more efficient

  • @kavindawanshanath3958
    @kavindawanshanath3958 Год назад

    diagrem ?

    • @CarbonCoil
      @CarbonCoil  Год назад

      LCD wiring: www.arduino.cc/en/Tutorial/LibraryExamples/HelloWorld

  • @anuratan5646
    @anuratan5646 Год назад

    Unable to find code

    • @CarbonCoil
      @CarbonCoil  Год назад

      I have linked a PasteBin in the description of the video with the code

  • @sansnicyt14
    @sansnicyt14 3 года назад

    bro please show the code

  • @loco6378
    @loco6378 3 года назад +1

    hello dear
    can you please make an elaborative video on the same with all material links and code in the description
    it means a lot to me
    thanks

  • @davidsvarrer8942
    @davidsvarrer8942 2 года назад

    Stoooop the music. Not necessary. Remember that. No music. Nooooo music. It is disturbing. ANd... Your show is great!

  • @indrarider5506
    @indrarider5506 2 года назад +1

    I sent a mail..

  • @kristinbezick3754
    @kristinbezick3754 4 года назад

    I don’t understand please explain in kindergarten terms

    • @CarbonCoil
      @CarbonCoil  4 года назад +2

      The number on the left screen changes as the knob is turned. When the button is clicked, the small computer turns the number into binary, and sends it over the acrylic tube as light. (Think of this transmission like using morse code, sending messages from place to place by flashing a light on/off in different patterns). The Arduino on the other side turns this binary (The light pulses) back into a number and displays it on the screen.

  • @ZEZART
    @ZEZART 2 года назад

    Code?

  • @danieleduardogalvez44
    @danieleduardogalvez44 2 года назад

    I sent a mail..