<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>One ESP32 pin controlling a shift register?</title>
        <description> I stumbled upon an old article describing a simple way to drive a shift register with only one pin.  This method utilizes input capacitance combined with the fact that shift register &#039;shifts&#039; on rising clock edge to drive the Data input of the shift register.

[www.edn.com]



  

    
      
    

    

    
      

      

      

      

      

      

      
      
    

    
        
    

    
      
      
    

    

    
      media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg
    

  

 



mod_embed_images_loadimage(&#039;1be8fca3d8995860f71c8cebe2cc7280&#039;, &#039;https://reprap.org/forum/addon.php?13,module=embed_images,url=https%3A%2F%2Fwww.edn.com%2Fwp-content%2Fuploads%2Fmedia-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg&#039;, &#039;https://www.edn.com/wp-content/uploads/media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg&#039;, &#039;https://reprap.org/forum/addon.php?13,module=embed_images,check_scaling=1,url=https%3A%2F%2Fwww.edn.com%2Fwp-content%2Fuploads%2Fmedia-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg&#039;, &#039;&#039;, 868429, 800, 400, &#039;Loading image ...&#039;, false);




Variable duty cycle clock output seems  to be a perfect application for ESP32 RMT peripheral.  It has up to 80MHz resolution and combined with fast shift registers like MC74VHC595 [datasheet.lcsc.com] one ESP32 could, conservatively, drive 64 &#039;virtual&#039; pins with 8 real pins.  To make it better one could use real pin to control STROBE instead of RCD network for faster and synchronized output across all 8 RMT peripheral pins.

Has this been done already?</description>
        <link>https://reprap.org/forum/read.php?13,868429,868429#msg-868429</link>
        <lastBuildDate>Sun, 10 May 2026 04:13:54 -0400</lastBuildDate>
        <generator>Phorum 5.2.23</generator>
        <item>
            <guid>https://reprap.org/forum/read.php?13,868429,868429#msg-868429</guid>
            <title>One ESP32 pin controlling a shift register?</title>
            <link>https://reprap.org/forum/read.php?13,868429,868429#msg-868429</link>
            <description><![CDATA[ I stumbled upon an old article describing a simple way to drive a shift register with only one pin.  This method utilizes input capacitance combined with the fact that shift register 'shifts' on rising clock edge to drive the Data input of the shift register.<br />
<br />
[<a href="https://www.edn.com/one-i-o-line-drives-shift-register-with-strobe/" target="_blank"  rel="nofollow">www.edn.com</a>]<br />
<br />
<div id="div_1be8fca3d8995860f71c8cebe2cc7280"
     class="mod_embed_images"
     >

  

    
      
    

    <div id="imagediv_1be8fca3d8995860f71c8cebe2cc7280" class="mod_embed_images_image"
         >

    
      

      

      

      

      

      

      <noscript>
      <div>
    

    <a href="https://www.edn.com/wp-content/uploads/media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg">
        <img src="https://reprap.org/forum/addon.php?13,module=embed_images,url=https%3A%2F%2Fwww.edn.com%2Fwp-content%2Fuploads%2Fmedia-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg"
             
             
             id="image_1be8fca3d8995860f71c8cebe2cc7280"
             alt="media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg"
             title="media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg"/>
    </a>

    
      </div>
      </noscript>
    

    </div>

    <div class="mod_embed_images_info " id="info_1be8fca3d8995860f71c8cebe2cc7280"
      >
      <a id="link_1be8fca3d8995860f71c8cebe2cc7280" href="https://www.edn.com/wp-content/uploads/media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg">media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg</a>
    </div>

  

 </div>


<script type="text/javascript">
mod_embed_images_loadimage('1be8fca3d8995860f71c8cebe2cc7280', 'https://reprap.org/forum/addon.php?13,module=embed_images,url=https%3A%2F%2Fwww.edn.com%2Fwp-content%2Fuploads%2Fmedia-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg', 'https://www.edn.com/wp-content/uploads/media-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg', 'https://reprap.org/forum/addon.php?13,module=embed_images,check_scaling=1,url=https%3A%2F%2Fwww.edn.com%2Fwp-content%2Fuploads%2Fmedia-1180787-one-io-line-drives-shift-register-with-strobe-fig-6.jpg', '', 868429, 800, 400, 'Loading image ...', false);
</script>
<br />
<br />
<br />
Variable duty cycle clock output seems  to be a perfect application for ESP32 RMT peripheral.  It has up to 80MHz resolution and combined with fast shift registers like MC74VHC595 [<a href="https://datasheet.lcsc.com/szlcsc/1907231804_ON-Semicon-ON-MC74VHC595DTR2G_C403852.pdf" target="_blank"  rel="nofollow">datasheet.lcsc.com</a>] one ESP32 could, conservatively, drive 64 'virtual' pins with 8 real pins.  To make it better one could use real pin to control STROBE instead of RCD network for faster and synchronized output across all 8 RMT peripheral pins.<br />
<br />
Has this been done already?<br/>]]></description>
            <dc:creator>newbob</dc:creator>
            <category>Controllers</category>
            <pubDate>Tue, 03 Mar 2020 13:42:15 -0500</pubDate>
        </item>
    </channel>
</rss>
