How many serial ports are on the Pi 3? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Congratulation Joan for 50k!How do I make serial work on the Raspberry Pi3 , Pi3B+, PiZeroWRpi to arduino via USBreading serial from tty, data become corrupted after a certain delayNo communication between GPRS module RaspberryPi Zero serial GPIO portsConnecting through usb-serial driverSerial port works with minicom but not echo and catJessie: How to deal with Python open of /dev/ttyACM0 not sending RST signal like it does with /dev/ttyUSB0Raspberry Pi Zero W with SIM800l not workCan't get serial port working (header pins, Raspberry Pi 1 Model B)Several serial ports with c++

How does TikZ render an arc?

Is there a verb for listening stealthily?

What does 丫 mean? 丫是什么意思?

Why can't fire hurt Daenerys but it did to Jon Snow in season 1?

Is the Mordenkainen's Sword spell underpowered?

Flight departed from the gate 5 min before scheduled departure time. Refund options

How to resize main filesystem

Found this skink in my tomato plant bucket. Is he trapped? Or could he leave if he wanted?

My mentor says to set image to Fine instead of RAW — how is this different from JPG?

"Destructive power" carried by a B-52?

Why do the Z-fighters hide their power?

Do i imagine the linear (straight line) homotopy in a correct way?

How many time has Arya actually used Needle?

Why not use the yoke to control yaw, as well as pitch and roll?

What did Turing mean when saying that "machines cannot give rise to surprises" is due to a fallacy?

Why are two-digit numbers in Jonathan Swift's "Gulliver's Travels" (1726) written in "German style"?

An isoperimetric-type inequality inside a cube

Did John Wesley plagiarize Matthew Henry...?

Are there any irrational/transcendental numbers for which the distribution of decimal digits is not uniform?

What is "Lambda" in Heston's original paper on stochastic volatility models?

Noise in Eigenvalues plot

How to achieve cat-like agility?

Any stored/leased 737s that could substitute for grounded MAXs?

Why are current probes so expensive?



How many serial ports are on the Pi 3?



Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)
Congratulation Joan for 50k!How do I make serial work on the Raspberry Pi3 , Pi3B+, PiZeroWRpi to arduino via USBreading serial from tty, data become corrupted after a certain delayNo communication between GPRS module RaspberryPi Zero serial GPIO portsConnecting through usb-serial driverSerial port works with minicom but not echo and catJessie: How to deal with Python open of /dev/ttyACM0 not sending RST signal like it does with /dev/ttyUSB0Raspberry Pi Zero W with SIM800l not workCan't get serial port working (header pins, Raspberry Pi 1 Model B)Several serial ports with c++



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








4















How many serial ports are on the Pi 3? There is one on the GPIO pin that goes to ttyS0. Is there a separate one for USB? I have read somewhere about /dev/ttyUSB0. Is that a separate serial port?



Place mentioning ttyUSB0:
https://learn.adafruit.com/adafruit-ultimate-gps-on-the-raspberry-pi/setting-everything-up










share|improve this question






























    4















    How many serial ports are on the Pi 3? There is one on the GPIO pin that goes to ttyS0. Is there a separate one for USB? I have read somewhere about /dev/ttyUSB0. Is that a separate serial port?



    Place mentioning ttyUSB0:
    https://learn.adafruit.com/adafruit-ultimate-gps-on-the-raspberry-pi/setting-everything-up










    share|improve this question


























      4












      4








      4








      How many serial ports are on the Pi 3? There is one on the GPIO pin that goes to ttyS0. Is there a separate one for USB? I have read somewhere about /dev/ttyUSB0. Is that a separate serial port?



      Place mentioning ttyUSB0:
      https://learn.adafruit.com/adafruit-ultimate-gps-on-the-raspberry-pi/setting-everything-up










      share|improve this question
















      How many serial ports are on the Pi 3? There is one on the GPIO pin that goes to ttyS0. Is there a separate one for USB? I have read somewhere about /dev/ttyUSB0. Is that a separate serial port?



      Place mentioning ttyUSB0:
      https://learn.adafruit.com/adafruit-ultimate-gps-on-the-raspberry-pi/setting-everything-up







      pi-3 serial






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited 2 days ago









      Aurora0001

      5,39931533




      5,39931533










      asked Apr 19 at 3:10









      bakalolobakalolo

      1709




      1709




















          2 Answers
          2






          active

          oldest

          votes


















          3














          The Pi has 2 serial ports, but only 1 is accessible - the other is connected to Bluetooth. (It is possible to switch ports in Device Tree.)



          See How do I make serial work on the Raspberry Pi3 , Pi3B+, PiZeroW for more detail.



          You can add additional ports with a USB-serial adapter.






          share|improve this answer

























          • Conscise answer (+1) but maybe just clarify that USB-serial adaptors are (depending on the driver etc.etc.) the ttyUSBn mentioned by the OP in the question?

            – Roger Jones
            2 days ago



















          3














          Question



          How many serial ports are on the Rpi3



          Answer



          I have been playing with serial communication this couple of days. I googled and the found the following tutorial useful.



          Raspberry Pi Serial (UART) Tutorial - Roland Pelayo 2018jun22 17,305 Views



          I extracted what the author says below:




          Technically, the Raspberry Pi has two UARTs: PL011 UART and mini UART.
          However, you only have one pair of TXD and RXD pins to work with.



          The PL011 UART is the main UART for models without Bluetooth feature
          and is tied directly to the Linux console output. This means you can
          send Linux commands from your PC to the Raspberry Pi on this UART.



          On the other hand, the mini UART becomes the Linux console UART for
          models with Bluetooth like the Raspberry Pi 3 and Raspberry Pi Zero W.
          For these models, the PL011 UART is tied directly to the Bluetooth
          module.



          Whichever UART is assigned to the Linux console is accessible through
          /dev/serial0. Each UART can be accessed individually via /dev/ttyS0
          for the mini UART and /dev/ttyAMA0 for the PL011 UART.



          Generally, the PL011 UART is more reliable than the mini UART because
          the latter has smaller FIFOs, lacks flow control and has its baud
          rate reliant on the VPU clock speed.




          My experiment results



          I followed Roland Pelayo's instructions and have been doing experiments and found everything works as he suggests.



          I used to use four TXS0104 logical level converters to demux one UART channel into 4. I select one one of the four channels by enabling TXS0104 converter I want. It works smoothly, except you can not use more than one UART channel at the same time.



          I also tried the USB to TTL adapters for Rpi3B+ Raspbian version 2019Apr. I found both PL2302 and CH340 adapters can be detected without first installing drivers.



          In other words, Raspbian version 2019apr already have Pl2303 and CH340 drivers preinstalled.



          I also tried the CP2102 USB to TTL adapters, but many CP2102 modules are sadly not compatible to Win10 and ESP8266-12. I have not tried it on Rpi (see update below).



          rpi3b+ usb ttl driver



          NXP SC16IS750 I2C/SPI to UART Module Not Recommended for Newbies



          SparkFun once sold a NXP I2C/SPI to UART module. I thought it too good to be true to be able to have as many UART channels as I wanted. But then I found the datasheet has some "special features" which are perhaps OK for hackers to deal with, but too hard for newbies to handle. I tried hard for a couple of days before giving up. SparkFun has now discontinued this module for a reason.



          The other modules AdaFruit are recommending are TXS/TXB0108 modules. I have been using TSX/TSB0104s for demultiplexing UART/I2C/SPI channels and found them OK, if not too greedy to entertain too many channels at the same time. Actually I found many I2C modules (including MCP23017) when grouped more than two, become unstable and difficult to troubleshoot. Perhaps I have not learnt all the tricks in fiddling the I2C pull up resistors. Anyway, trying just one is OK for newbies.



          Another thing is that I tested both TSX and TSB versions and found TSB more reliable. I also noticed that AdaFruit only sells TSB now and no loner TSX. This are the puzzles I never solved.



          TSX0104E



          Update 2019apr20hkt1628



          I checked out more than 20 very old USB to TTL adaptors which have been collecting dust for over 10 years. I bought some of them for WinXP and found they no longer working for Win7. I also bouoght some for Win7, and found them no good for Win10. Just now I tried all these old guys for my Rpi3B+ Raspian 2019Apr to see if I had any luck. Surprisingly I found the following:



          Bad = 5 (not sure which driver)
          Good HL340 = 5
          Good PL2302 = 7



          testing usb to ttl adapters



          test usb to ttl



          References



          AdaFruit TXB0108 8-channel Bi-directional Logic Level Converter - $8.00



          TXB0108 Datasheet - TI



          TXS0104E Datasheet - TI



          Amazon SC16IS750 I2C/SPI to UART Module



          SparkFun SC16IS750 I2C/SPI-to-UART Module



          SC16IS750 I2C/SPI to UART Datasheet - NXP



          The 6 Best Arduino GPS Modules - Josh Darling 2019jan






          share|improve this answer

























            Your Answer






            StackExchange.ifUsing("editor", function ()
            return StackExchange.using("schematics", function ()
            StackExchange.schematics.init();
            );
            , "cicuitlab");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "447"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fraspberrypi.stackexchange.com%2fquestions%2f96697%2fhow-many-serial-ports-are-on-the-pi-3%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            3














            The Pi has 2 serial ports, but only 1 is accessible - the other is connected to Bluetooth. (It is possible to switch ports in Device Tree.)



            See How do I make serial work on the Raspberry Pi3 , Pi3B+, PiZeroW for more detail.



            You can add additional ports with a USB-serial adapter.






            share|improve this answer

























            • Conscise answer (+1) but maybe just clarify that USB-serial adaptors are (depending on the driver etc.etc.) the ttyUSBn mentioned by the OP in the question?

              – Roger Jones
              2 days ago
















            3














            The Pi has 2 serial ports, but only 1 is accessible - the other is connected to Bluetooth. (It is possible to switch ports in Device Tree.)



            See How do I make serial work on the Raspberry Pi3 , Pi3B+, PiZeroW for more detail.



            You can add additional ports with a USB-serial adapter.






            share|improve this answer

























            • Conscise answer (+1) but maybe just clarify that USB-serial adaptors are (depending on the driver etc.etc.) the ttyUSBn mentioned by the OP in the question?

              – Roger Jones
              2 days ago














            3












            3








            3







            The Pi has 2 serial ports, but only 1 is accessible - the other is connected to Bluetooth. (It is possible to switch ports in Device Tree.)



            See How do I make serial work on the Raspberry Pi3 , Pi3B+, PiZeroW for more detail.



            You can add additional ports with a USB-serial adapter.






            share|improve this answer















            The Pi has 2 serial ports, but only 1 is accessible - the other is connected to Bluetooth. (It is possible to switch ports in Device Tree.)



            See How do I make serial work on the Raspberry Pi3 , Pi3B+, PiZeroW for more detail.



            You can add additional ports with a USB-serial adapter.







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Apr 19 at 5:18

























            answered Apr 19 at 4:57









            MilliwaysMilliways

            30.9k1357117




            30.9k1357117












            • Conscise answer (+1) but maybe just clarify that USB-serial adaptors are (depending on the driver etc.etc.) the ttyUSBn mentioned by the OP in the question?

              – Roger Jones
              2 days ago


















            • Conscise answer (+1) but maybe just clarify that USB-serial adaptors are (depending on the driver etc.etc.) the ttyUSBn mentioned by the OP in the question?

              – Roger Jones
              2 days ago

















            Conscise answer (+1) but maybe just clarify that USB-serial adaptors are (depending on the driver etc.etc.) the ttyUSBn mentioned by the OP in the question?

            – Roger Jones
            2 days ago






            Conscise answer (+1) but maybe just clarify that USB-serial adaptors are (depending on the driver etc.etc.) the ttyUSBn mentioned by the OP in the question?

            – Roger Jones
            2 days ago














            3














            Question



            How many serial ports are on the Rpi3



            Answer



            I have been playing with serial communication this couple of days. I googled and the found the following tutorial useful.



            Raspberry Pi Serial (UART) Tutorial - Roland Pelayo 2018jun22 17,305 Views



            I extracted what the author says below:




            Technically, the Raspberry Pi has two UARTs: PL011 UART and mini UART.
            However, you only have one pair of TXD and RXD pins to work with.



            The PL011 UART is the main UART for models without Bluetooth feature
            and is tied directly to the Linux console output. This means you can
            send Linux commands from your PC to the Raspberry Pi on this UART.



            On the other hand, the mini UART becomes the Linux console UART for
            models with Bluetooth like the Raspberry Pi 3 and Raspberry Pi Zero W.
            For these models, the PL011 UART is tied directly to the Bluetooth
            module.



            Whichever UART is assigned to the Linux console is accessible through
            /dev/serial0. Each UART can be accessed individually via /dev/ttyS0
            for the mini UART and /dev/ttyAMA0 for the PL011 UART.



            Generally, the PL011 UART is more reliable than the mini UART because
            the latter has smaller FIFOs, lacks flow control and has its baud
            rate reliant on the VPU clock speed.




            My experiment results



            I followed Roland Pelayo's instructions and have been doing experiments and found everything works as he suggests.



            I used to use four TXS0104 logical level converters to demux one UART channel into 4. I select one one of the four channels by enabling TXS0104 converter I want. It works smoothly, except you can not use more than one UART channel at the same time.



            I also tried the USB to TTL adapters for Rpi3B+ Raspbian version 2019Apr. I found both PL2302 and CH340 adapters can be detected without first installing drivers.



            In other words, Raspbian version 2019apr already have Pl2303 and CH340 drivers preinstalled.



            I also tried the CP2102 USB to TTL adapters, but many CP2102 modules are sadly not compatible to Win10 and ESP8266-12. I have not tried it on Rpi (see update below).



            rpi3b+ usb ttl driver



            NXP SC16IS750 I2C/SPI to UART Module Not Recommended for Newbies



            SparkFun once sold a NXP I2C/SPI to UART module. I thought it too good to be true to be able to have as many UART channels as I wanted. But then I found the datasheet has some "special features" which are perhaps OK for hackers to deal with, but too hard for newbies to handle. I tried hard for a couple of days before giving up. SparkFun has now discontinued this module for a reason.



            The other modules AdaFruit are recommending are TXS/TXB0108 modules. I have been using TSX/TSB0104s for demultiplexing UART/I2C/SPI channels and found them OK, if not too greedy to entertain too many channels at the same time. Actually I found many I2C modules (including MCP23017) when grouped more than two, become unstable and difficult to troubleshoot. Perhaps I have not learnt all the tricks in fiddling the I2C pull up resistors. Anyway, trying just one is OK for newbies.



            Another thing is that I tested both TSX and TSB versions and found TSB more reliable. I also noticed that AdaFruit only sells TSB now and no loner TSX. This are the puzzles I never solved.



            TSX0104E



            Update 2019apr20hkt1628



            I checked out more than 20 very old USB to TTL adaptors which have been collecting dust for over 10 years. I bought some of them for WinXP and found they no longer working for Win7. I also bouoght some for Win7, and found them no good for Win10. Just now I tried all these old guys for my Rpi3B+ Raspian 2019Apr to see if I had any luck. Surprisingly I found the following:



            Bad = 5 (not sure which driver)
            Good HL340 = 5
            Good PL2302 = 7



            testing usb to ttl adapters



            test usb to ttl



            References



            AdaFruit TXB0108 8-channel Bi-directional Logic Level Converter - $8.00



            TXB0108 Datasheet - TI



            TXS0104E Datasheet - TI



            Amazon SC16IS750 I2C/SPI to UART Module



            SparkFun SC16IS750 I2C/SPI-to-UART Module



            SC16IS750 I2C/SPI to UART Datasheet - NXP



            The 6 Best Arduino GPS Modules - Josh Darling 2019jan






            share|improve this answer





























              3














              Question



              How many serial ports are on the Rpi3



              Answer



              I have been playing with serial communication this couple of days. I googled and the found the following tutorial useful.



              Raspberry Pi Serial (UART) Tutorial - Roland Pelayo 2018jun22 17,305 Views



              I extracted what the author says below:




              Technically, the Raspberry Pi has two UARTs: PL011 UART and mini UART.
              However, you only have one pair of TXD and RXD pins to work with.



              The PL011 UART is the main UART for models without Bluetooth feature
              and is tied directly to the Linux console output. This means you can
              send Linux commands from your PC to the Raspberry Pi on this UART.



              On the other hand, the mini UART becomes the Linux console UART for
              models with Bluetooth like the Raspberry Pi 3 and Raspberry Pi Zero W.
              For these models, the PL011 UART is tied directly to the Bluetooth
              module.



              Whichever UART is assigned to the Linux console is accessible through
              /dev/serial0. Each UART can be accessed individually via /dev/ttyS0
              for the mini UART and /dev/ttyAMA0 for the PL011 UART.



              Generally, the PL011 UART is more reliable than the mini UART because
              the latter has smaller FIFOs, lacks flow control and has its baud
              rate reliant on the VPU clock speed.




              My experiment results



              I followed Roland Pelayo's instructions and have been doing experiments and found everything works as he suggests.



              I used to use four TXS0104 logical level converters to demux one UART channel into 4. I select one one of the four channels by enabling TXS0104 converter I want. It works smoothly, except you can not use more than one UART channel at the same time.



              I also tried the USB to TTL adapters for Rpi3B+ Raspbian version 2019Apr. I found both PL2302 and CH340 adapters can be detected without first installing drivers.



              In other words, Raspbian version 2019apr already have Pl2303 and CH340 drivers preinstalled.



              I also tried the CP2102 USB to TTL adapters, but many CP2102 modules are sadly not compatible to Win10 and ESP8266-12. I have not tried it on Rpi (see update below).



              rpi3b+ usb ttl driver



              NXP SC16IS750 I2C/SPI to UART Module Not Recommended for Newbies



              SparkFun once sold a NXP I2C/SPI to UART module. I thought it too good to be true to be able to have as many UART channels as I wanted. But then I found the datasheet has some "special features" which are perhaps OK for hackers to deal with, but too hard for newbies to handle. I tried hard for a couple of days before giving up. SparkFun has now discontinued this module for a reason.



              The other modules AdaFruit are recommending are TXS/TXB0108 modules. I have been using TSX/TSB0104s for demultiplexing UART/I2C/SPI channels and found them OK, if not too greedy to entertain too many channels at the same time. Actually I found many I2C modules (including MCP23017) when grouped more than two, become unstable and difficult to troubleshoot. Perhaps I have not learnt all the tricks in fiddling the I2C pull up resistors. Anyway, trying just one is OK for newbies.



              Another thing is that I tested both TSX and TSB versions and found TSB more reliable. I also noticed that AdaFruit only sells TSB now and no loner TSX. This are the puzzles I never solved.



              TSX0104E



              Update 2019apr20hkt1628



              I checked out more than 20 very old USB to TTL adaptors which have been collecting dust for over 10 years. I bought some of them for WinXP and found they no longer working for Win7. I also bouoght some for Win7, and found them no good for Win10. Just now I tried all these old guys for my Rpi3B+ Raspian 2019Apr to see if I had any luck. Surprisingly I found the following:



              Bad = 5 (not sure which driver)
              Good HL340 = 5
              Good PL2302 = 7



              testing usb to ttl adapters



              test usb to ttl



              References



              AdaFruit TXB0108 8-channel Bi-directional Logic Level Converter - $8.00



              TXB0108 Datasheet - TI



              TXS0104E Datasheet - TI



              Amazon SC16IS750 I2C/SPI to UART Module



              SparkFun SC16IS750 I2C/SPI-to-UART Module



              SC16IS750 I2C/SPI to UART Datasheet - NXP



              The 6 Best Arduino GPS Modules - Josh Darling 2019jan






              share|improve this answer



























                3












                3








                3







                Question



                How many serial ports are on the Rpi3



                Answer



                I have been playing with serial communication this couple of days. I googled and the found the following tutorial useful.



                Raspberry Pi Serial (UART) Tutorial - Roland Pelayo 2018jun22 17,305 Views



                I extracted what the author says below:




                Technically, the Raspberry Pi has two UARTs: PL011 UART and mini UART.
                However, you only have one pair of TXD and RXD pins to work with.



                The PL011 UART is the main UART for models without Bluetooth feature
                and is tied directly to the Linux console output. This means you can
                send Linux commands from your PC to the Raspberry Pi on this UART.



                On the other hand, the mini UART becomes the Linux console UART for
                models with Bluetooth like the Raspberry Pi 3 and Raspberry Pi Zero W.
                For these models, the PL011 UART is tied directly to the Bluetooth
                module.



                Whichever UART is assigned to the Linux console is accessible through
                /dev/serial0. Each UART can be accessed individually via /dev/ttyS0
                for the mini UART and /dev/ttyAMA0 for the PL011 UART.



                Generally, the PL011 UART is more reliable than the mini UART because
                the latter has smaller FIFOs, lacks flow control and has its baud
                rate reliant on the VPU clock speed.




                My experiment results



                I followed Roland Pelayo's instructions and have been doing experiments and found everything works as he suggests.



                I used to use four TXS0104 logical level converters to demux one UART channel into 4. I select one one of the four channels by enabling TXS0104 converter I want. It works smoothly, except you can not use more than one UART channel at the same time.



                I also tried the USB to TTL adapters for Rpi3B+ Raspbian version 2019Apr. I found both PL2302 and CH340 adapters can be detected without first installing drivers.



                In other words, Raspbian version 2019apr already have Pl2303 and CH340 drivers preinstalled.



                I also tried the CP2102 USB to TTL adapters, but many CP2102 modules are sadly not compatible to Win10 and ESP8266-12. I have not tried it on Rpi (see update below).



                rpi3b+ usb ttl driver



                NXP SC16IS750 I2C/SPI to UART Module Not Recommended for Newbies



                SparkFun once sold a NXP I2C/SPI to UART module. I thought it too good to be true to be able to have as many UART channels as I wanted. But then I found the datasheet has some "special features" which are perhaps OK for hackers to deal with, but too hard for newbies to handle. I tried hard for a couple of days before giving up. SparkFun has now discontinued this module for a reason.



                The other modules AdaFruit are recommending are TXS/TXB0108 modules. I have been using TSX/TSB0104s for demultiplexing UART/I2C/SPI channels and found them OK, if not too greedy to entertain too many channels at the same time. Actually I found many I2C modules (including MCP23017) when grouped more than two, become unstable and difficult to troubleshoot. Perhaps I have not learnt all the tricks in fiddling the I2C pull up resistors. Anyway, trying just one is OK for newbies.



                Another thing is that I tested both TSX and TSB versions and found TSB more reliable. I also noticed that AdaFruit only sells TSB now and no loner TSX. This are the puzzles I never solved.



                TSX0104E



                Update 2019apr20hkt1628



                I checked out more than 20 very old USB to TTL adaptors which have been collecting dust for over 10 years. I bought some of them for WinXP and found they no longer working for Win7. I also bouoght some for Win7, and found them no good for Win10. Just now I tried all these old guys for my Rpi3B+ Raspian 2019Apr to see if I had any luck. Surprisingly I found the following:



                Bad = 5 (not sure which driver)
                Good HL340 = 5
                Good PL2302 = 7



                testing usb to ttl adapters



                test usb to ttl



                References



                AdaFruit TXB0108 8-channel Bi-directional Logic Level Converter - $8.00



                TXB0108 Datasheet - TI



                TXS0104E Datasheet - TI



                Amazon SC16IS750 I2C/SPI to UART Module



                SparkFun SC16IS750 I2C/SPI-to-UART Module



                SC16IS750 I2C/SPI to UART Datasheet - NXP



                The 6 Best Arduino GPS Modules - Josh Darling 2019jan






                share|improve this answer















                Question



                How many serial ports are on the Rpi3



                Answer



                I have been playing with serial communication this couple of days. I googled and the found the following tutorial useful.



                Raspberry Pi Serial (UART) Tutorial - Roland Pelayo 2018jun22 17,305 Views



                I extracted what the author says below:




                Technically, the Raspberry Pi has two UARTs: PL011 UART and mini UART.
                However, you only have one pair of TXD and RXD pins to work with.



                The PL011 UART is the main UART for models without Bluetooth feature
                and is tied directly to the Linux console output. This means you can
                send Linux commands from your PC to the Raspberry Pi on this UART.



                On the other hand, the mini UART becomes the Linux console UART for
                models with Bluetooth like the Raspberry Pi 3 and Raspberry Pi Zero W.
                For these models, the PL011 UART is tied directly to the Bluetooth
                module.



                Whichever UART is assigned to the Linux console is accessible through
                /dev/serial0. Each UART can be accessed individually via /dev/ttyS0
                for the mini UART and /dev/ttyAMA0 for the PL011 UART.



                Generally, the PL011 UART is more reliable than the mini UART because
                the latter has smaller FIFOs, lacks flow control and has its baud
                rate reliant on the VPU clock speed.




                My experiment results



                I followed Roland Pelayo's instructions and have been doing experiments and found everything works as he suggests.



                I used to use four TXS0104 logical level converters to demux one UART channel into 4. I select one one of the four channels by enabling TXS0104 converter I want. It works smoothly, except you can not use more than one UART channel at the same time.



                I also tried the USB to TTL adapters for Rpi3B+ Raspbian version 2019Apr. I found both PL2302 and CH340 adapters can be detected without first installing drivers.



                In other words, Raspbian version 2019apr already have Pl2303 and CH340 drivers preinstalled.



                I also tried the CP2102 USB to TTL adapters, but many CP2102 modules are sadly not compatible to Win10 and ESP8266-12. I have not tried it on Rpi (see update below).



                rpi3b+ usb ttl driver



                NXP SC16IS750 I2C/SPI to UART Module Not Recommended for Newbies



                SparkFun once sold a NXP I2C/SPI to UART module. I thought it too good to be true to be able to have as many UART channels as I wanted. But then I found the datasheet has some "special features" which are perhaps OK for hackers to deal with, but too hard for newbies to handle. I tried hard for a couple of days before giving up. SparkFun has now discontinued this module for a reason.



                The other modules AdaFruit are recommending are TXS/TXB0108 modules. I have been using TSX/TSB0104s for demultiplexing UART/I2C/SPI channels and found them OK, if not too greedy to entertain too many channels at the same time. Actually I found many I2C modules (including MCP23017) when grouped more than two, become unstable and difficult to troubleshoot. Perhaps I have not learnt all the tricks in fiddling the I2C pull up resistors. Anyway, trying just one is OK for newbies.



                Another thing is that I tested both TSX and TSB versions and found TSB more reliable. I also noticed that AdaFruit only sells TSB now and no loner TSX. This are the puzzles I never solved.



                TSX0104E



                Update 2019apr20hkt1628



                I checked out more than 20 very old USB to TTL adaptors which have been collecting dust for over 10 years. I bought some of them for WinXP and found they no longer working for Win7. I also bouoght some for Win7, and found them no good for Win10. Just now I tried all these old guys for my Rpi3B+ Raspian 2019Apr to see if I had any luck. Surprisingly I found the following:



                Bad = 5 (not sure which driver)
                Good HL340 = 5
                Good PL2302 = 7



                testing usb to ttl adapters



                test usb to ttl



                References



                AdaFruit TXB0108 8-channel Bi-directional Logic Level Converter - $8.00



                TXB0108 Datasheet - TI



                TXS0104E Datasheet - TI



                Amazon SC16IS750 I2C/SPI to UART Module



                SparkFun SC16IS750 I2C/SPI-to-UART Module



                SC16IS750 I2C/SPI to UART Datasheet - NXP



                The 6 Best Arduino GPS Modules - Josh Darling 2019jan







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited yesterday

























                answered Apr 19 at 4:13









                tlfong01tlfong01

                842312




                842312



























                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Raspberry Pi Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fraspberrypi.stackexchange.com%2fquestions%2f96697%2fhow-many-serial-ports-are-on-the-pi-3%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Category:9 (number) SubcategoriesMedia in category "9 (number)"Navigation menuUpload mediaGND ID: 4485639-8Library of Congress authority ID: sh85091979ReasonatorScholiaStatistics

                    Circuit construction for execution of conditional statements using least significant bitHow are two different registers being used as “control”?How exactly is the stated composite state of the two registers being produced using the $R_zz$ controlled rotations?Efficiently performing controlled rotations in HHLWould this quantum algorithm implementation work?How to prepare a superposed states of odd integers from $1$ to $sqrtN$?Why is this implementation of the order finding algorithm not working?Circuit construction for Hamiltonian simulationHow can I invert the least significant bit of a certain term of a superposed state?Implementing an oracleImplementing a controlled sum operation

                    Magento 2 “No Payment Methods” in Admin New OrderHow to integrate Paypal Express Checkout with the Magento APIMagento 1.5 - Sales > Order > edit order and shipping methods disappearAuto Invoice Check/Money Order Payment methodAdd more simple payment methods?Shipping methods not showingWhat should I do to change payment methods if changing the configuration has no effects?1.9 - No Payment Methods showing upMy Payment Methods not Showing for downloadable/virtual product when checkout?Magento2 API to access internal payment methodHow to call an existing payment methods in the registration form?