<?xml-stylesheet type="text/xsl" href="https://community.element14.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>PicoScope 6424E Oscilloscope + Accessories: Methodology</title><link>/products/roadtest/b/blog/posts/picoscope-6424e-oscilloscope-accessories-methodology</link><description>The Pico Oscilloscope RoadTest Review is currently in a holding pattern due to a shipping error. I figured I would fill the wait time by sharing the methodology or my approach for the RoadTest. I value the input from members. On past RoadTest their c</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: PicoScope 6424E Oscilloscope + Accessories: Methodology</title><link>https://community.element14.com/products/roadtest/b/blog/posts/picoscope-6424e-oscilloscope-accessories-methodology</link><pubDate>Mon, 21 Sep 2020 22:13:38 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:956130bf-9c1f-42ed-9d61-97eba32f0fbe</guid><dc:creator>genebren</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Sean,&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I have built a few different products that feature servo control, based on an implementation on the ATmega328PB (like on a classic Nano).&amp;nbsp; The two products differ in how that process the servo signals, but they both rely on the 16-bit timers of the ATmega328PB.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;On my WalkyII biped robot (&lt;a class="jive-link-blog-small" href="/challenges-projects/project14/moversandshakers/b/blog/posts/walky-the-biped-robot---walkyii-gets-a-new-brain"&gt;Walky the Biped Robot - WalkyII gets a new brain&lt;/a&gt; (hardware) and &lt;a class="jive-link-blog-small" href="/challenges-projects/project14/moversandshakers/b/blog/posts/walky-the-biped-robot---walkyii-the-final-chapter"&gt;Walky the Biped Robot - WalkyII the final chapter.&lt;/a&gt; (code)), I use two timer channels (Timer1 and Timer3) to each generate 2 PWM signals, for a total of 4 outputs.&amp;nbsp; This approach provided buffered connection between the ATmega328PB and the servos.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;On another product I develop 12 servo channels driven from a single timer with two outputs.&amp;nbsp; The two outputs are provided to a pair of 1:6 demultiplexers (made up of P-Channel MOSFETs) to drive the 12 output channels.&amp;nbsp; The timer is setup to reach terminal count in 3.125 mSec and the PWM compare registers are set to a value between 500 and 2500 (0.5 to 2.5ms).&amp;nbsp; When the larger of the two timers values is detected (via interrupts), the software switches to the next channel on the demultiplexers and loads the PWM compare registers for the next pair of pulses.&amp;nbsp; This process continues through the six channels and includes two blank channels for a total servo frame rate of 25ms (8 * 3.125ms). Since the PWM pluse widths are handled directly by the timers, the resulting pulses are very clean and jitter free.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Good luck on your servo control study and roadtest in general.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Gene&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;P.S. I love my PicoScope 5444D MSO.&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=9908&amp;AppID=14&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item></channel></rss>