‹ BackHN Continuity

Thread

Guitar amp and effects pedal built on the Waveshare ESP32-S3-Touch-AMOLED-2.06

163 points · 85 comments · arbayi

  1. nikanj · · focus · HN ↗
    ESP32 should not have enough compute to run A2-full. Does this actually run A2-lite? The github slop includes mentions of SlimmableContainer?
    1. dashersw · · focus · HN ↗
      That&#x27;s literally the title of my blog post at <a href="https:&#x2F;&#x2F;playtaurus.com&#x2F;blog&#x2F;running-nam-a2-full-natively-on-an-esp32-s3" rel="nofollow">https:&#x2F;&#x2F;playtaurus.com&#x2F;blog&#x2F;running-nam-a2-full-natively-on-... but no, it runs A2-full, because I wrote a custom kernel for it in assembly.

      S3 doesn&#x27;t have enough floating point processing power, so what I do is to split the model in two, run the model in series, and represent floating point values as block floating point, essentially compressing the floating point representations.

      The null test peak sits at -60dB in the worst case, in 193 different NAM profiles I tested, which is basically inaudible. You can listen to the different profiles here <a href="https:&#x2F;&#x2F;playtaurus.com&#x2F;blog&#x2F;running-nam-a2-full-natively-on-an-esp32-s3" rel="nofollow">https:&#x2F;&#x2F;playtaurus.com&#x2F;blog&#x2F;running-nam-a2-full-natively-on-... and listen to the difference between A2-full and A2-lite, vs A2-full and my approach.

      1. dashersw · · focus · HN ↗
        One small clarification, this approach isn&#x27;t really a &quot;model conversion&quot;. Current pedals on the market quantify the entire model, so you are essentially running a separate model. Here I use the same weights, but only change the floating point representation. That&#x27;s why the difference to A2-Full is basically inaudible. Mooer&#x27;s NAM conversion, for example, has a null test peak at -8dB. They also need to do this because of the 44.1kHz conversion, so it&#x27;s incomparable.
Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.