(OSD3358) UART0 is receiving characters when there is nothing connected to it

Forums Devices (OSD3358) UART0 is receiving characters when there is nothing connected to it

Viewing 5 reply threads
  • Author
    Posts
    • #12457
      Jack Knightjakthree
      Participant

        Some sequences of characters are very similar to characters that were recently sent out the UART0 port, some are seeming random and on some occasions it receives a serial BREAK which causes the next character to be treated as a system command character. Unfortunately, if the next character is a ‘b’ then the system will reboot.

        What could be causing the unwanted characters to show up and what can I do to stop it?

        Thank you,

      • #12458
        Aedan Cullen
        Participant

          It may be that the UART0 RX signal is accidentally floating, or something is pulling it to an indeterminate logic state. To check, try connecting a strong pull-up resistor (the relevant power rail is board-dependent of course) and see if the issue still appears.

          It could be helpful to know whether you’re using an off-the-shelf or custom board. (For instance, by “nothing connected”, do you mean there are absolutely no components on the board connected to the RX pin?)

        • #12459
          Jack Knightjakthree
          Participant

            This is a custom board based on the Beagle Bone Black. The BBB has a 6-pin header for console output via connecting a USB to 3.3v TTL cable. UART0_TX and UART0_RX from the OSD3358 are connected to the 6-pin header through a SN74LVC2G241DCUR chip. I can’t find anywhere in the Octavo app notes where the UART0 is used as a console port. The BBB has a 100k ohm resistor connected to pin-2 (B_UARTo_RX) to ground.

            Do you recommend the same?

            Thank you,

          • #12460
            Jack Knightjakthree
            Participant

              I looked at the OSD3358-BAS-SBC-Ref-Design-SCH.pdf and  OSD3358-SM-RED_Platform_sch.pdf. Both have a 100K resistor connecting Sn74LVC2G241 pin-2 (B_UART0_RX) to GND. I tried same on one of my custom board and it seems to have fixed the ‘receiving characters when nothing connected’ problem. I will try same on multiple boards.

              Thank you

               

            • #12461
              Jack Knightjakthree
              Participant

                UART0 pin out in shown on sheet 3/9 the OSD3358-BAS-SBC-Ref-Design-SCH.pdf.

                Where in the OSD335x Reference Design Tutorial Series is the UART0 pin out mentioned?

                Thank you,

              • #12463
                Neeraj Dantu
                Moderator

                  jackthree,

                  The UART0 console is discussed here in the tutorial series: https://octavosystems.com/app_notes/osd335x-design-tutorial/bare-minimum-boot/peripheral-circuitry/. As you can see, there is no pull-down on RX. The pull-down on RX in the reference designs were added to make sure that the RX pin is not floating, which ensures that there is no halt during u-Boot execution, but this is not necessary to do in hardware. You can activate internal pull-up/pull-down in device tree as shown in https://github.com/octavosystems/OSD335x-Device-Tree/blob/master/OSD3358-SM-RED/osd3358-bsm-refdesign.dts#L219. Please check your device tree and try to add pull-up/pull-down configuration there. Note that internal configuration is a weak pull-up/pull-down. If you are still having issues after that, something might be interfering with UART0 comm lines.

                  Best,
                  Neeraj

              Viewing 5 reply threads
              • You must be logged in to reply to this topic.