USB C PD fast power role swapLength restrictions on USB 3 cables with USB 2 powered devicesHow can USB...

Book about a time-travel war fought by computers

What is better: yes / no radio, or simple checkbox?

Is divide-by-zero a security vulnerability?

PTIJ: Is all laundering forbidden during the 9 days?

Why is it "take a leak?"

GPL code private and stolen

3.5% Interest Student Loan or use all of my savings on Tuition?

Why are special aircraft used for the carriers in the United States Navy?

Make me a metasequence

How can neutral atoms have exactly zero electric field when there is a difference in the positions of the charges?

Why doesn't "adolescent" take any articles in "listen to adolescent agonising"?

What is brightness?

Ahoy, Ye Traveler!

The need of reserving one's ability in job interviews

Why would the IRS ask for birth certificates or even audit a small tax return?

PTIJ: Mordechai mourning

How to set path in STY file as relative to this file path

Difference between 'stomach' and 'uterus'

What is a term for a function that when called repeatedly, has the same effect as calling once?

Why won't the strings command stop?

Why do phishing e-mails use faked e-mail addresses instead of the real one?

Has Wakanda ever accepted refugees?

Levi-Civita symbol: 3D matrix

Should I use HTTPS on a domain that will only be used for redirection?



USB C PD fast power role swap


Length restrictions on USB 3 cables with USB 2 powered devicesHow can USB multiport HUBs extract enough power?What does the USB non-removable strap option actually change?Wiring of USB 2.0 hub using a USB-C connectorAre USB 2.0 hubs required to disable downstream VBUS when upstream VBUS is removedUSB Link state is dissconnected while exiting from deepsleepUSB-C UFP and DFP Not Working Properly with ONLY Samsung Mobile PhonesExtend USB ports on a smart phoneUSB-C / USB 3.0 alternate mode as low speed serial portAm I exceeding current limits for the USB port?













3












$begingroup$


I'm currently designing a device, which consists of a STM32 microcontroller with USB 2.0 support, USB 2.0 hub and few dimmable leds.



STM is connected to the hub, along with few other devices. Hub is then connected to a smartphone via a USB-C connector.
The device has two modes of operation:




  • When connected to external power source it has to operate as upstream facing device (UFP, USB hub is connected to smartphone), and power SOURCE.


  • When external power is disconnected, it should switch to power SINK, while maintaining it's data role (UFP, all devices still connected to hub should be visible to smartphone).
    The device has a microcontroller, which can send power role swap to the smartphone.



I'm not sure if I'm understanding the standard correctly, but:
STUSB1600A is only a controller, without Fast Role Swap
while TPS65987D I think is an overkill for the task (or maybe I'm wrong?)
Could You please advise some sensible solution?










share|improve this question









$endgroup$

















    3












    $begingroup$


    I'm currently designing a device, which consists of a STM32 microcontroller with USB 2.0 support, USB 2.0 hub and few dimmable leds.



    STM is connected to the hub, along with few other devices. Hub is then connected to a smartphone via a USB-C connector.
    The device has two modes of operation:




    • When connected to external power source it has to operate as upstream facing device (UFP, USB hub is connected to smartphone), and power SOURCE.


    • When external power is disconnected, it should switch to power SINK, while maintaining it's data role (UFP, all devices still connected to hub should be visible to smartphone).
      The device has a microcontroller, which can send power role swap to the smartphone.



    I'm not sure if I'm understanding the standard correctly, but:
    STUSB1600A is only a controller, without Fast Role Swap
    while TPS65987D I think is an overkill for the task (or maybe I'm wrong?)
    Could You please advise some sensible solution?










    share|improve this question









    $endgroup$















      3












      3








      3





      $begingroup$


      I'm currently designing a device, which consists of a STM32 microcontroller with USB 2.0 support, USB 2.0 hub and few dimmable leds.



      STM is connected to the hub, along with few other devices. Hub is then connected to a smartphone via a USB-C connector.
      The device has two modes of operation:




      • When connected to external power source it has to operate as upstream facing device (UFP, USB hub is connected to smartphone), and power SOURCE.


      • When external power is disconnected, it should switch to power SINK, while maintaining it's data role (UFP, all devices still connected to hub should be visible to smartphone).
        The device has a microcontroller, which can send power role swap to the smartphone.



      I'm not sure if I'm understanding the standard correctly, but:
      STUSB1600A is only a controller, without Fast Role Swap
      while TPS65987D I think is an overkill for the task (or maybe I'm wrong?)
      Could You please advise some sensible solution?










      share|improve this question









      $endgroup$




      I'm currently designing a device, which consists of a STM32 microcontroller with USB 2.0 support, USB 2.0 hub and few dimmable leds.



      STM is connected to the hub, along with few other devices. Hub is then connected to a smartphone via a USB-C connector.
      The device has two modes of operation:




      • When connected to external power source it has to operate as upstream facing device (UFP, USB hub is connected to smartphone), and power SOURCE.


      • When external power is disconnected, it should switch to power SINK, while maintaining it's data role (UFP, all devices still connected to hub should be visible to smartphone).
        The device has a microcontroller, which can send power role swap to the smartphone.



      I'm not sure if I'm understanding the standard correctly, but:
      STUSB1600A is only a controller, without Fast Role Swap
      while TPS65987D I think is an overkill for the task (or maybe I'm wrong?)
      Could You please advise some sensible solution?







      usb usb-device usb-c power-delivery






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked yesterday









      Mateusz KowalikMateusz Kowalik

      161




      161






















          1 Answer
          1






          active

          oldest

          votes


















          4












          $begingroup$

          The STUSB1600A is only a controller that follows now obsolete management of power roles using pull-up/pull-down combinations on CC lines. It doesn't have any PD capabilities. It is very unlikely that it will ever work for your purpose.



          The TPS65987D, however, is a PD controller, which can exchange PD serial communication over CC channels. The thing is that by recent PD specifications the only legal way to change power role of a port is using PD communication, so called "Structured VDM", Vendor Defined Messages. By default, power role of a port is in strict relation with data role: UFP is a sink, and DFP is a source. To swap power roles without swapping data roles you need to engage both ends of the Type-C link in PD negotiations.



          The thing is that TPS65987 chip is essentially a PD PHY, it can mostly receive and transmit PD messages. The content and interpretation of these messages must be crafted in firmware of some other MCU via I2C ports, although it does look like the TPS65987 has some local messaging capabilities which must be programmed in.



          Also be aware that having Type-C connector doesn't automatically imply that the device supports all these fancy PD and power-swap modes, so your target "a smartphone" may not be designed for up to date PD protocol, so expect that the power-up "accessory mode" won't work with all "a smartphones".



          All can I say, "good luck".






          share|improve this answer









          $endgroup$













          • $begingroup$
            Considering problem size, it's possible, to change functionality, so the device is always a SOURCE, while being UFP. I thought that try.SRC might be a solution, but I can't make it work on STUST1600A eval.
            $endgroup$
            – Mateusz Kowalik
            22 hours ago











          Your Answer





          StackExchange.ifUsing("editor", function () {
          return StackExchange.using("mathjaxEditing", function () {
          StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
          StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["\$", "\$"]]);
          });
          });
          }, "mathjax-editing");

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

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "135"
          };
          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%2felectronics.stackexchange.com%2fquestions%2f425832%2fusb-c-pd-fast-power-role-swap%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          4












          $begingroup$

          The STUSB1600A is only a controller that follows now obsolete management of power roles using pull-up/pull-down combinations on CC lines. It doesn't have any PD capabilities. It is very unlikely that it will ever work for your purpose.



          The TPS65987D, however, is a PD controller, which can exchange PD serial communication over CC channels. The thing is that by recent PD specifications the only legal way to change power role of a port is using PD communication, so called "Structured VDM", Vendor Defined Messages. By default, power role of a port is in strict relation with data role: UFP is a sink, and DFP is a source. To swap power roles without swapping data roles you need to engage both ends of the Type-C link in PD negotiations.



          The thing is that TPS65987 chip is essentially a PD PHY, it can mostly receive and transmit PD messages. The content and interpretation of these messages must be crafted in firmware of some other MCU via I2C ports, although it does look like the TPS65987 has some local messaging capabilities which must be programmed in.



          Also be aware that having Type-C connector doesn't automatically imply that the device supports all these fancy PD and power-swap modes, so your target "a smartphone" may not be designed for up to date PD protocol, so expect that the power-up "accessory mode" won't work with all "a smartphones".



          All can I say, "good luck".






          share|improve this answer









          $endgroup$













          • $begingroup$
            Considering problem size, it's possible, to change functionality, so the device is always a SOURCE, while being UFP. I thought that try.SRC might be a solution, but I can't make it work on STUST1600A eval.
            $endgroup$
            – Mateusz Kowalik
            22 hours ago
















          4












          $begingroup$

          The STUSB1600A is only a controller that follows now obsolete management of power roles using pull-up/pull-down combinations on CC lines. It doesn't have any PD capabilities. It is very unlikely that it will ever work for your purpose.



          The TPS65987D, however, is a PD controller, which can exchange PD serial communication over CC channels. The thing is that by recent PD specifications the only legal way to change power role of a port is using PD communication, so called "Structured VDM", Vendor Defined Messages. By default, power role of a port is in strict relation with data role: UFP is a sink, and DFP is a source. To swap power roles without swapping data roles you need to engage both ends of the Type-C link in PD negotiations.



          The thing is that TPS65987 chip is essentially a PD PHY, it can mostly receive and transmit PD messages. The content and interpretation of these messages must be crafted in firmware of some other MCU via I2C ports, although it does look like the TPS65987 has some local messaging capabilities which must be programmed in.



          Also be aware that having Type-C connector doesn't automatically imply that the device supports all these fancy PD and power-swap modes, so your target "a smartphone" may not be designed for up to date PD protocol, so expect that the power-up "accessory mode" won't work with all "a smartphones".



          All can I say, "good luck".






          share|improve this answer









          $endgroup$













          • $begingroup$
            Considering problem size, it's possible, to change functionality, so the device is always a SOURCE, while being UFP. I thought that try.SRC might be a solution, but I can't make it work on STUST1600A eval.
            $endgroup$
            – Mateusz Kowalik
            22 hours ago














          4












          4








          4





          $begingroup$

          The STUSB1600A is only a controller that follows now obsolete management of power roles using pull-up/pull-down combinations on CC lines. It doesn't have any PD capabilities. It is very unlikely that it will ever work for your purpose.



          The TPS65987D, however, is a PD controller, which can exchange PD serial communication over CC channels. The thing is that by recent PD specifications the only legal way to change power role of a port is using PD communication, so called "Structured VDM", Vendor Defined Messages. By default, power role of a port is in strict relation with data role: UFP is a sink, and DFP is a source. To swap power roles without swapping data roles you need to engage both ends of the Type-C link in PD negotiations.



          The thing is that TPS65987 chip is essentially a PD PHY, it can mostly receive and transmit PD messages. The content and interpretation of these messages must be crafted in firmware of some other MCU via I2C ports, although it does look like the TPS65987 has some local messaging capabilities which must be programmed in.



          Also be aware that having Type-C connector doesn't automatically imply that the device supports all these fancy PD and power-swap modes, so your target "a smartphone" may not be designed for up to date PD protocol, so expect that the power-up "accessory mode" won't work with all "a smartphones".



          All can I say, "good luck".






          share|improve this answer









          $endgroup$



          The STUSB1600A is only a controller that follows now obsolete management of power roles using pull-up/pull-down combinations on CC lines. It doesn't have any PD capabilities. It is very unlikely that it will ever work for your purpose.



          The TPS65987D, however, is a PD controller, which can exchange PD serial communication over CC channels. The thing is that by recent PD specifications the only legal way to change power role of a port is using PD communication, so called "Structured VDM", Vendor Defined Messages. By default, power role of a port is in strict relation with data role: UFP is a sink, and DFP is a source. To swap power roles without swapping data roles you need to engage both ends of the Type-C link in PD negotiations.



          The thing is that TPS65987 chip is essentially a PD PHY, it can mostly receive and transmit PD messages. The content and interpretation of these messages must be crafted in firmware of some other MCU via I2C ports, although it does look like the TPS65987 has some local messaging capabilities which must be programmed in.



          Also be aware that having Type-C connector doesn't automatically imply that the device supports all these fancy PD and power-swap modes, so your target "a smartphone" may not be designed for up to date PD protocol, so expect that the power-up "accessory mode" won't work with all "a smartphones".



          All can I say, "good luck".







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered yesterday









          Ale..chenskiAle..chenski

          28k11866




          28k11866












          • $begingroup$
            Considering problem size, it's possible, to change functionality, so the device is always a SOURCE, while being UFP. I thought that try.SRC might be a solution, but I can't make it work on STUST1600A eval.
            $endgroup$
            – Mateusz Kowalik
            22 hours ago


















          • $begingroup$
            Considering problem size, it's possible, to change functionality, so the device is always a SOURCE, while being UFP. I thought that try.SRC might be a solution, but I can't make it work on STUST1600A eval.
            $endgroup$
            – Mateusz Kowalik
            22 hours ago
















          $begingroup$
          Considering problem size, it's possible, to change functionality, so the device is always a SOURCE, while being UFP. I thought that try.SRC might be a solution, but I can't make it work on STUST1600A eval.
          $endgroup$
          – Mateusz Kowalik
          22 hours ago




          $begingroup$
          Considering problem size, it's possible, to change functionality, so the device is always a SOURCE, while being UFP. I thought that try.SRC might be a solution, but I can't make it work on STUST1600A eval.
          $endgroup$
          – Mateusz Kowalik
          22 hours ago


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Electrical Engineering 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.


          Use MathJax to format equations. MathJax reference.


          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%2felectronics.stackexchange.com%2fquestions%2f425832%2fusb-c-pd-fast-power-role-swap%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

          El tren de la libertad Índice Antecedentes "Porque yo decido" Desarrollo de la...

          Castillo d'Acher Características Menú de navegación

          Connecting two nodes from the same mother node horizontallyTikZ: What EXACTLY does the the |- notation for...