<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Electronics on Schallbert's Blog</title><link>https://blog.schallbert.de/en/categories/electronics/</link><description>Recent content in Electronics on Schallbert's Blog</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sat, 10 Dec 2022</lastBuildDate><atom:link href="https://blog.schallbert.de/en/categories/electronics/index.xml" rel="self" type="application/rss+xml"/><item><title>Breadboard Fireplace</title><link>https://blog.schallbert.de/en/led-fireplace-diy/</link><pubDate>Sat, 10 Dec 2022</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/led-fireplace-diy/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/fireplace/fireplace-thumb.jpg"&#10; class="post-cover"&#10; alt="Image: A small electronics Breadboard with microcontroller, LEDs etc. on to make a fireplace simulation."&#10; title="Breadboard Fireplace" /&gt;&#10;&lt;h2 id="material-list"&gt;Material list&lt;/h2&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Item&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Count&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;~ Cost [€]&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;LED: Warm-white, e.g. Ifwd=30mA, 3lm&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;5&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;1,50&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;LED: Yellow, e.g. Ifwd=35mA, 1lm&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;2&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;0,60&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;LED: Red, e.g. Ifwd=35mA, 0.4lm&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;1&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;0,30&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Arduino Nano Atmega328&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;1&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;18&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Breadboard e.g. 170 pins&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;1&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;0,70&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Jumper wires, pin-pin, e.g. 5cm&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;10&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;3,30&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;In addition: Some jumper wires, Mini USB cable, powerbank / wall adapter&lt;/p&gt;&#10;&lt;h2 id="tools"&gt;Tools&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;optional: hot melt gun&lt;/li&gt;&#10;&lt;li&gt;optional: soldering iron&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="the-build"&gt;The Build&lt;/h2&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/fireplace/fireplace_detail.jpg" alt="fireplace breadboard design detail view"&gt;&lt;/figure&gt;&#10;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://upload.wikimedia.org/wikipedia/commons/thumb/f/f9/LED%2C_5mm%2C_green_%28en%29.svg/432px-LED%2C_5mm%2C_green_%28en%29.svg.png" alt="LED closeup"&gt;&lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;LED closeup for your reference&lt;/span&gt;&lt;a&#10; href="https://commons.wikimedia.org/wiki/File:LED,_5mm,_green_%28en%29.svg#file"&#10; class="attr-link"&#10; aria-label="Attribution 1"&#10; &gt;&#10; &lt;sup class="attr-id"&gt;[1]&lt;/sup&gt;&#10; &lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Connect the Arduino Nano&amp;rsquo;s right header to the left hand side of the breadboard. Make sure all pins are on level. If possible, don&amp;rsquo;t touch the pins due to risk of electrostatic discharge that may damage the device.&lt;/li&gt;&#10;&lt;li&gt;Connect the anodes (&lt;code&gt;+&lt;/code&gt;) of the LEDs to the board&amp;rsquo;s outputs &lt;code&gt;D2 through D9&lt;/code&gt;. The anode most often is the LED&amp;rsquo;s pin that doesn&amp;rsquo;t carry the chip (left in this case).&lt;/li&gt;&#10;&lt;li&gt;Place the cathodes (&lt;code&gt;-&lt;/code&gt;) of the LEDs to the right hand side of the board.&lt;/li&gt;&#10;&lt;li&gt;Place the header to the right of the LED&amp;rsquo;s cathodes.&lt;/li&gt;&#10;&lt;li&gt;To connect the cathodes, user jumper wires. Alternatively, solder the cathodes together right away.&lt;/li&gt;&#10;&lt;li&gt;Using a jumper wire, connect the &amp;ldquo;common cathode&amp;rdquo; to one of the &lt;code&gt;GND&lt;/code&gt; pins of the microcontroller board.&lt;/li&gt;&#10;&lt;li&gt;The LED anodes shouldn&amp;rsquo;t be able to touch each other. You can ensure this by placing some hot melt at their legs.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h2 id="programming"&gt;Programming&lt;/h2&gt;&#10;&lt;p&gt;The code is so simple that I can just paste it here. Copy it into your favourite IDE, program your board and you&amp;rsquo;re done!&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;Disclaimer&lt;/em&gt;: This piece of code is &amp;ldquo;quick&amp;rsquo;n&amp;rsquo;dirty&amp;rdquo; and has lots of potential for refactoring. For instance, the pin IDs are hardcoded, I&amp;rsquo;m not using &lt;code&gt;C++11&lt;/code&gt;&amp;rsquo;s range-based loop, and the speed algo will hit the low limit quite often and not show random behavior.&#10;I&amp;rsquo;m happy to hear your suggestions on my &lt;a href="https://github.com/Schallbert/schallbert.github.io/discussions" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Github discussions&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; page.&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-c" data-lang="c"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#include&lt;/span&gt; &lt;span style="color:#75715e"&gt;&amp;lt;Arduino.h&amp;gt;&lt;/span&gt;&lt;span style="color:#75715e"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#define MAXLONG 0xFFFFFFFF&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#define SPEED_HIGHLIMIT 1000 &lt;/span&gt;&lt;span style="color:#75715e"&gt;// 500Hz&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;#define SPEED_LOWLIMIT 0x1FFF &lt;/span&gt;&lt;span style="color:#75715e"&gt;// 20Hz&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;calcFlicker&lt;/span&gt;(&lt;span style="color:#66d9ef"&gt;uint32_t&lt;/span&gt; randomFlicker);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;writeLed&lt;/span&gt;(&lt;span style="color:#66d9ef"&gt;uint8_t&lt;/span&gt; columnCode, &lt;span style="color:#66d9ef"&gt;uint16_t&lt;/span&gt; speed);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;uint32_t&lt;/span&gt; iRNG &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;setup&lt;/span&gt;() &#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;{&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;randomSeed&lt;/span&gt;(&lt;span style="color:#a6e22e"&gt;analogRead&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;));&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;pinMode&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;, OUTPUT);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; iRNG &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;loop&lt;/span&gt;() &#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;{&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; iRNG &lt;span style="color:#f92672"&gt;=&lt;/span&gt; (iRNG &lt;span style="color:#f92672"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;) &lt;span style="color:#f92672"&gt;^&lt;/span&gt; (&lt;span style="color:#f92672"&gt;-&lt;/span&gt;(iRNG &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1u&lt;/span&gt;) &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0xd0000001u&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;calcFlicker&lt;/span&gt;(iRNG);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;/*&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt; This function takes a 32bit random value,&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt; and moves this value along a window of an 8bit &#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt; flicker output value.&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;*/&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;calcFlicker&lt;/span&gt;(&lt;span style="color:#66d9ef"&gt;uint32_t&lt;/span&gt; randomFlicker)&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;{&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;uint8_t&lt;/span&gt; currentFlicker &lt;span style="color:#f92672"&gt;=&lt;/span&gt; (&lt;span style="color:#66d9ef"&gt;uint8_t&lt;/span&gt;)(randomFlicker &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0xFF&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;uint16_t&lt;/span&gt; randomSpeed &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;min&lt;/span&gt;(SPEED_LOWLIMIT, (&lt;span style="color:#66d9ef"&gt;uint16_t&lt;/span&gt;)(randomFlicker &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; SPEED_HIGHLIMIT));&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt;(&lt;span style="color:#66d9ef"&gt;uint8_t&lt;/span&gt; i &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;; i &lt;span style="color:#f92672"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;24&lt;/span&gt;; &lt;span style="color:#f92672"&gt;++&lt;/span&gt;i) &lt;span style="color:#75715e"&gt;// 24 because of 32bit length of random, may not run empty&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; {&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;writeLed&lt;/span&gt;(currentFlicker, randomSpeed);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; randomFlicker &lt;span style="color:#f92672"&gt;=&lt;/span&gt; randomFlicker &lt;span style="color:#f92672"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; } &#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;/*&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt; this function outputs a code to an LED column of 8 LEDs&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt; connected to arduino&amp;#39;s pins with a selectable delay.&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;*/&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;void&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;writeLed&lt;/span&gt;(&lt;span style="color:#66d9ef"&gt;uint8_t&lt;/span&gt; columnCode, &lt;span style="color:#66d9ef"&gt;uint16_t&lt;/span&gt; speed)&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;{&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;2&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x01&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;3&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x02&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x04&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;5&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x08&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;6&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x10&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;7&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x20&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;8&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x40&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;digitalWrite&lt;/span&gt;(&lt;span style="color:#ae81ff"&gt;9&lt;/span&gt;, columnCode &lt;span style="color:#f92672"&gt;&amp;amp;&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;0x80&lt;/span&gt;);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;delayMicroseconds&lt;/span&gt;(speed);&#10;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="working"&gt;Working&lt;/h2&gt;&#10;&lt;p&gt;Once you power the device up via USB, the LED flicker sequence should start and all LEDs should light up eventually. You&amp;rsquo;ll notice how the glow calms you down. Maybe you have some twigs ore firewood at the ready and an empty space in your shelf?&#10;Take a powerbank and hide your Breadboard Fireplace below its wooden decoration. You&amp;rsquo;re done!&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://blog.schallbert.de/en/projects/fireplace/"&gt;Back to Project main page&lt;/a&gt;&lt;/p&gt;&#10;</description></item><item><title>Measure Inrush current</title><link>https://blog.schallbert.de/en/measure-inrush-current/</link><pubDate>Tue, 16 Aug 2022</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/measure-inrush-current/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_inrush-thumb.jpg"&#10; class="post-cover"&#10; alt="Inrush current measurement"&#10; title="Measure Inrush current" /&gt;&#10;&lt;h2 id="setting-up-the-multimeter--oscilloscope--data-logger"&gt;Setting up the multimeter / oscilloscope / data logger&lt;/h2&gt;&#10;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_multimeter.jpg" alt="Image: Metrahit Energy"&gt;&lt;/figure&gt;&#10;&lt;p&gt;For this blog post, I was lucky to borrow a multimeter for energy measurement from &lt;a href="https://www.gossenmetrawatt.de/en/products/measuring-and-test-technology/multimeters-and-handheld-calibrators/special-applications/multimeters-for-power-and-energy-measurement/metrahit-energy/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;GMC Instruments&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. It features a data logger so I can visualize the collected data.&lt;/p&gt;&#10;&lt;h3 id="metrahit-energy"&gt;Metrahit Energy&lt;/h3&gt;&#10;&lt;p&gt;I&amp;rsquo;d rate the &amp;ldquo;Metrahit Engergy&amp;rdquo; to be more in the &amp;lsquo;pro&amp;rsquo; than in the &amp;lsquo;hobbyist&amp;rsquo; corner of multimeters, both its wealth of features and its price tag point in that direction. In contrast to lower-range models, it provides modes for instantaneous and average voltage/current, is able to measure power, power quality, and energy consumption of devices. It is also able to show total harmonic distorion of a signal and to read PT100 industry-grade temperature sensors.&lt;/p&gt;&#10;&lt;p&gt;This piece of equipment might come in handy for future articles as well.&lt;/p&gt;&#10;&lt;h3 id="metrawin-software-setup"&gt;MetraWin software setup&lt;/h3&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Download and install the &lt;a href="https://www.gmc-instruments.de/en/products/metrawin-10" target="_blank" rel="noopener noreferrer" class="external-link"&gt;MetraWin&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; software to transfer and display collected data from the multimeter&lt;/li&gt;&#10;&lt;li&gt;Download and install &lt;a href="https://www.gmc-instruments.de/en/products/software-and-accessories/software/product-specific-software/test-technology/driver-control/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Driver-Control&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; software. It&amp;rsquo;s purpose is to provide a communications port between USB and the infrared communication interface adapter provided with the multimeter.&lt;/li&gt;&#10;&lt;li&gt;In MetraWin software, select &lt;code&gt;METRAHit Starline Series&lt;/code&gt; (btw, unclear to me why the series&amp;rsquo; name neither appears on the device nor the website)&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_metrawin_device.jpg" alt="Image of MetraWin settings to choose device"&gt;&lt;/figure&gt;&lt;/li&gt;&#10;&lt;li&gt;Connect the infrared adapter. In the device manager (&lt;code&gt;Windows-key&lt;/code&gt; &amp;ndash;&amp;gt; type &lt;code&gt;device&lt;/code&gt; and select &lt;code&gt;device manager&lt;/code&gt; &amp;ndash;&amp;gt; scroll down to &lt;code&gt;Connections (COM &amp;amp; LPT)&lt;/code&gt;, unfold), make sure the IR adapter shows up with a &lt;code&gt;COM&lt;/code&gt; port ID). Select this ID in MetraWin&amp;rsquo;s&lt;code&gt; Device --&amp;gt; Communication... --&amp;gt; SEL-COM&lt;/code&gt; window.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h3 id="multimeter-setup-for-inrush-current-logging"&gt;Multimeter setup for inrush current logging&lt;/h3&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_addr.jpg" alt="Image: Multimeter address setting"&gt;&lt;/figure&gt; In the Multimeter&amp;rsquo;s settings, make sure the address is set to any other value than &lt;code&gt;00&lt;/code&gt; (&lt;code&gt;Setup --&amp;gt; Set --&amp;gt; System --&amp;gt; Addr&lt;/code&gt;) because the infrared communication will not detect the device with an invalid value here (I experienced this and needed quite some time to figure out that not the IR adapter detection is faulty but the Multimeter&amp;rsquo;s settings). Background is that by address, the software supports up to 15 devices simultaneously.&lt;/li&gt;&#10;&lt;li&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_rate.jpg" alt="Image: Multimeter sample time"&gt;&lt;/figure&gt; Set the sample time to its lowest value for good impulse tracking: go to &lt;code&gt;Measure --&amp;gt; Store --&amp;gt; Rate&lt;/code&gt; and select &lt;code&gt;0.0005sec&lt;/code&gt; which means the logger takes measurements with &lt;code&gt;2000Hz&lt;/code&gt; sample rate. This is as low as it gets, and these values already compromise the recording channel availability e.g. for energy measurement due to the device&amp;rsquo;s limited buffering ability.&lt;/li&gt;&#10;&lt;li&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_trms.jpg" alt="Image: Multimeter TRMS setting"&gt;&lt;/figure&gt; Now select the value you want to measure (for me it is &lt;code&gt;DC&lt;/code&gt; current in &lt;code&gt;Ampère&lt;/code&gt;), hit &lt;code&gt;MAN/AUTO&lt;/code&gt; and choose the range manually to a value higher than the peak value you&amp;rsquo;re expecting. Hint: If you just select &lt;code&gt;A&lt;/code&gt; and the Multimeter shows &lt;code&gt;TRMS&lt;/code&gt; or &lt;code&gt;RMS&lt;/code&gt; somewhere, this is likely not what you want because with this option, the device will do some maths to get average values which naturally does not work when we want signal peaks.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;For my amplifier&amp;rsquo;s inrush current, I had to set the range manually to &lt;code&gt;&amp;gt;10A&lt;/code&gt;. This is because if the signal peak exceeds the &amp;lsquo;Auto&amp;rsquo; range by far, accuracy will be low and the device might even record complete nonsense.&lt;/p&gt;&#10;&lt;h3 id="alternative-devices"&gt;Alternative devices&lt;/h3&gt;&#10;&lt;p&gt;Oscilloscopes would easily outperform the multimeter in terms of sample rate but as they have completely different design requirements, it&amp;rsquo;s fair to say that you cannot really compare these two device categories.&lt;/p&gt;&#10;&lt;p&gt;Nevermind, you can do the exact same measurement with the cheapest of scopes e.g. connected to a &lt;code&gt;0.1 Ohm&lt;/code&gt; shunt resistor as well, and set it to &lt;code&gt;1V/div&lt;/code&gt;. What for this specific task likely won&amp;rsquo;t work is a low-cost multimeter with &amp;ldquo;Data Max Hold&amp;rdquo; function. For capacitor charging on a DC power supply, the sample rate will be just too low.&lt;/p&gt;&#10;&lt;h2 id="discussion-of-circuit-to-measure"&gt;Discussion of circuit to measure&lt;/h2&gt;&#10;&lt;p&gt;The device under test is a &lt;code&gt;30W&lt;/code&gt; power amplifier board &lt;a href="https://store.sure-electronics.com/product/AA-AB32996" target="_blank" rel="noopener noreferrer" class="external-link"&gt;AA-AB32996&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; by sure electronics based on the Class-D integrated circuit &lt;a href="https://www.ti.com/product/TPA3130D2" target="_blank" rel="noopener noreferrer" class="external-link"&gt;TPA3110&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_TPA3110.jpg" alt="Image: sure electronics AA-AB32996 based on TPA3110"&gt;&lt;/figure&gt;&#10;&lt;p&gt;The supply path involves reverse voltage protection schottky diodes (three in parallel), connected to 6 bulk &lt;code&gt;220uF&lt;/code&gt; electrolytic capacitors on the positive supply rails of the amplifier IC. In addition, two different decoupling capacitors close to the IC reduce noise on that rail.&lt;/p&gt;&#10;&lt;p&gt;For comparison, the PCB layout example looks similar. You can see that the example features additional &lt;code&gt;FB&lt;/code&gt; (ferrite beads) components for current leveling on the input rail and has less bulk capacitance for current surge handling capabilities. Also, the example works with more simple ferrite beads instead of &amp;ldquo;proper&amp;rdquo; inductor filters on the speaker output.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_TPA3110_recommended_layout.jpg" alt="Image: TPA3110 recommended PCB layout"&gt;&lt;/figure&gt;&#10;&lt;h3 id="motivation-failed-prototyping-with-usb-c-pd"&gt;Motivation: Failed Prototyping with USB-C PD&lt;/h3&gt;&#10;&lt;p&gt;For one of my prototypes, I connected the USB-C Power Delivery development board &lt;a href="https://blog.schallbert.de/en/usbpd-explained/#stusb4500"&gt;I discussed in this post&lt;/a&gt; and had to learn that it would blow up after just a few switching cycles - supposedly due to a high inrush current the power delivery device couldn&amp;rsquo;t handle.&lt;/p&gt;&#10;&lt;p&gt;That&amp;rsquo;s why I wanted to know how high the inrush current actually is and with which component I could effectively reduce the risk of voltage instability or even component damage when switching the amplifier on.&lt;/p&gt;&#10;&lt;h2 id="actual-measurement"&gt;Actual measurement&lt;/h2&gt;&#10;&lt;p&gt;I connected the multimeter&amp;rsquo;s current input to the negative power supply path of the amplifier, its GND connector to the power supply&amp;rsquo;s &lt;code&gt;GND&lt;/code&gt;, &lt;code&gt;+20V&lt;/code&gt; of the power supply to the amp&amp;rsquo;s positive power in, and the Multimeter&amp;rsquo;s voltage input to the IC&amp;rsquo;s power supply pins.&lt;/p&gt;&#10;&lt;p&gt;Then I selected &lt;code&gt;SET --&amp;gt; Store --&amp;gt; Start --&amp;gt; Store&lt;/code&gt; to begin the measurement and connected the positive supply path. As voltage/current stabilized, I ended the measurement by pressing &lt;code&gt;Stop&lt;/code&gt;.&lt;/p&gt;&#10;&lt;p&gt;Due to the high data rate, I had to transfer the data to my computer manually and couldn&amp;rsquo;t use the &amp;ldquo;live&amp;rdquo; function. To do this, I hit &lt;code&gt;Read Memory --&amp;gt; Get Memory Info --&amp;gt; Move Memory Data to File --&amp;gt; save --&amp;gt; Open Memory Data File --&amp;gt; Display Data from File&lt;/code&gt;. Not entirely clear to me why the process has to be that complex - I&amp;rsquo;d like a shortcut to directly display data from the device - but nevermind, it works pretty well this way.&lt;/p&gt;&#10;&lt;p&gt;The &lt;code&gt;Measurement Data File&lt;/code&gt; has a significant advantage over the &lt;code&gt;Memory Data File&lt;/code&gt;: It contains metadata like scoped view, labels, units per division etc. When complete, a PDF can be generated with no big hassle.&lt;/p&gt;&#10;&lt;h3 id="inrush-current-event"&gt;Inrush current event&lt;/h3&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_TPA3110_inrushcurrent.jpg" alt="Image: TPA3110 current over time"&gt;&lt;/figure&gt;&#10;&lt;p&gt;The whole event only took &lt;code&gt;~10ms&lt;/code&gt;, 20 samples. After a really high current spike of &lt;code&gt;&amp;gt;12A&lt;/code&gt;, there&amp;rsquo;s a current plateau at around &lt;code&gt;4A&lt;/code&gt; until the capacitors are charged and the reduces to the circuit&amp;rsquo;s normal idle level.&lt;/p&gt;&#10;&lt;p&gt;The peak current has 1 sample only - I cannot say whether this is an outlier/ measurement error or a real event. Some assumptions for its cause:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;very low ESR small bypass within circuits&lt;/li&gt;&#10;&lt;li&gt;Sample rate still too low&lt;/li&gt;&#10;&lt;li&gt;Current meter range violation&lt;/li&gt;&#10;&lt;li&gt;Power supply current limit engaged creating the current plateau (set to &lt;code&gt;5A&lt;/code&gt; so it does not really fit)&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="voltage-amplifiers-supply-pins"&gt;Voltage @Amplifier&amp;rsquo;s supply pins&lt;/h3&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2022-08-16_TPA3110_inrushvoltage.jpg" alt="Image: TPA3110 voltage over time"&gt;&lt;/figure&gt;&#10;&lt;p&gt;The voltage measurement shows a steep incline for the first sample when the inrush event starts, followed by an almost linear increase until steady state voltage is reached after &lt;code&gt;~6ms&lt;/code&gt;.&lt;/p&gt;&#10;&lt;p&gt;These values correspond nicely to the current peak at the very beginning and the plateau showing the capacitors gradually charge until target voltage is reached.&lt;/p&gt;&#10;&lt;h3 id="repetition--conclusion"&gt;Repetition &amp;amp; Conclusion&lt;/h3&gt;&#10;&lt;p&gt;I repeated the measurement with different settings: Speakers connected/disconnected, amplifier in standby/idle but the results were identical. This led me to the conclusion that the amplifier IC and its periphery do not affect inrush current - it only depends on the power supply path and its protection, decoupling, and energy buffering function.&lt;/p&gt;&#10;&lt;p&gt;Drawbacks of doing this measurement with a multimeter are a limited data rate (I would have liked to measure with 10&amp;hellip;100kHz for these surge events), the inability to live-view, and long data transfer times due to a (probably outdated) infrared communication standard. On the other hand, I am now able to do &amp;ldquo;offline logs&amp;rdquo; very quickly and without the need of a computer or even mains connection. Setup is easy and device portability is great for field application - I&amp;rsquo;ll do some more measurements in the future where the multimeter might be an even better fit.&lt;/p&gt;&#10;&lt;p&gt;For the amplifier, I will design a protective circuit as already discussed &lt;a href="https://blog.schallbert.de/en/inrushlimiter-circuits/"&gt;in this post&lt;/a&gt; to mitigate issues with USB-PD devices.&lt;/p&gt;&#10;</description></item><item><title>Inrush Current Limiter - Part2</title><link>https://blog.schallbert.de/en/inrushlimiter-circuits/</link><pubDate>Thu, 10 Feb 2022</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/inrushlimiter-circuits/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/inrushlimiter-thumb.jpg"&#10; class="post-cover"&#10; alt="Inrush limiter circuit variant"&#10; title="Inrush Current Limiter - Part2" /&gt;&#10;&lt;h2 id="contents"&gt;Contents&lt;/h2&gt;&#10;&lt;p&gt;In this article, I will concentrate on two ways to create a solid-state inrush current limiter circuit: One copies the relay-approach from &lt;a href="https://blog.schallbert.de/en/knowledge-inrushlimiters/"&gt;Electronics knowledge: Inrush current limiters&lt;/a&gt;, just exchanging the relay with a p-channel MOSFET, and adding a more defined time delay. The other one has a &amp;ldquo;linear&amp;rdquo; approach turning power on gradually using a PNP power transistor.&lt;/p&gt;&#10;&lt;h2 id="motivation-inrush-current-limiter-for-usb-pd"&gt;Motivation: Inrush current limiter for USB-PD&lt;/h2&gt;&#10;&lt;p&gt;As my experiments with &lt;a href="https://blog.schallbert.de/en/usbpd-explained/"&gt;USB-PD for AnywhereAmps&lt;/a&gt; failed, I have to create a circuit that limits inrush current to my amplifier before trying again.&lt;/p&gt;&#10;&lt;h2 id="circuits-explained"&gt;Circuits explained&lt;/h2&gt;&#10;&lt;p&gt;The two circuits are very similar. They only really differ in two components of the power section. Generally speaking, increasing delay capacitor &lt;code&gt;C4&lt;/code&gt; or increasing charge resistor &lt;code&gt;R9&lt;/code&gt; will prolong the delay time.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/inrush_circuit.jpg" alt="inrush current limiter sections"&gt;&lt;/figure&gt;&#10;&lt;h3 id="input-section-blue"&gt;Input section (blue)&lt;/h3&gt;&#10;&lt;p&gt;The input section features a transient &lt;a href="https://blog.schallbert.de/en/knowledge-tvsdiodes/"&gt;voltage suppressor diode&lt;/a&gt; to eliminate reverse current or overvoltage cases.&lt;/p&gt;&#10;&lt;h3 id="delay-section-yellow"&gt;Delay section (yellow)&lt;/h3&gt;&#10;&lt;p&gt;When switched on, &lt;code&gt;C4&lt;/code&gt; will gradually charge via &lt;code&gt;R9&lt;/code&gt;. When the NPN bipolar transistor &lt;code&gt;Q2&lt;/code&gt;&amp;rsquo;s threshold voltage is reached, it will slowly reduce voltage behind &lt;code&gt;R11&lt;/code&gt; which will in turn activate &lt;code&gt;M2&lt;/code&gt;, the power path of this circuit. &lt;code&gt;R12&lt;/code&gt; has been added to provide a stable operating point for &lt;code&gt;Q2&lt;/code&gt;.&lt;/p&gt;&#10;&lt;h3 id="power-section-green"&gt;Power section (green)&lt;/h3&gt;&#10;&lt;p&gt;The linear variant has a PNP power transistor &lt;code&gt;Q1&lt;/code&gt; in the main current path (&lt;a href="https://blog.schallbert.de/en/inrushlimiter-circuits/#circuit-comparison"&gt;image below&lt;/a&gt;). It is activated via &lt;code&gt;Q2&lt;/code&gt; and the current it can provide is controlled using &lt;code&gt;R10&lt;/code&gt;, which in this case has a relatively low value to allow high emitter-collector currents.&lt;/p&gt;&#10;&lt;p&gt;While the switching variant uses a current limiting resistor &lt;code&gt;R8&lt;/code&gt; that is shorted by the p-channel mosfet &lt;code&gt;M2&lt;/code&gt;, it&amp;rsquo;s voltage-controlled nature does not require special care when selecting &lt;code&gt;R10&lt;/code&gt;. You should just make sure that it&amp;rsquo;s (negative) gate threshold voltage is well met.&lt;/p&gt;&#10;&lt;h3 id="simulated-load-purple"&gt;Simulated load (purple)&lt;/h3&gt;&#10;&lt;p&gt;My load is the power amplifier circuitry. To simulate its idle state and the powering-up behavior, I chose a 400Ohm resistor &lt;code&gt;R5&lt;/code&gt; and a 1200uF polarized capacitor &lt;code&gt;C3&lt;/code&gt;. The TVS diode protects from over voltage and reverse currents. I have tried the simulations with capacitor values of up to 10000uF and resistors down to 40Ohm, all with similar and good results.&lt;/p&gt;&#10;&lt;h2 id="circuit-comparison"&gt;Circuit comparison&lt;/h2&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/inrushlimiter-variants.jpg" alt="inrush current limiter variants compared"&gt;&lt;/figure&gt;&#10;The blue line in the diagram is what is most relevant: It describes the output voltage of the system over time. Both circuits are tuned to reach target output voltage after 0.2 seconds. Still the curves differ quite a bit showing the different nature of the two approaches.&lt;/p&gt;&#10;&lt;h3 id="p-ch-mosfet-approach"&gt;P-CH MOSFET approach&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Due to switching operation, inrush current limiter is effective but not exactly smooth&lt;/li&gt;&#10;&lt;li&gt;power losses are very small for this variant because both triggering NPN transistor and power mosfet don&amp;rsquo;t use much power on their own.&lt;/li&gt;&#10;&lt;li&gt;wide range of usability for connected devices only limited by the mosfet&amp;rsquo;s maximum continuous current.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="pnp-power-transistor-approach"&gt;PNP power transistor approach&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Very smooth operation, turn-on time can be controlled very well because of the PNP&amp;rsquo;s large ohmic region&lt;/li&gt;&#10;&lt;li&gt;higher power losses when turned on due to high base current through &lt;code&gt;R10&lt;/code&gt;&lt;/li&gt;&#10;&lt;li&gt;Not very versatile, as high load currents will create a considerable voltage drop over &lt;code&gt;Q1&lt;/code&gt;&amp;rsquo;s emitter-collector path.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="further-improvements"&gt;Further improvements&lt;/h3&gt;&#10;&lt;p&gt;To keep the versatility of this circuit high while at the same time keeping a smooth voltage curve, one could use an operational amplifier to monitor load current, regulating it down to allowed values if needed. The power mosfet could be kept while the disadvantage of the narrow ohmic operation band would vanish. The cost would be additional complexity like described &lt;a href="https://electronics.stackexchange.com/questions/408379/current-limiting-source-using-opamp" target="_blank" rel="noopener noreferrer" class="external-link"&gt;in this electronics stackexchange post&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;</description></item><item><title>USB Power Delivery</title><link>https://blog.schallbert.de/en/usbpd-explained/</link><pubDate>Thu, 27 Jan 2022</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/usbpd-explained/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/stusb4500-thumb.jpg"&#10; class="post-cover"&#10; alt="ST&amp;#39;&amp;#39;s EVAL-SCS001V1: STUSB4500 evaluation board"&#10; title="USB Power Delivery" /&gt;&#10;&lt;h2 id="usb-power-delivery"&gt;USB Power Delivery&lt;/h2&gt;&#10;&lt;p&gt;USB Power Delivery is a standard within the USB 3.x protocol that specifies power supply and voltage levels within the USB network.&#10;With USB-PD it is possible to daisy-chain consumers which then negotiate power demands with the source(s) automatically. The standard has different versions, of which the latest (2021) allows up to 5 Ampères at 3.3&amp;hellip;48V and a maximum of 240 Watts of power.&lt;/p&gt;&#10;&lt;h3 id="usb-pd-roles"&gt;USB-PD roles&lt;/h3&gt;&#10;&lt;p&gt;In the USB Power Delivery Standard, there are different roles that participants on the ends of an USB cable can play. They can be host or client for data purposes, and at the same time power source, power sink, or both for other participants.&lt;/p&gt;&#10;&lt;h3 id="role-terminology"&gt;Role terminology&lt;/h3&gt;&#10;&lt;p&gt;USB-C uses the acronym &lt;code&gt;DFP&lt;/code&gt; or Down-Facing Port to make clear that the port is the one of a &lt;a href="https://community.infineon.com/t5/Knowledge-Base-Articles/USB-Type-C-and-USB-PD-FAQs/ta-p/679219#." target="_blank" rel="noopener noreferrer" class="external-link"&gt;Host&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. &lt;code&gt;UFP&lt;/code&gt; or Up-Facing Port is used for clients that can be connected to hosts. There&amp;rsquo;a third role, though: &lt;code&gt;DRP&lt;/code&gt; or Dual-Role Port. This port can serve either as a host or as a client, depending on who the connecting partner on the other side of the cable is and what the USB network negotiates.&lt;/p&gt;&#10;&lt;p&gt;In USB-PD context, any of those ports can be configured to be sinking or sourcing current. Example: Although a Laptop&amp;rsquo;s USB-C port&amp;rsquo;s role may be configured to &lt;code&gt;DFP&lt;/code&gt;, when connected to a power source, it can still be a power sink. Hmm.&lt;/p&gt;&#10;&lt;p&gt;In this post, I&amp;rsquo;m only using the &lt;code&gt;UFP&lt;/code&gt; role in both USB-C and USB-PD word sense, meaning that I&amp;rsquo;m trying to configure a power sink for my device so that it will get the input voltage and current it needs.&lt;/p&gt;&#10;&lt;h3 id="usb-pd-version"&gt;USB-PD version&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Before USB-PD Standard 2.0, USB-C devices only support so-called &lt;em&gt;Power Profiles&lt;/em&gt; with fixed voltages of 5V, 12V, 20V and currents of up to 2A, 3A, or 5A.&lt;/li&gt;&#10;&lt;li&gt;Between USB-PD Standard 2.0 and USB-PD 3.0, &lt;em&gt;Power Delivery Objects&lt;/em&gt; replaced the old Power Profiles that allow different voltages/currents to be selected by the sink &lt;a href="https://usb.org/sites/default/files/D2T2-1%20-%20USB%20Power%20Delivery.pdf" target="_blank" rel="noopener noreferrer" class="external-link"&gt;depending on the power source&amp;rsquo;s offerings&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Voltages are fixed to 5V, 9V, 15V, 20V with current limits of 2.25A, 3A, 5A depending on source capability and voltage setting. PDOs allow fallback strategies, so if a source cannot support the highest power demand, the sink may select another PDO with less voltage/current that works for both source and sink.&lt;/li&gt;&#10;&lt;li&gt;With USB-PD Standard 3.0 PPS , the protocol offered even more flexibility with &lt;em&gt;Programmable Power Supply&lt;/em&gt;. Here, a power sink requests a voltage level between 3.3V and 21V, selectable in 20mV steps and 0.2 to 5A, selectable in 50mA steps while staying fully backwards-compatible to USB-PD 2.0&amp;rsquo;s Power Delivery Objects.&lt;/li&gt;&#10;&lt;li&gt;Latest USB-PD Standard 3.1 even enhances Programmable Power Supplies&amp;rsquo; limits and allows 3.3V - 48V and up to 5A &lt;a href="https://www.thephonetalks.com/usb-pd-2-0-vs-3-0-vs-3-1/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;using AVS&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; - &lt;em&gt;Adaptable Voltage Files&lt;/em&gt;. Whow.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Not all sources (wall plugs, powerbanks etc.) can supply all Voltage levels or currents, or even share the same standard of implementation. But a number of values is pretty common: 5V, 9V, 12V, 15V, 20V. Some of the products I have seen on the market offer up to 4A, but most keep it with up to 3A and voltages up to 15V are most common (in 2021).&lt;/p&gt;&#10;&lt;h2 id="power-delivery-asics"&gt;Power delivery ASICs&lt;/h2&gt;&#10;&lt;p&gt;ASIC stands for application specific integrated circuit, and in this post I&amp;rsquo;m trying to shed some light on ASICs with Power Delivery sink role that can work stand-alone, that is without an external control device such as a microprocessor. I found three types of these devices:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Standalone USB-PD sink, voltage and current setting via resistor cascade&lt;/li&gt;&#10;&lt;li&gt;Standalone USB-PD sink, voltage and current map programmable via data bus (&lt;a href="https://en.wikipedia.org/wiki/I%C2%B2C" target="_blank" rel="noopener noreferrer" class="external-link"&gt;I2C&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;/&lt;a href="https://en.wikipedia.org/wiki/Universal_asynchronous_receiver-transmitter" target="_blank" rel="noopener noreferrer" class="external-link"&gt;UART&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;/&lt;a href="https://en.wikipedia.org/wiki/Serial_Peripheral_Interface" target="_blank" rel="noopener noreferrer" class="external-link"&gt;SPI&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;) into non-volatile memory of the ASIC&lt;/li&gt;&#10;&lt;li&gt;Standalone USB-PD sink with integrated microprocessor that needs to be programmed in order to work properly&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;What all ASICs have in common: They require peripheral circuitry to work - at least some resistors, capacitors, and power transistors to switch power supply and negotiate with connected power sources.&lt;/p&gt;&#10;&lt;h3 id="usb-pd-is-complex-versioning-and--power-contract-negotiations"&gt;USB-PD is complex: Versioning and power contract negotiations&lt;/h3&gt;&#10;&lt;p&gt;Both the downwards compatibility and the scaleability of USB-PD take their tribute - the USB-PD specification is a &amp;gt;600 page monster and it&amp;rsquo;s not always clear which source or sink supports which protocol level.&lt;/p&gt;&#10;&lt;p&gt;As both the source, sink, and the cable have to negotiate a Power Delivery contract based on the sink&amp;rsquo;s requirements, the source&amp;rsquo;s power options, and the cable&amp;rsquo;s capabilities, you can imagine that this process is very complex. Even more so as all participants may have implemented a different USB-PD standard, revision and version. Fun fact: The USB Power Delivery specification package&amp;rsquo;s zip folder on the &lt;a href="https://usb.org/document-library/usb-power-delivery" target="_blank" rel="noopener noreferrer" class="external-link"&gt;official page&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; has a file size of &amp;gt;42MB. Although I think this topic is very interesting, I don&amp;rsquo;t have the time to deep-dive into the specifics 😅&lt;/p&gt;&#10;&lt;p&gt;So, let&amp;rsquo;s leave all this stuff behind and try finding an easy-to-implement solution.&lt;/p&gt;&#10;&lt;h3 id="example-asics"&gt;Example ASICs&lt;/h3&gt;&#10;&lt;p&gt;I have arbitrarily chosen three ICs from the web, supplied by different companies, one each per device type:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Cypress/Infinion&amp;rsquo;s &lt;a href="https://www.infineon.com/cms/en/product/universal-serial-bus-usb-power-delivery-controller/usb-c-and-power-delivery/ez-pd-barrel-connector-replacement-bcr/cypd3177-24lqxqt/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;CYPD3177&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, a resistor-config USB-PD sink controller&lt;/li&gt;&#10;&lt;li&gt;STMicroelectronics&amp;rsquo; &lt;a href="https://www.st.com/en/interfaces-and-transceivers/stusb4500.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;STUSB4500&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, a Memory-config USB-PD sink controller&lt;/li&gt;&#10;&lt;li&gt;Microchip&amp;rsquo;s &lt;a href="https://www.microchip.com/en-us/product/UPD301C#document-table" target="_blank" rel="noopener noreferrer" class="external-link"&gt;UPD301C&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, a fully programmable USB-PD dual role controller&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;I&amp;rsquo;ll select the STUSB4500 first.&lt;/p&gt;&#10;&lt;h3 id="chip--ic-shortage"&gt;Chip / IC Shortage&lt;/h3&gt;&#10;&lt;p&gt;For integration into my design, I wanted to buy some samples. Unfortunately, Chip shortages hit hard so that neither of the distributors that I normally order electronics parts with, had any in stock for the next year.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/digikey_stusb4500.jpg" alt="STUSB4500 out of stock at DigiKey"&gt;&lt;/figure&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/st_stusb4500.jpg" alt="STUSB4500 out of stock at ST"&gt;&lt;/figure&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/farnell_stusb4500.jpg" alt="STUSB4500 out of stock at Farnell"&gt;&lt;/figure&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/mouser_stusb4500.jpg" alt="STUSB4500 out of stock at Mouser"&gt;&lt;/figure&gt;&#10;That&amp;rsquo;s why I decided to order a development board with the ASIC readily mounted. This is 10x more expensive than the chip itself but I didn&amp;rsquo;t have a choice here.&lt;/p&gt;&#10;&lt;h3 id="stusb4500"&gt;Integration of STUSB4500&lt;/h3&gt;&#10;&lt;p&gt;STUSB4500 is using the USB-PD Standard 2.0 - so not the latest greatest one - but downwards compatibility of later standards make it a quick and easy starting point for a maker.&#10;The device comes pre-programmed with three Power Delivery Objects:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;PDO1 = 5V/1.5A&lt;/li&gt;&#10;&lt;li&gt;PDO2 = 15V/1.5A&lt;/li&gt;&#10;&lt;li&gt;PDO3 = 20V/1A&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;So for my &lt;a href="https://blog.schallbert.de/en/projects/aa_alpha_1_1/"&gt;AnywhereAmps Alpha 1.1&lt;/a&gt; evolution 1.2 I can use this thing right out of the box without re-programming. If I wanted to change the Power Delivery Objects, I&amp;rsquo;d use an Arduino board with I2C and install STUSB4500 library which is readily available e.g. at &lt;a href="https://registry.platformio.org/libraries/ardnew/STUSB4500" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Platformio&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. With this, I could even activate USB-PD 3.0&amp;rsquo;s Programmable Power Supply if I wanted. Let&amp;rsquo;s see, when I find the time, I&amp;rsquo;ll prepare a specific blog entry for programming STUSB4500.&lt;/p&gt;&#10;&lt;h3 id="powering-up-the-amplifier"&gt;Powering up the amplifier&lt;/h3&gt;&#10;&lt;p&gt;OK, so I connected the eval board to a 15V capable 30V USB-C power supply. The purple light indicates 15V available on the output rail.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/stusb4500_on.jpg" alt="Usb-PD Evaluation Board STUSB4500 stock, 15V mode"&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;p&gt;Now I attached my amplifier circuits at its output terminals for an initial test. STUSB evaluation board lights gone, amp off. Meh. At least I have an indicaton for what the cause might be: It&amp;rsquo;s &lt;a href="https://blog.schallbert.de/en/capacitor-problems/"&gt;capacitive inrush currents, again&lt;/a&gt;! To be able to properly power devices with large bulk capacitors, either I&amp;rsquo;ll have to set current in the PDO to abormally high levels or I make up my mind aboud constructing a proper, miniaturized inrush limiter circuit. I have setup a prototype already that I discuss &lt;a href="https://blog.schallbert.de/en/knowledge-inrushlimiters/"&gt;here&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="should-you-use-usb-pd-for-your-projects"&gt;Should you use USB-PD for your projects?&lt;/h2&gt;&#10;&lt;p&gt;The answer is a definete &amp;ldquo;it depends&amp;rdquo;. Although the capabilities of USB-PD are great, there are a few drawbacks:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;requires an extra ASIC with periphery to negotiate the power contracts. This takes PCB space and increases project costs significantly&lt;/li&gt;&#10;&lt;li&gt;To be fully backwards compatible, it makes sense to buy an ASIC that both supports Standard 3.x, and ideally, you take one that is programmable&lt;/li&gt;&#10;&lt;li&gt;If you take a programmable device, there&amp;rsquo;s an additional learning curve for software development, the ASIC-specific libraries you want to use, and possibly even the need for programmer hardware&lt;/li&gt;&#10;&lt;li&gt;You have to make sure that power supply and cable are compatible to your USB-PD sink&amp;rsquo;s needs. Cables for high currents are expensive, too&lt;/li&gt;&#10;&lt;li&gt;USB-C port is miniaturized. SMD soldering and entry-level soldering stations might not become friends ever, so you should bring some experience on that topic.&lt;/li&gt;&#10;&lt;li&gt;Barrel-jacks are just round and thus much easier to mount in an enclosure than a PCB with attached USB-C socket that also has to withstand considerable physical strains.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;On the other hand, using USB-PD makes much sense when you&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;have a mobile gadget that you want to take along with you, or that is often connected to and disconnected from power sources&lt;/li&gt;&#10;&lt;li&gt;want the flexibility of battery-powered devices: Just connect a compatible power bank and off you go&lt;/li&gt;&#10;&lt;li&gt;need a data connection to your device anyways&lt;/li&gt;&#10;&lt;li&gt;have special constraints on your power supply and want very specific voltage/currents to be delivered&lt;/li&gt;&#10;&lt;li&gt;want easy overcurrent and overvoltage protection out of the box&lt;/li&gt;&#10;&lt;/ul&gt;&#10;</description></item><item><title>Metabo / Cordless Alliance Systems</title><link>https://blog.schallbert.de/en/no-can-use-metabo/</link><pubDate>Thu, 09 Dec 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/no-can-use-metabo/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/metabo-thumb.jpg"&#10; class="post-cover"&#10; alt="Metabo logo, image courtesy of Metabo"&#10; title="Metabo / Cordless Alliance Systems" /&gt;&#10;&lt;h2 id="power-source-for-anywhereamps"&gt;Power Source for AnywhereAmps&lt;/h2&gt;&#10;&lt;h3 id="status-quo"&gt;Status quo&lt;/h3&gt;&#10;&lt;p&gt;I have used Metabo / CAS (&lt;a href="https://cordless-alliance-system.de/en" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Cordless Alliance System&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;) batteries for both AnywhereAmps &lt;a href="https://blog.schallbert.de/en/projects/aa_alpha/"&gt;Alpha 1.0&lt;/a&gt; and &lt;a href="https://blog.schallbert.de/en/projects/aa_alpha_1_1/"&gt;Alpha 1.1&lt;/a&gt;. The latter already uses the power supervisor IC &lt;a href="https://blog.schallbert.de/en/configure-max1756x/"&gt;MAX17562&lt;/a&gt;, protecting both battery and circuits from reverse current, overcurrent, and undervoltage.&lt;/p&gt;&#10;&lt;h3 id="problem"&gt;Problem&lt;/h3&gt;&#10;&lt;p&gt;Although using the power supervisor IC was a big leap forward, still it would be better if I was able to read battery &lt;a href="https://en.wikipedia.org/wiki/State_of_charge" target="_blank" rel="noopener noreferrer" class="external-link"&gt;state of charge&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; directly. This wouldn&amp;rsquo;t just enable safe operation, but also allow auto-switching the amplifier off when the battery goes low without side effects like auto-restart when battery voltage jumps back up when load current drops on shutdown.&lt;/p&gt;&#10;&lt;h2 id="discussion-with-metabocas"&gt;Discussion with Metabo/CAS&lt;/h2&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/metabo.jpg" alt="Metabo logo"&gt;&lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;Metabo logo&lt;/span&gt;&lt;a&#10; href="https://www.metabo.com/de/de/info/aktuell/media/logos/"&#10; class="attr-link"&#10; aria-label="Attribution 1"&#10; &gt;&#10; &lt;sup class="attr-id"&gt;[1]&lt;/sup&gt;&#10; &lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#10;That&amp;rsquo;s why I contacted the Metabo CAS team, asking whether I could get some support and the specifications for communicating with the battery pack.&#10;I was quite happy to see that they respond really quickly, and soon I was on a phone call discussing the matter.&lt;/p&gt;&#10;&lt;h3 id="outcome"&gt;Outcome:&lt;/h3&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Usage of CAS batteries in other devices than the alliance&amp;rsquo;s power tool families is considered a &amp;ldquo;hack&amp;rdquo; and thus wouldn&amp;rsquo;t be approved by Metabo&lt;/li&gt;&#10;&lt;li&gt;Metabo is interested in cordless tools manufacturers to join their battery alliance, but my application in an amplifier is just too far away (Metabo&amp;rsquo;s slogan once was &lt;em&gt;&amp;ldquo;Work, don&amp;rsquo;t play&amp;rdquo;&lt;/em&gt;)&lt;/li&gt;&#10;&lt;li&gt;Metabo would expect me to produce 10k+ units per year before I could joind the alliance - which is just unrealistic&lt;/li&gt;&#10;&lt;li&gt;I&amp;rsquo;d have to understand, but sharing the specifications and allowing me to use the interfaces would draw some of their resources while they wouldn&amp;rsquo;t have any expectations on return of invest&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;As disappointing 😔 as this is, it didn&amp;rsquo;t come totally unexpected. The engineer on the phone made time for me. He told me that they&amp;rsquo;d appreciate my enthusiasm about their battery systems very much and that I shouldn&amp;rsquo;t feel discouraged.&lt;/p&gt;&#10;&lt;p&gt;Well. Let&amp;rsquo;s talk about an&lt;/p&gt;&#10;&lt;h2 id="alternative"&gt;Alternative&lt;/h2&gt;&#10;&lt;p&gt;I know only one other power standard also featuring battery powered systems that meets my expectations below.&lt;/p&gt;&#10;&lt;h3 id="requirements"&gt;Requirements&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&amp;ldquo;open enough&amp;rdquo; for my usage&lt;/li&gt;&#10;&lt;li&gt;safe&lt;/li&gt;&#10;&lt;li&gt;of high quality&lt;/li&gt;&#10;&lt;li&gt;meets my purpose&amp;rsquo;s voltage and current demands&lt;/li&gt;&#10;&lt;li&gt;widely available&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/USB_Type-C_Charging_Logo.svg/330px-USB_Type-C_Charging_Logo.svg.png" alt="USB-PD logo"&gt;&lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;USB-PD logo&lt;/span&gt;&lt;a&#10; href="https://commons.wikimedia.org/wiki/File:USB_Type-C_Charging_Logo.svg#file"&#10; class="attr-link"&#10; aria-label="Attribution 2"&#10; &gt;&#10; &lt;sup class="attr-id"&gt;[2]&lt;/sup&gt;&#10; &lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#10;&lt;h3 id="usb-power-delivery"&gt;USB Power Delivery&lt;/h3&gt;&#10;&lt;p&gt;The standard is called &lt;a href="https://en.wikipedia.org/wiki/USB_hardware#USB_power_delivery" target="_blank" rel="noopener noreferrer" class="external-link"&gt;USB Power Delivery&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Although it went through my mind earlier, I never wanted to actually use this because it involves massive additional work.&lt;/p&gt;&#10;&lt;p&gt;USB Power Delivery uses a complex protocol to establish a power contract between source and sink devices. All this has to be developed, a specialized IC has to be selected and peripheral circuits need to be designed for this to make it work with my setup.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-12-09_st_stusb4500.jpg" alt="STUSB4500 image example for USB-PD sink IC"&gt;&lt;/figure&gt;&#10;&lt;p&gt;😱 Oh no, they are out of stock!&lt;/p&gt;&#10;&lt;p&gt;I&amp;rsquo;ll write a separate blog post once I got a grip on this new subject.&lt;/p&gt;&#10;</description></item><item><title>Configure MAX1756x for your application</title><link>https://blog.schallbert.de/en/configure-max1756x/</link><pubDate>Sat, 04 Dec 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/configure-max1756x/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-12-04_max1756x-thumb.jpg"&#10; class="post-cover"&#10; alt="Max1756x typicall application, image courtesy of Maxim Integrated"&#10; title="Configure MAX1756x for your application" /&gt;&#10;&lt;h2 id="power-supervisor-configuration-made-simple"&gt;Power Supervisor configuration made simple&lt;/h2&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-12-04_max17562.jpg" alt="MAX17562 on my printed circuit board for AnywhereAmps"&gt;&lt;/figure&gt;&#10;I use MAX17562 ICs in my design for &lt;a href="https://blog.schallbert.de/en/anywhereamps-get-pcb/"&gt;AnywhereAmps Alpha 1.1&lt;/a&gt;. For you, I made a quick summary of MAX1756x features and how to configure them. 🙂&lt;/p&gt;&#10;&lt;p&gt;Of course, the datasheet is the master of all information I provide below. I&amp;rsquo;ll just add some design considerations, details on my way of using it, and provide application proposals.&lt;/p&gt;&#10;&lt;h3 id="what-are-they-again"&gt;What are they, again?&lt;/h3&gt;&#10;&lt;p&gt;&lt;a href="https://www.analog.com/en/products/MAX17562.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;MAX1756x&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; is an adjustable overvoltage/ undervoltage and overcurrent protector IC. It is available in three different versions for handling over current events:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;MAX17561: Will turn off in an overcurrent event and autoretry after typically &lt;code&gt;600ms&lt;/code&gt;&lt;/li&gt;&#10;&lt;li&gt;MAX17562: Will latch off in an overcurrent event; restart after enable cycle&lt;/li&gt;&#10;&lt;li&gt;MAX17563: Will continue normal operation with current limiter active (dissipates heat)&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Both versions are limiting overcurrent events to the configured current limit.&lt;/p&gt;&#10;&lt;h3 id="use-my-max1756x-application-tool"&gt;Use my MAX1756x application tool!&lt;/h3&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-12-04_spreadsheet.jpg" alt="Max1756x application calculator spreadsheet"&gt;&lt;/figure&gt;&#10;To simplify usage of Max1756x IC in your application, you may use my &lt;a href="https://github.com/Schallbert/AnywhereAmps/blob/master/Preamp/max1756x_application_calculator.xlsx" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Max1756x application calculator spreadsheet&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#10;&lt;h3 id="max1756x-current-limiter--overload-detector"&gt;MAX1756x current limiter / overload detector&lt;/h3&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-12-04_seti.jpg" alt="SETI resistor configuration from MAX1756x datasheet"&gt;&lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;Courtesy of Maxim Integrated: SETI resistor config&lt;/span&gt;&lt;a&#10; href="https://www.analog.com/media/en/technical-documentation/data-sheets/MAX17561-MAX17563.pdf"&#10; class="attr-link"&#10; aria-label="Attribution 1"&#10; &gt;&#10; &lt;sup class="attr-id"&gt;[1]&lt;/sup&gt;&#10; &lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#10;The IC features an adjustable current limiter and overcurrent detection (&lt;code&gt;SETI&lt;/code&gt;). When current increases above &lt;code&gt;SETI&lt;/code&gt; threshold, it is limited to the set value. For MAX17561 and MAX17562: In case this condition remains true for more than typically &lt;code&gt;20.7ms&lt;/code&gt; blanking time, the device will turn off the load circuit. As the MAX17563 will continue normal operation, its power dissipation might lead to over temperature shutdown at some point.&lt;/p&gt;&#10;&lt;p&gt;This is how you configure the current limiter / overload detection using the &lt;code&gt;SETI&lt;/code&gt; input:&#10;Select a resistor based on the curve on the right (taken from the datasheet) and connect it to &lt;code&gt;SETI&lt;/code&gt; and &lt;code&gt;GND&lt;/code&gt;. For AnywhereAmps Alpha 1.2, I&amp;rsquo;m using a &lt;code&gt;3k3&lt;/code&gt; resistor to get a current limit of &lt;code&gt;~3.5A&lt;/code&gt;.&lt;/p&gt;&#10;&lt;h3 id="max1756x-undervoltage-configuration"&gt;MAX1756x undervoltage configuration&lt;/h3&gt;&#10;&lt;p&gt;The IC features undervoltage lockout (&lt;code&gt;UVLO&lt;/code&gt;). When voltage decreases below &lt;code&gt;UVLO&lt;/code&gt; threshold for typically &lt;code&gt;16.7ms&lt;/code&gt;, the device&amp;rsquo;s power transistors will switch off the load circuit. Internally, the IC will compare the input voltage at the &lt;code&gt;UVLO&lt;/code&gt; pin with the reference voltage &lt;code&gt;Vbg = 1.2V&lt;/code&gt;. To set the undervoltage lockout threshold, use a voltage divider to keep &lt;code&gt;UVLO&lt;/code&gt; level above &lt;code&gt;Vbg&lt;/code&gt; during normal operation.&lt;/p&gt;&#10;&lt;h3 id="max1756x-overvoltage-configuration"&gt;MAX1756x overvoltage configuration&lt;/h3&gt;&#10;&lt;p&gt;The IC features overvoltage lockout (&lt;code&gt;OVLO&lt;/code&gt;). When voltage increases above &lt;code&gt;OVLO&lt;/code&gt; threshold for typically &lt;code&gt;16.7ms&lt;/code&gt;, the device&amp;rsquo;s power transistors will switch off the load circuit.&#10;It works identical to the undervoltage lockout with the only difference that voltage at the &lt;code&gt;OVLO&lt;/code&gt; pin should remain below &lt;code&gt;Vbg&lt;/code&gt; under normal operating conditions.&lt;/p&gt;&#10;&lt;h3 id="max1756x-reverse-current-protection"&gt;MAX1756x reverse current protection&lt;/h3&gt;&#10;&lt;p&gt;The IC&amp;rsquo;s reverse current protection can be enabled by pulling the &lt;code&gt;*RIEN&lt;/code&gt; pin to GND. If you intend to use this feature, remember to not accidentally use polarized bypass capacitors &lt;a href="https://blog.schallbert.de/en/capacitor-problems/#explosion"&gt;like I did&lt;/a&gt; at the IC&amp;rsquo;s input as they will explode if you apply reverse voltage.&lt;/p&gt;&#10;&lt;h3 id="fault-flag-capability"&gt;Fault *FLAG capability&lt;/h3&gt;&#10;&lt;p&gt;MAX1756x will indicate a power fault using its &lt;code&gt;*FLAG&lt;/code&gt; port under the following conditions:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Thermal overload&lt;/li&gt;&#10;&lt;li&gt;Overvoltage lockout defined through &lt;code&gt;OVLO&lt;/code&gt;&lt;/li&gt;&#10;&lt;li&gt;Reverse current: when reverse current protection &lt;code&gt;*RIEN&lt;/code&gt; has been enabled&lt;/li&gt;&#10;&lt;li&gt;Overload current defined through&lt;code&gt;SETI&lt;/code&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="recommendation-use-tvs-diodes"&gt;Recommendation: Use TVS diodes&lt;/h3&gt;&#10;&lt;p&gt;As the datasheet recommends and &lt;a href="https://blog.schallbert.de/en/capacitor-problems/#inductance"&gt;my experience from incidents in the past&lt;/a&gt; shows, I&amp;rsquo;d use &lt;code&gt;27V&lt;/code&gt; &lt;a href="https://blog.schallbert.de/en/knowledge-tvsdiodes/"&gt;Transient Voltage Suppressor diodes&lt;/a&gt; in parallel to both MAX1756x&amp;rsquo;s input and output ports. It will protect (any inductive) load circuitry from negative voltage spikes on shutdown and the IC itself from surge voltages when connecting a live power supply. Plus, it will clamp reverse input voltage to non-harmful levels.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-12-04_tvs.jpg" alt="TVS usage in MAX1756x circuit"&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;h3 id="recommendation-2-use-non-polarized-input-capacitors"&gt;Recommendation 2: Use non-polarized input capacitors&lt;/h3&gt;&#10;&lt;p&gt;To mitigate running reset issues when connected to &amp;ldquo;weak&amp;rdquo; power supplies or high-resistance input power wiring, use bigger non-polarized input bypass capacitors than you normally would (no, &lt;code&gt;100nF&lt;/code&gt; might not be enough!) - Especially if you drive capacitive or other loads that cause input surge currents.&lt;/p&gt;&#10;&lt;p&gt;For more information how to avoid problems here, please read my knowledge blog entry about &lt;a href="https://blog.schallbert.de/en/knowledge-inrushlimiters/"&gt;inrush current limiters&lt;/a&gt;.&lt;/p&gt;&#10;&lt;div class="footnotes" role="doc-endnotes"&gt;&#10;&lt;hr&gt;&#10;&lt;ol&gt;&#10;&lt;li id="fn:1"&gt;&#10;&lt;p&gt;Disclaimer: Although I thorougly read the datasheet and carefully added the data, I can of course take no guarantee whatsoever for the results you yield from this tool.&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;/div&gt;&#10;</description></item><item><title>Inrush Current Limiter - Part1</title><link>https://blog.schallbert.de/en/knowledge-inrushlimiters/</link><pubDate>Sun, 14 Nov 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/knowledge-inrushlimiters/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-14_bulb-thumb.jpg"&#10; class="post-cover"&#10; alt="Electrical light bulb, 12V 5W"&#10; title="Inrush Current Limiter - Part1" /&gt;&#10;&lt;h2 id="electronics-knowledge-article-inrush-current-limiters"&gt;Electronics knowledge article: Inrush current limiters&lt;/h2&gt;&#10;&lt;figure class="media-frame media-frame--center media-frame--video"&gt;&#10; &lt;div class="media-video"&gt;&lt;video controls&gt;&#10; &lt;source src="https://blog.schallbert.de/assets/video/posts/2021-11-14_inrush_current_limiter_relay.mp4" type="video/mp4"&gt;&#10; Your browser does not support the video tag.&#10; &lt;/video&gt;&lt;/div&gt;&#10; &lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;Action! Using a relay based inrush current limiter.&lt;/span&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#10;&lt;h3 id="what-is-it"&gt;What is it?&lt;/h3&gt;&#10;&lt;p&gt;A so-called &lt;a href="https://en.wikipedia.org/wiki/Inrush_current" target="_blank" rel="noopener noreferrer" class="external-link"&gt;inrush current&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; is the surge current that flows through a circuit directly after start-up until the circuit has reached its steady state. High inrush currents are often unwanted because they can overload circuit parts reducing their lifetime, create electromagnetic interferences, and cause a short-term voltage drop that may lead to running resets of a controlled device &lt;a href="https://blog.schallbert.de/en/capacitor-problems/"&gt;like described here&lt;/a&gt; or to other undesired behaviour.&lt;/p&gt;&#10;&lt;h3 id="example"&gt;Example&lt;/h3&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://upload.wikimedia.org/wikipedia/commons/f/f9/Lamp_inrush_current.png" alt="Wikipedia: inrush current of an incandescent light bulb"&gt;&lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;Oscillograph: inrush current of an incandescent light bulb&lt;/span&gt;&lt;a&#10; href="https://commons.wikimedia.org/wiki/File:Lamp_inrush_current.png#file"&#10; class="attr-link"&#10; aria-label="Attribution 1"&#10; &gt;&#10; &lt;sup class="attr-id"&gt;[1]&lt;/sup&gt;&#10; &lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#10;Incandescent light bulb: The pink line is the power supply&amp;rsquo;s output voltage, the yellow line traces current. You can see that the power supply decreases output voltage to reduce current draw during startup. After &lt;code&gt;~100ms&lt;/code&gt;, the voltage stabilizes as current flow through the lamp still reduces a bit while the filament slowly reaches steady state temperature.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-14_bulb_resistance.jpg" alt="Measuring the resistance of an incandescent light bulb"&gt;&lt;/figure&gt;&#10;&lt;h3 id="background"&gt;Background&lt;/h3&gt;&#10;&lt;p&gt;The bulb&amp;rsquo;s filament acts like a positive temerature coefficient (PTC) resistor: It has a very low resistance at room temperature and a much higher resistance at its normal operating temperature of &lt;a href="https://hypertextbook.com/facts/1999/AlexanderEng.shtml" target="_blank" rel="noopener noreferrer" class="external-link"&gt;~3300K&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&#10;A small experiment proves this:&#10;If I take a &lt;code&gt;116W&lt;/code&gt; halogen incandescent light bulb, its resistance in &amp;ldquo;steady state&amp;rdquo; at &lt;code&gt;230V&lt;/code&gt; is around \(R_{steady} = \frac{U^2}{P} = 456{Ohm}\).&#10;When I take its resistance using a multimeter in the switched-off state, I measure \(R_{off} = 38.6{Ohm}\).&#10;While this lamp normally consumes \(I_{steady} = 0.5A\) of current, at the moment I switch it on, it will draw about \(I_{inrush} = 6A\) which is 12 times as much!&lt;/p&gt;&#10;&lt;h2 id="inrush-current-limiter-circuits"&gt;Inrush current limiter circuits&lt;/h2&gt;&#10;&lt;p&gt;Inrush current limiter circuits are quite often used in devices with big inductive or capacitive loads.&#10;&lt;a href="https://www.ti.com/lit/an/slvae30e/slvae30e.pdf" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Examples&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; are transformers, motors (inductive), power amplifiers, switching power suply (capacitive) etc.&lt;/p&gt;&#10;&lt;p&gt;There are &lt;a href="https://e2e.ti.com/blogs_/b/powerhouse/posts/powertips-how-to-limit-inrush-current-in-an-ac-dc-power-supply" target="_blank" rel="noopener noreferrer" class="external-link"&gt;several types of inrush current limiters (TI application note)&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; with varying complexity.&lt;/p&gt;&#10;&lt;h3 id="negative-temperature-coefficient-resistor-ntc--thermistor"&gt;Negative temperature coefficient resistor (NTC) / thermistor&lt;/h3&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--left"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/ntc.jpg" alt="Electric symbol of a Negative temperature-coefficient thermistor"&gt;&lt;/figure&gt;&#10;A negative temperature coefficient thermistor inrush current limiter is the simplest circuit in this comparison. It consists of only one additional part. The NTC&amp;rsquo;s resistance vs. temperature behavior is opposite to the one of the above incandescent light bulb example: its resistance reduces with increasing temperature, allowing more current to flow through a circuit.&lt;/p&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-14_NTC.jpg" alt="NTC curve example"&gt;&lt;/figure&gt;&#10;It is placed in series connection with the load. Most NTC&amp;rsquo;s resistance vs temperature behavior is logarithmic, so its resistance is by far lower at high temperatures. This way, it very effectively reduces inrush currents at the cost of additional power dissipation as the NTC will continue self-heating, keeping its low resistance.&#10;This kind of circuit is used where the additional power dissipation is not an issue, and where system complexity shall be kept low while cost efficiency is at its best.&lt;/p&gt;&#10;&lt;h3 id="limiter-using-a-start-up-relay"&gt;Limiter using a Start-up relay&lt;/h3&gt;&#10;&lt;p&gt;This circuit avoids the disadvantages of additional series resistance to a load by adding a power resistor and a relay. It is typically used in high-power DC supplies or sensitive devices like amplifiers.&#10;The relay contact is normally open and wired in parallel to the power resistor which has a value of typically &lt;code&gt;1...22Ohm&lt;/code&gt; depending on the load. Behind this, the load is connected which causes the inrush current to occur. For this example, I take a car&amp;rsquo;s light bulb as load. When switching the device on, the resistor will limit circuit current and voltage on the load side will gradually increase. Once the voltage at the NPN &lt;code&gt;BC337&lt;/code&gt; transistor&amp;rsquo;s base is high enough, it will switch on, allowing current to flow through the relay coil which then short-circuits the power resistor so that the load can unleash its full power potential.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-14_relay.jpg" alt="Circuit plan for a start-up relay inrush current limiter"&gt;&lt;/figure&gt;&#10;&lt;p&gt;Calculation of &lt;code&gt;R2, R3&lt;/code&gt; depends on the steady state voltage you get behind &lt;code&gt;R1&lt;/code&gt; when relay coil is off, the characteristics of the transistor you choose, and the current the relay needs to work properly. In the example I chose&lt;code&gt;R2 = 1kOhm&lt;/code&gt; as I need the transistor to safely drive &lt;code&gt;~40mA&lt;/code&gt; to the relay, so I couldn&amp;rsquo;t select any higher value having &lt;code&gt;BC337&lt;/code&gt;&amp;rsquo;s current amplification value in mind. But I didn&amp;rsquo;t want to have it switched on early, so I added &lt;code&gt;R3&lt;/code&gt;. The higher its value, the earlier the relay will activate, but choosing its value too low will reduce &lt;code&gt;BC337&lt;/code&gt;&amp;rsquo;s base voltage so much that it cannot even switch.&lt;/p&gt;&#10;&lt;p&gt;A similar circuit is used in this &lt;a href="https://www.elektronik-kompendium.de/public/schaerer/onilim.htm" target="_blank" rel="noopener noreferrer" class="external-link"&gt;application note for a toroidal transformer soft start&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Here&amp;rsquo;s how the circuit looks like in real life:&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-14_relay_circuit.jpg" alt="Start-up relay circuit on a breadboard"&gt;&lt;/figure&gt;&#10;I&amp;rsquo;ve taken the liberty to add a switch so controlling circuit power supply would become more comfortable to me. The relay features a freewheeling diode to protect the transistor from negative voltage spikes.&lt;/p&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-14_compare_inrush.jpg" alt="Comparison of inrush currents with and without limiter"&gt;&lt;/figure&gt;&#10;The inrush current issue is actually solved. The comparison (yellow line) shows an unregulated inrush current of &lt;code&gt;3.5A&lt;/code&gt;, while the limiter reduces it to &lt;code&gt;0.8A&lt;/code&gt; which is just slightly above nominal current. A power resistor with smaller value would have reduced this even more.&lt;/p&gt;&#10;&lt;p&gt;The green line indicates &lt;code&gt;BC337&lt;/code&gt;&amp;rsquo;s base voltage. You can see that it slowly increases (Oscilloscope accuracy at &lt;code&gt;40VPP&lt;/code&gt; is not the best), and will turn on the relay when current flow (yellow line) has stabilized.&lt;/p&gt;&#10;&lt;h3 id="soft-start-circuits--configurable-current-limiters"&gt;Soft-start circuits / configurable current limiters&lt;/h3&gt;&#10;&lt;p&gt;There are dedicated ICs that help soft-starting a system, depending on&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Wattage needs&lt;/li&gt;&#10;&lt;li&gt;Ramp up time&lt;/li&gt;&#10;&lt;li&gt;Slew rate constraints&lt;/li&gt;&#10;&lt;li&gt;Total current limit&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;In addition, there are different types of inrush current limiters to be selected based on your application:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Time-controlled: System is fully turned-on after a specified time (simple but dumb)&lt;/li&gt;&#10;&lt;li&gt;Voltage-controlled: System is fully switched on above a voltage trigger level (still simple, medium cost)&lt;/li&gt;&#10;&lt;li&gt;Current-controlled: Limits system current or switches system fully on based on current trigger level (likely more expensive)&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Thus, a fitting IC is to be selected. They may be called &lt;code&gt;Power Supervisors&lt;/code&gt;, &lt;code&gt;IC soft starter&lt;/code&gt;, &lt;code&gt;Supervisor &amp;amp; Reset IC&lt;/code&gt; or similar. They may even have internal switching power MOSFETs and use minimal peripheral circuitry. I&amp;rsquo;ve been working with &lt;a href="https://www.analog.com/en/products/MAX17562.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;MAX17562&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; for my &lt;a href="https://blog.schallbert.de/en/anywhereamps-get-pcb/#power-supervisor"&gt;evolution of AnywhereAmps&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Continue reading here: &lt;a href="https://blog.schallbert.de/en/inrushlimiter-circuits/"&gt;Inrush current limiters - Part2&lt;/a&gt;&lt;/p&gt;&#10;</description></item><item><title>Transient Voltage Suppressors</title><link>https://blog.schallbert.de/en/knowledge-tvsdiodes/</link><pubDate>Sat, 13 Nov 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/knowledge-tvsdiodes/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-02_tvs-thumb.jpg"&#10; class="post-cover"&#10; alt="Typical TVS voltage diagram"&#10; title="Transient Voltage Suppressors" /&gt;&#10;&lt;h2 id="electronics-knowledge-article-tvs-diode"&gt;Electronics knowledge article: TVS diode&lt;/h2&gt;&#10;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/tvs_diode.jpg" alt="Electric symbol for TVS diodes"&gt;&lt;/figure&gt;&#10;&lt;h3 id="what-is-it"&gt;What is it?&lt;/h3&gt;&#10;&lt;p&gt;A transient voltage suppressor diode protects a circuit from short-term voltage spikes. TVS diodes are available for different voltage settings, peak currents, and with uni- or bidirectional protection capability.&lt;/p&gt;&#10;&lt;h3 id="differences-between-tvs-and-zener-diodes"&gt;Differences between TVS and Zener diodes&lt;/h3&gt;&#10;&lt;p&gt;Like &lt;a href="https://en.wikipedia.org/wiki/Zener_diode" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Zener diodes&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, TVS diodes are normally operating in reverse bias direction. They also share the &lt;a href="https://electronics.stackexchange.com/questions/233600/differences-between-tvs-diode-and-zener-diodes-in-diagrams-and-in-practice" target="_blank" rel="noopener noreferrer" class="external-link"&gt;same electronics symbol&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;But while Zener diodes are designed to work at their precisely defined breakdown voltage with a constant control current in applications where voltage regulation is needed, TVS diodes normally operate below breakdown voltage as they are protective devices, &lt;a href="https://toshiba.semicon-storage.com/content/dam/toshiba-ss-v2/master/en/semiconductor/knowledge/e-learning/discrete/discrete-basic-chap2_en.pdf" target="_blank" rel="noopener noreferrer" class="external-link"&gt;clamping overvoltage spikes to acceptable levels&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. They are designed to withstand high peak pulse currents.&lt;/p&gt;&#10;&lt;h3 id="differences-between-tvs-and-schottky-diodes"&gt;Differences between TVS and Schottky diodes&lt;/h3&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/schottky_diode.jpg" alt="Schottky diode electronics symbol"&gt;&lt;/figure&gt;&#10;The symbol for &lt;a href="https://en.wikipedia.org/wiki/Schottky_diode" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Schottky diodes&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; is just slightly different to Zener/TVS diode&amp;rsquo;s. They commonly have a lower forward voltage than their silicon pendants and are known for their fast speed of switching. That&amp;rsquo;s why apart from rectifier circuits, they are often used in reverse voltage protection circuits. TVS diodes share the quick switching behavior and the low forward voltage, but unlike Schottkys they have a well defined reverse voltage threshold.&lt;/p&gt;&#10;&lt;h3 id="how-to-select-the-correct-tvs-for-your-application"&gt;How to select the correct TVS for your application&lt;/h3&gt;&#10;&lt;p&gt;For DC applications, a unidirectional TVS schould be fine to use. Select the Stand-off voltage of the TVS in a way that it is a little above your normal operating voltage. Then look at the clamping voltage you get further &amp;ldquo;down&amp;rdquo; the line. Is it still below your protected Circuit&amp;rsquo;s &amp;ldquo;Absolute Maximum Ratings&amp;rdquo;? If not, choose a different TVS, make some compromise with the voltage (but don&amp;rsquo;t exceed the breakdown voltage of the TVS), or use another transient suppressor device like a voltage dependent resistor or similar.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-02_tvs_diagram.jpg" alt="Typical TVS diode: Voltage/Current diagram"&gt;&lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;Typical TVS diode: Voltage/Current diagram&lt;/span&gt;&lt;a&#10; href="https://www.littelfuse.com/products/tvs-diodes.aspx"&#10; class="attr-link"&#10; aria-label="Attribution 1"&#10; &gt;&#10; &lt;sup class="attr-id"&gt;[1]&lt;/sup&gt;&#10; &lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;/p&gt;&#10;</description></item><item><title>Power supervisor MAX1756x on capacitive load</title><link>https://blog.schallbert.de/en/capacitor-problems/</link><pubDate>Tue, 02 Nov 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/capacitor-problems/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-02_ic-thumb.jpg"&#10; class="post-cover"&#10; alt="Image: MAX17562 with polarized capacitors on in- and output. This is fatal."&#10; title="Power supervisor MAX1756x on capacitive load" /&gt;&#10;&lt;p&gt;Argh, I killed parts of my &lt;a href="https://blog.schallbert.de/en/pcbs-arrived/"&gt;Power&amp;amp;Preamp circuit for AnywhereAmps Alpha&lt;/a&gt; today. During testing.&lt;/p&gt;&#10;&lt;h2 id="explosion"&gt;Incident&lt;/h2&gt;&#10;&lt;p&gt;I accidently switched VBat and GND on my PCB. You shouldn&amp;rsquo;t think this happens at all, but it did again. The power input/bypass capacitor blew up instantly but my supervisor chip protected the rest of the circuits.&lt;/p&gt;&#10;&lt;h2 id="repair-and-tests"&gt;Repair and tests&lt;/h2&gt;&#10;&lt;p&gt;After repairing with a ceramic capacitor, I continued some tests.&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Reverse polarity test - PASS&lt;/li&gt;&#10;&lt;li&gt;Hard short to GND test - PASS&lt;/li&gt;&#10;&lt;li&gt;Undervoltage lockout - PASS&lt;/li&gt;&#10;&lt;li&gt;Normal voltage retry - &amp;hellip;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h2 id="irregularity"&gt;Irregularity&lt;/h2&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-11-02_oszi.jpg" alt="Oscilloscope image of an unsuccessful switch-on try @18V, 5A current limit"&gt;&lt;/figure&gt;&#10;But then, when I raised voltage slowly to escape the undervoltage lockout the system wouldn&amp;rsquo;t turn on, but still current consumption went up. To analyze, I connected an oscilloscope to see what was going on. You can see that the power amp&amp;rsquo;s &lt;code&gt;&amp;gt;1400µF&lt;/code&gt; bulk capacitance acts like a soft short to GND so that the power supply voltage drops by &lt;code&gt;2V&lt;/code&gt; within &lt;code&gt;50µs&lt;/code&gt; to the undervoltage lockout trigger level. The supervisor IC then sheds the load, which makes the supply voltage jump back up. I suppose the ringing comes from the power supply&amp;rsquo;s regulator.&lt;/p&gt;&#10;&lt;p&gt;After the blanking time (datasheet MAX1756x) passes, it retries to switch on and the whole process starts over again.&lt;/p&gt;&#10;&lt;h2 id="inductance"&gt;Incident #2&lt;/h2&gt;&#10;&lt;p&gt;When I measured voltage at the VCC rail supplying preamp, power amp, and 9V voltage regulator during unsuccessful switch-on, I noticed that negative voltage spikes occur at around &lt;code&gt;-4V&lt;/code&gt; when the supervisor IC switches off, caused by the inductors in the power amp supply lines.&#10;While I was still wondering that these running resets might not be good, my preamp IC exploded. Hm.&lt;/p&gt;&#10;&lt;h2 id="what-i-learned"&gt;What I learned&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Never use a polarized capacitor as bulk/bypass &amp;ldquo;in front of&amp;rdquo; your protective circuits!&lt;/li&gt;&#10;&lt;li&gt;Use larger-than-100n bypass capacitors before voltage sensing devices when switched loads are capacitive. It helps stabilizing the voltage locally.&lt;/li&gt;&#10;&lt;li&gt;To protect the output side of the switch, add a Schottky or transient voltage suppressor (TVS) diode that clamps potentially harmful voltages&lt;/li&gt;&#10;&lt;li&gt;Limit in-rush current (&lt;a href="https://blog.schallbert.de/en/knowledge-inrushlimiters/"&gt;follow-up article&lt;/a&gt;) as a precaution. I&amp;rsquo;ll switch to &lt;code&gt;MAX17563&lt;/code&gt; for the next circuit revision. It has a programmable current limit so that input voltage doesn&amp;rsquo;t drop too low in the first place.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="protect-from-negative-voltage-spikes"&gt;Protect from negative voltage spikes&lt;/h3&gt;&#10;&lt;p&gt;For my application, a fast-switching clamp diode in Schottky design is enough because behind the MAX1756x IC, the circuit will not see overvoltage spikes but reverse voltage spikes (due to inductors in switching regulator and amp design) only. In &lt;a href="https://blog.schallbert.de/en/knowledge-tvsdiodes/"&gt;this article&lt;/a&gt;, I&amp;rsquo;ll explain the Transient Voltage Suppressors in detail.&lt;/p&gt;&#10;</description></item><item><title>My Printed Circuit Boards arrived!</title><link>https://blog.schallbert.de/en/pcbs-arrived/</link><pubDate>Sat, 16 Oct 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/pcbs-arrived/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-10-16_board-thumb.jpg"&#10; class="post-cover"&#10; alt="Freecad example design in 3D view"&#10; title="My Printed Circuit Boards arrived!" /&gt;&#10;&lt;p&gt;Sequel of &lt;a href="https://blog.schallbert.de/en/anywhereamps-get-pcb/"&gt;Printed Circuit Board design blog entry&lt;/a&gt;&lt;/p&gt;&#10;&lt;h2 id="arrival"&gt;Arrival&lt;/h2&gt;&#10;&lt;p&gt;After less than two weeks, my PCBs finally arrived along with all the parts needed to solder. I think they look beautiful :)&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-10-16_board-delivered.jpg" alt="Image: The PCB delivered as-is: green, pads tin-coated"&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;h2 id="soldering"&gt;Soldering: Step-by-step&lt;/h2&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-10-16_board-partial-test.jpg" alt="Image: cicruit testing"&gt;&lt;/figure&gt;&#10;I decided to solder the PCB in intervals, starting with the power management section. This way, I can test and correct the sections independently from each other. The SOIC (small outline integrated circuit) outline can still be hand-soldered easily when using lots of flux and a tool to &amp;ldquo;zoom in&amp;rdquo; for optical inspection. The only issue was that the IC has an &amp;ldquo;exposed pad&amp;rdquo;, i.e. there&amp;rsquo;s a ground pane on the bottom of the IC for better heat conduction. Soldering this was a nightmare. Finally I managed to fiddle solder through one of the bottom vias while keeping the iron at another via vor nearly a minute until it finally worked out fine.&#10;I&amp;rsquo;m pretty happy with the result, though. The system can be activated pulling *HVEN low, lighting up the LED. Tests for undervoltage/short circuit behavior went very well - the battery pack is protected now.&lt;/p&gt;&#10;&lt;p&gt;The Preamp section was easy to solder as well. Only the polarised capacitors proved to be so big that they covered much of the solder pad - this is a problem because the solder wouldn&amp;rsquo;t want to connect both cap and pad but just stick to one of these.&lt;/p&gt;&#10;&lt;p&gt;The 9V buck converter section - well&amp;hellip; I didn&amp;rsquo;t manage to solder it by hand at all. Quadruple Flat Packs without leads (QFN) are hard enough, but this one has an exposed pad as well and I had to prepare much ground area to get the heat away from this component, so I couldn&amp;rsquo;t even get the temperatues high enough. So I borrowed a Hot Air station, and after some anxious trying and drowning the components in flux, I finally did it.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-10-16_board-inspection.jpg" alt="Image: optical PCB inspection"&gt;&lt;/figure&gt;&#10;I used my digital camera with a macro objective to inspect the solder connections.&lt;/p&gt;&#10;&lt;h2 id="working"&gt;Working&lt;/h2&gt;&#10;&lt;p&gt;I build a lowpass and a highpass into the design to support 2-way speaker systems. To test the three preamp outputs (fullrange, lowpass, highpass), I directly connected the preamp to my speaker. It is not a good idea to do this, because the impedance of the speaker is far lower than the one of the OP-amp, so the output power is really low. Plus, the lower frequencies consume most power so the sound you hear is &amp;ldquo;high-pass&amp;rdquo; already and the low-pass volume is considerably less. Still, it works and I can adjust the gain as intended.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center media-frame--video"&gt;&#10; &lt;div class="media-video"&gt;&lt;video controls&gt;&#10; &lt;source src="https://blog.schallbert.de/assets/video/posts/2021-10-16_preamp-audio-demo.mp4" type="video/mp4"&gt;&#10; Your browser does not support the video tag.&#10; &lt;/video&gt;&lt;/div&gt;&#10; &lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;Preamp test&lt;/span&gt;&lt;/figcaption&gt;&lt;/figure&gt;&#10;&lt;p&gt;That&amp;rsquo;s it, my design is working! And remember, it is open source so you can download the project &lt;a href="https://github.com/Schallbert/AnywhereAmps/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;from my Github repository&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; and order your own copy.&lt;/p&gt;&#10;&lt;h2 id="lessons-learned"&gt;Lessons learned&lt;/h2&gt;&#10;&lt;p&gt;Here&amp;rsquo;s the pitfalls and design flaws that should be corrected for Revision2:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Prefer to place all components in the same direction (e.g. horizontally)&lt;/li&gt;&#10;&lt;li&gt;Use thermal reliefs as much as possible to mitigate soldering issues due to thermal conduction&lt;/li&gt;&#10;&lt;li&gt;Exposed pads: When hand soldering, the according solder pads must be extended to the sides of the IC for better solder heat conduction&lt;/li&gt;&#10;&lt;li&gt;Avoid QFN footprints when hand soldering. They are a pain.&lt;/li&gt;&#10;&lt;li&gt;If possible, don&amp;rsquo;t use footprint with &amp;ldquo;exposed pad&amp;rdquo; or &amp;ldquo;power pad&amp;rdquo;. A hot air station might be mandatory.&lt;/li&gt;&#10;&lt;li&gt;Try to leave more space between component pads, esp. if placed horizontally.&lt;/li&gt;&#10;&lt;li&gt;As SMD caps have more height, allow for bigger solder pads.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;</description></item><item><title>How to create better PCB designs</title><link>https://blog.schallbert.de/en/anywhereamps-get-pcb/</link><pubDate>Tue, 21 Sep 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/anywhereamps-get-pcb/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-10-16_board-delivered-thumb.jpg"&#10; class="post-cover"&#10; alt="Preamp prototype board soldered and working"&#10; title="How to create better PCB designs" /&gt;&#10;&lt;h2 id="motivation"&gt;Motivation&lt;/h2&gt;&#10;&lt;p&gt;I have my first request for a copy of AnywhereAmps Alpha. I wouldn&amp;rsquo;t want to spend another 10h in building it, so I decided to invest the time into speeding up the manufacturing process. I figured out I could save about an hour per amp if I had the circuit board produced for me. Unfortunately, switching the Circuit Board from hand cutting, milling, drilling, soldering to a PCB design cost me twice as much time compared to a full build already. And I don&amp;rsquo;t even know if this works yet. But let&amp;rsquo;s start at the beginning.&lt;/p&gt;&#10;&lt;h2 id="requirements-on-the-new-pcb"&gt;Requirements on the new PCB&lt;/h2&gt;&#10;&lt;p&gt;The PCB shall contain&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;the preamp circuit as designed for AnywhereAmps Alpha&lt;/li&gt;&#10;&lt;li&gt;the two-way crossover circuits as designed for &lt;em&gt;future&lt;/em&gt; AnywhereAmps Beta&lt;/li&gt;&#10;&lt;li&gt;a switching buck converter to provide 9V DC for the aux effects&lt;/li&gt;&#10;&lt;li&gt;a Power supervisory circuit protecting both battery and PCB from overload, short circuit, under voltage, reverse voltage&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;This way, I want to gradually professionalize the electronics. I intend to use the same PCB for any variant of AnywhereAmps. In addition, I would get rid of some external components that I had to manufacture and place by hand: Fuse, high-current capable power switch, the 9V regulator and its cooling, and some wiring.&lt;/p&gt;&#10;&lt;h2 id="component-selection"&gt;Component selection&lt;/h2&gt;&#10;&lt;h3 id="buck-converter"&gt;Buck Converter&lt;/h3&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-09-21_switching_efficiency.jpg" alt="Typical efficiency curve of a buck switching converter vs. load current"&gt;&lt;/figure&gt;&#10;I searched the web for a low-EMI (ElectroMagnetic Interference) switching buck converter with an output of &amp;gt;1A @9V. A linear regulator would have been less noisy, but at a nominal battery voltage of 18V I would have to cope with &amp;gt;9W of thermal losses worst case. Plus, this solution wouldn&amp;rsquo;t have been battery-saving at all. I selected a (costy) design that has all necessary components in-a-box so I just had to get the PCB layout right for EMI reduction. Add a couple of bypass capacitors and a resistor divider for the target voltage setpoint. Done! (I thought at that time. &lt;a href="https://blog.schallbert.de/en/pcbs-arrived/#soldering"&gt;Here&amp;rsquo;s how it actually turned out&lt;/a&gt;)&lt;/p&gt;&#10;&lt;h3 id="power-supervisor"&gt;Power Supervisor&lt;/h3&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-09-21_converter.jpg" alt="Integrated Buck Converter: Almost a cube"&gt;&lt;/figure&gt;&#10;The only protection for my amps was a fuse until now, its value set to the highest &amp;ldquo;normal&amp;rdquo; current I expected in the circuits. In the early prototype phases I killed some opamps by accidentally applying a reverse voltage. And I want to avoid to totally drain the battery pack when I forget to look at the charge indicators. So I selected a &lt;a href="https://blog.schallbert.de/en/configure-max1756x/"&gt;power supervisor IC&lt;/a&gt; that would detect any undervoltage or fault condition and protect both circuits and battery from damage.&lt;/p&gt;&#10;&lt;h3 id="passive-components-grouping"&gt;Passive components grouping&lt;/h3&gt;&#10;&lt;p&gt;I learned that manufacturing a PCB with many different parts would be more expensive and more prone to errors than using less different parts, even if the total number of parts increased this way. So I redesigned many values and re-did the simulation for the audio preamp with these new values. Finally, I was able to break it down from 8/5 to 3 different resistor and 3 different capacitor values!&lt;/p&gt;&#10;&lt;h3 id="capacitors-again"&gt;Capacitors, again&lt;/h3&gt;&#10;&lt;p&gt;I first used MLCC (Multilayer ceramic capacitors) in my design, both for bypass, and for the audio decoupling capacitors. After again reading the documents I pointed out in my &lt;a href="https://blog.schallbert.de/en/preamp-design-considerations/"&gt;preamp design considerations post&lt;/a&gt;, I realized that this capacitor design seems to have trouble with distortion on audio signals. The image below shows a comparison of different capacitor types and sizes. You see that film capacitors have the best performance and MLCCs are worst. As I wasn&amp;rsquo;t able to find film capacitors with the size I needed on a SMD footprint, and aluminium electrolytic caps were too large, I selected polarized tantalum capacitors. For the bypass uses I selected &lt;a href="https://passive-components.eu/why-low-esr-matters-in-capacitor-design/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;low-ESR&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; types.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-09-21_capcompare.jpg" alt="capacitor types compared for Audio usage"&gt;&lt;figcaption class="media-caption"&gt;&#10; &lt;span class="caption-text"&gt;TI Audio Design Journal: Capacitor types compared&lt;/span&gt;&lt;a&#10; href="https://www.ti.com/lit/an/slyt796/slyt796.pdf?ts=1630627717321&amp;amp;ref_url=https%253A%252F%252Fwww.startpage.com%252F"&#10; class="attr-link"&#10; aria-label="Attribution 1"&#10; &gt;&#10; &lt;sup class="attr-id"&gt;[1]&lt;/sup&gt;&#10; &lt;/a&gt;&lt;/figcaption&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;h2 id="circuit-design"&gt;Circuit design&lt;/h2&gt;&#10;&lt;p&gt;I chose the open-source software &lt;a href="https://www.kicad.org/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;KiCad&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; as an Electronic Design Automation tool and redrew all my existing circuit plans, adding the components described above. Look how the amplifier section only fills the right half of the schematics while the left half is devoted to power supply and supervisory circuits.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-09-21_schematics.jpg" alt="AnywhereAmps Power &amp;amp; Preamp circuit with KiCad"&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;p&gt;I tried to get the schematics as neat as possible to make them easy to read. I used global labels a lot and added connectors for simplified mounting.&lt;/p&gt;&#10;&lt;h2 id="pcb-design"&gt;PCB design&lt;/h2&gt;&#10;&lt;p&gt;This was the hardest part for me. I never designed a PCB for audio usage before, so I had to read a lot of guidelines before I started.&lt;/p&gt;&#10;&lt;h3 id="how-tos-and-tutorials"&gt;How tos and tutorials&lt;/h3&gt;&#10;&lt;p&gt;I list some of them below for your reference:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://www.allaboutcircuits.com/technical-articles/clean-power-for-every-ic-part-1-understanding-bypass-capacitors/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;noise on PCBs and how to avoid&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.renesas.com/en/document/apn/an1325-choosing-and-using-bypass-capacitors" target="_blank" rel="noopener noreferrer" class="external-link"&gt;how to best place bypass capacitors&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.autodesk.com/products/eagle/blog/8-pcb-grounding-rules/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;ground plane or not?&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://electronics.stackexchange.com/questions/52603/how-to-connect-ground-planes-together" target="_blank" rel="noopener noreferrer" class="external-link"&gt;how to handle different grounds for signals, power, etc.&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://resources.altium.com/p/top-5-pcb-design-guidelines-every-pcb-designer-needs-know" target="_blank" rel="noopener noreferrer" class="external-link"&gt;how to optimize parts placement for soldering&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.elektronikpraxis.vogel.de/pcb-design-regeln-sieben-suenden-beim-leiterplatten-design-a-356703/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;avoid these pitfalls when designing PCBs&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://www.multi-circuit-boards.eu/leiterplatten-design-hilfe/oberflaeche/leiterbahn-strombelastbarkeit.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;how much current can my track handle with this width?&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://community.aisler.net/c/knowledge-base/design-rules/41" target="_blank" rel="noopener noreferrer" class="external-link"&gt;some PCB design specifications for manufacturability&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&#10;I tried to apply those design guidelines the best I could.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="anywhereamps-pcb-explained"&gt;AnywhereAmps PCB explained&lt;/h3&gt;&#10;&lt;p&gt;The result after a couple of evenings:&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-09-21_pcb.jpg" alt="The PCB fully routed on a 2-layer design"&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;p&gt;I separated the PCB into three zones.&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Left: the 9V switching regulator, following its reference design (datasheet) it would create a current circle around itself using the bypass capacitors and cancel out most of the EMI. Look at the thermal design, it has a lot of copper and quite some vias to get the heat conducted away from the die.&lt;/li&gt;&#10;&lt;li&gt;Center: The power terminals and supervisory circuit. I placed solder jumpers to select the nominal battery voltage for the undervoltage detection.&lt;/li&gt;&#10;&lt;li&gt;Right and top: Preamp and analog signal circuitry, separated by the other electronics stuff using a thick ground track on the top copper and an own ground plane on the bottom. I hope this is enough&amp;hellip;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;As I&amp;rsquo;ll hand-solder the first prototypes to check if it all works OK, I used &amp;ldquo;big&amp;rdquo; 0805 SMD components. I increased the space in between them by more than the PCB specification would demand. Unfortunately, the highly integrated power ICs were not available in &amp;ldquo;hobby soldering electronics&amp;rdquo; sizes so I&amp;rsquo;ll have to go through some pain there :(&lt;/p&gt;&#10;&lt;p&gt;So this is how it will look like. The PCB size will be &lt;code&gt;45mm x 69mm&lt;/code&gt;.&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2021-09-21_pcb3d.jpg" alt="3D view of the PCB"&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;h2 id="contribute-or-download"&gt;Contribute or download&lt;/h2&gt;&#10;&lt;p&gt;All the CAD models and schematics are open source and available for download and your contributions on my &lt;a href="https://github.com/Schallbert/AnywhereAmps/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;dedicated Github repository&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Up next: &lt;a href="https://blog.schallbert.de/en/pcbs-arrived/"&gt;PCB delivered and soldered&lt;/a&gt;&lt;/p&gt;&#10;</description></item><item><title>Preamp design considerations</title><link>https://blog.schallbert.de/en/preamp-design-considerations/</link><pubDate>Wed, 25 Aug 2021</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/preamp-design-considerations/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/circuit_board_soldered-thumb.jpg"&#10; class="post-cover"&#10; alt="Preamp prototype board soldered and working"&#10; title="Preamp design considerations" /&gt;&#10;&lt;h2 id="decoupling-capacitor-selection"&gt;Decoupling capacitor selection&lt;/h2&gt;&#10;&lt;p&gt;Some tech deep-dive background information about how I selected components for my preamp circuit board.&lt;/p&gt;&#10;&lt;h3 id="why-decoupling-is-needed"&gt;Why decoupling is needed&lt;/h3&gt;&#10;&lt;p&gt;By decoupling, I specifically mean direct current (DC) decoupling in this case.&#10;The preamp needs to be decoupled both from the source (the musical instrument) and the sink (the power amplifier).&#10;This has multiple reasons:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;the supply voltages of the three partners may differ (e.g. 9V guitar phantom, 18V preamp, 52V power amp) and I don&amp;rsquo;t want to accidentally short-circuit one of them&lt;/li&gt;&#10;&lt;li&gt;Output impedance, I mean the load capacity of the output stage might be limited. If I connect a low input resistance e.g. directly to a guitar&amp;rsquo;s pickup, I might not get any signal at all because the source is too weak to power it correctly.&lt;/li&gt;&#10;&lt;li&gt;Noise reduction through electric coupling&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="why-capacitors-can-do-the-job"&gt;Why capacitors can do the job&lt;/h3&gt;&#10;&lt;p&gt;There are multiple ways of electrically decoupling circuits. You can use a &lt;a href="https://en.wikipedia.org/wiki/Opto-isolator" target="_blank" rel="noopener noreferrer" class="external-link"&gt;photocoupler&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; to totally (i.e. galvanically) separate two circuits from each other while only the signal is passed between the circuits, or - in my case - a capacitor to only let alternating currents pass, and to block constant current altogether.&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;How does this work?&lt;/em&gt;, you ask?&#10;Well, a capacitor acts a bit like a water tank. If you apply a constant voltage (pressure), the tank will flood to a certain degree. When this level is reached, there&amp;rsquo;s no flow (current) anymore, neither in nor out. But if you now vary the voltage around this static level (water pressure variation), you will measure some medium (current) flowing in and out of the tank again.&lt;/p&gt;&#10;&lt;p&gt;It&amp;rsquo;s the same with the capacitor. If you connect it in series to a sink, it will only pass current over when the input voltage level is changing.&lt;/p&gt;&#10;&lt;h2 id="decoupling-capacitor-type"&gt;Decoupling Capacitor type&lt;/h2&gt;&#10;&lt;p&gt;Multilayer Ceramic, Polypropylene, Electrolytic&amp;hellip;? After reading &lt;a href="https://www.ti.com/lit/an/slyt796/slyt796.pdf?ts=1630627717321&amp;amp;ref_url=https%253A%252F%252Fwww.startpage.com%252F" target="_blank" rel="noopener noreferrer" class="external-link"&gt;this guide&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; from Texas Instruments, I understood this document is all about distortion. Distortion would hit the hardest on the instrument input before the preamp, because this will be amplified by both amp stages. When using an electrolytic capacitor, there should be a voltage bias applied to reduce distortion in the low frequency range. With my design, the bias voltage is &lt;code&gt;1/2&lt;/code&gt; of &lt;code&gt;VCC&lt;/code&gt;, so even higher than the &lt;code&gt;5V&lt;/code&gt; used in the guide - I think, I&amp;rsquo;ll be fine with a &amp;ldquo;cheap&amp;rdquo; polarized Aluminium cap on the &lt;a href="https://en.wikipedia.org/wiki/Total_harmonic_distortion" target="_blank" rel="noopener noreferrer" class="external-link"&gt;THD+n&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; side.&lt;/p&gt;&#10;&lt;p&gt;There&amp;rsquo;s another thing about MLCCs I noticed myself: With loudspeakers disconnected at high preamp gain, the power amps I&amp;rsquo;m using still play music! How&amp;rsquo;s that? The power amp board is using MLCCs which act like piezo actuators. Their vibration is amplified by the PCB they are mounted on which gives a proper sound level. Crazy. For more geeky details, have a look at &lt;a href="https://www.edn.com/power-tip-49-avoid-these-common-mlcc-pitfalls/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;EDN&amp;rsquo;s blog post&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; or - again a &lt;a href="https://e2e.ti.com/blogs_/b/powerhouse/posts/how-to-reduce-acoustic-noise-of-mlccs-in-power-applications" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Texas Instruments guide&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h3 id="capacitor-size"&gt;Capacitor size&lt;/h3&gt;&#10;&lt;p&gt;To judge capacitor size, I had to take a couple of aspects into account:&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;A bigger capacitor will lower my bottom end cutoff frequency&lt;/li&gt;&#10;&lt;li&gt;A bigger capacitor will put more load on the input source due to charge losses&lt;/li&gt;&#10;&lt;li&gt;A bigger capacitor will cost more, especially the high-quality ones.&lt;/li&gt;&#10;&lt;li&gt;A bigger capacitor might have a larger footprint.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;I wanted a lower cutoff of &lt;code&gt;&amp;lt;20Hz&lt;/code&gt; for full HiFi capability. As that&amp;rsquo;s the &lt;code&gt;-3dB&lt;/code&gt; point already, I chose it to be even lower at &lt;code&gt;15Hz&lt;/code&gt; calculated via \(f=\frac{1}{2 \pi RC}\). With an input impedance of &lt;code&gt;10kOhm&lt;/code&gt; (the value of the resistor clamping to virtual ground) I yield a target input capacitor size of &lt;code&gt;1µF&lt;/code&gt;.&#10;With this capacitor, the input source will be considerably more affected by the &lt;code&gt;10kOhms&lt;/code&gt; input resistor than by the capacitor with its low series resistance (&lt;a href="https://passive-components.eu/why-low-esr-matters-in-capacitor-design/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;ESR&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;) of some hundred mOhms, so the chosen value is fine.&lt;/p&gt;&#10;&lt;p&gt;For the output capacitor, the calculation is similar. The power stage has an input impedance of &lt;code&gt;20kOhm&lt;/code&gt;, so the lower cutoff frequency of &lt;code&gt;17Hz&lt;/code&gt; is reached wich a &lt;code&gt;0.47uF&lt;/code&gt; capacitor already. Anyways, to keep value differences at bay, I decided to go with the &lt;code&gt;1µF&lt;/code&gt; as well.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://blog.schallbert.de/en/projects/aa_alpha/"&gt;Back to Project main page&lt;/a&gt;&lt;/p&gt;&#10;</description></item><item><title>CarSubAmp</title><link>https://blog.schallbert.de/en/projects/carsubamp/</link><pubDate>Mon, 01 Jan 0001</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/en/projects/carsubamp/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/carsubamp/carsubamp-thumb.jpg"&#10; class="post-cover"&#10; alt="Car subwoofer as a Bass Combo"&#10; title="CarSubAmp" /&gt;&#10;&lt;h2 id="project-stats"&gt;project stats&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Difficulty: beginner 1/5&lt;/li&gt;&#10;&lt;li&gt;Cost: ~50€ without battery pack&lt;/li&gt;&#10;&lt;li&gt;Time: ~2h&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/carsubamp/carsubamp.jpg" alt="carsubamp"&gt;&lt;/figure&gt;&#10;The CarSubAmp was my first prototype for a really portable Bass Combo (Speaker cabinet + amplifier) that doesn&amp;rsquo;t even need a wall socket.&lt;/p&gt;&#10;&lt;h3 id="motivation"&gt;Motivation&lt;/h3&gt;&#10;&lt;p&gt;During Covid19 Pandemic, I enjoyed playing and excercising Bass outside in the Parks or on my balcony. Which is not a problem when wearing headphones and carrying a small preamp. But, there were occasions when I wanted to play along with, say, an Acoustic Guitar, or somebody would bring a Synth-App along with a MIDI Keyboard - and I was forced to use a small bluetooth speaker that neither had the output power nor the real-time feel.&lt;/p&gt;&#10;&lt;h3 id="problem"&gt;Problem&lt;/h3&gt;&#10;&lt;p&gt;My Bass amp is far from mobile. Weight: 18kg, size: huge, plus: It&amp;rsquo;s useless without a wall socket nearby.&lt;/p&gt;&#10;&lt;h3 id="dead-ends"&gt;Dead ends&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Instead of a Class-D amp I used an old Car Radio&amp;rsquo;s aux in, but it seems to have expected &amp;ldquo;Line&amp;rdquo; level which my bass couldn&amp;rsquo;t supply so the output was rarely audible. Additionally, the idle current draw was &amp;gt;0.5A so it would drain the battery all too quick.&lt;/li&gt;&#10;&lt;li&gt;I tried the power supply with a powerbank (Power-Delivery) first, but the integrated step-up converter didn&amp;rsquo;t seem to handle full-volume current surges, so the supply voltage dropped, leading to audible distortion.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="solution"&gt;Solution&lt;/h3&gt;&#10;&lt;p&gt;After some thinking, I came up with the idea of using a cordless multi tool&amp;rsquo;s Li-Ion battery that would be able to handle current surges easily, have a low weight, feature a battery level indicator and the typical protection circuits to avoid overload, short circuit, over temperature, exhaustive discharge etc. I wanted a &lt;a href="https://en.wikipedia.org/wiki/Class-D_amplifier" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Class-D&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; power amplifier matched to the voltage range of this battery to be as energy efficient and as lightweight&#10;as possible.&lt;/p&gt;&#10;&lt;h3 id="the-carsubamp"&gt;The &amp;ldquo;CarSubAmp&amp;rdquo;&lt;/h3&gt;&#10;&lt;p&gt;To check if the concept was viable, I took a used OEM car subwoofer assembly that normally goes into the spare wheel well, bought a 20W &lt;a href="https://www.adafruit.com/product/1752" target="_blank" rel="noopener noreferrer" class="external-link"&gt;amplifier developer board&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; and after soldering some components, adding a fuse and an 6.3mm input jack, my first prototype was ready to try. &lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/carsubamp/carsubamp_explained.jpg" alt="carsubamp components explained"&gt;&lt;/figure&gt;&lt;/p&gt;&#10;&lt;h2 id="project-summary"&gt;Project summary&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Very lightweight, &amp;lt;5kg&lt;/li&gt;&#10;&lt;li&gt;4Ohms Subwoofer assembly &amp;ldquo;ready to use&amp;rdquo;&lt;/li&gt;&#10;&lt;li&gt;vented design for better speaker efficiency&lt;/li&gt;&#10;&lt;li&gt;Sound is OK, but it&amp;rsquo;s clear that the assembly is not meant to be used as a full-frequency range speaker. Muffled.&lt;/li&gt;&#10;&lt;li&gt;Playing low notes (i.e. at or below &lt;code&gt;g1&lt;/code&gt;), the system would become noticeably quieter&lt;/li&gt;&#10;&lt;li&gt;Developer board comes without preamp, thus maximum volume a bit low already&lt;/li&gt;&#10;&lt;li&gt;Under high load, vented design &amp;ldquo;Bassreflex&amp;rdquo; leads to audible hissing noise&lt;/li&gt;&#10;&lt;li&gt;Due to its small diameter, the speaker would hit maximum excursion limits when playing Hammer-ons on low strings&lt;/li&gt;&#10;&lt;li&gt;All components fixed with hot melt or tape, thus not very durable&lt;/li&gt;&#10;&lt;li&gt;Assembly is sealed with glue, no way of permanently adding a case or enclosure for battery, amp, cables, or input jacks&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Altough this design had clear disadvantages, I actually enjoyed it a lot because for the first time, I could literally play anywhere and anytime I wanted. I even caught myself on the couch with this little amp although the &amp;ldquo;real&amp;rdquo; Amp was just one room away.&lt;/p&gt;&#10;&lt;p&gt;After some months carrying this thing around, 3 re-solderings of broken connections and glueing the battery back into place again and again, I decided not to stop with this prototype.&lt;/p&gt;&#10;</description></item></channel></rss>