{"id":4596,"date":"2022-04-15T17:56:53","date_gmt":"2022-04-15T15:56:53","guid":{"rendered":"https:\/\/www.pschatzmann.ch\/home\/?p=4596"},"modified":"2022-04-15T18:14:10","modified_gmt":"2022-04-15T16:14:10","slug":"using-a-esp32-c3-with-my-arduino-audio-tools-library","status":"publish","type":"post","link":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/","title":{"rendered":"Using a ESP32-C3 with my Arduino Audio Tools Library"},"content":{"rendered":"<p>Today I was testing my <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-tools\">Arduino Audio Tools Library<\/a> with an <strong>ESP32-C3<\/strong> Processor. This is a  <strong>RISC\u00ad V Single\u00adCore CPU<\/strong> supporting 2.4 GHz Wi\u00adFi and Bluetooth\u00ae 5 (LE).<br \/>\nPlease note that it does not support classic Bluetooth, so <a href=\"https:\/\/github.com\/pschatzmann\/ESP32-A2DP\">A2DP<\/a> is not available!<br \/>\n<img decoding=\"async\" src=\"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3-300x300.jpg\" alt=\"\" width=\"70%\"  class=\"alignnone size-medium wp-image-4598\" srcset=\"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3-300x300.jpg 300w, https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3-150x150.jpg 150w, https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3-768x768.jpg 768w, https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3-120x120.jpg 120w, https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3.jpg 800w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>First I tried out my simple <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-tools\/tree\/main\/examples\/examples-stream\/streams-generator-i2s\">streams-generator-i2s<\/a> sketch and there were quite some <strong>bad surprises<\/strong>:<\/p>\n<ul>\n<li>The <strong>Log Level Info<\/strong> is completely disturbing the audio output. This is much worse then on a regular ESP32. Fixing this is easy, so I just changed the log level in the Sketch to <strong>Warning<\/strong>.<\/li>\n<li>The signal improved, only to break up after a few seconds again. The C3 should have a comparable <strong>floating point performance<\/strong> like the regular ESP32, but it seems the the calculation of the sine() function is much worse. This can be resolved by decreasing the sampling rate or changing the sine generator implementation to use a table based implementation (using the <a href=\"https:\/\/pschatzmann.github.io\/arduino-audio-tools\/html\/classaudio__tools_1_1_sine_from_table.html\">SineFromTable<\/a> class).<\/li>\n<\/ul>\n<p>Then I tried the <a href=\"https:\/\/github.com\/pschatzmann\/arduino-audio-tools\/tree\/main\/examples\/examples-player\/player-url-i2s\">URL Player<\/a> and that worked like a charm!<\/p>\n<p>The ESP32-C3 has only a limited number of output pins, so I changed the default assignments for that chip:<\/p>\n<pre><code>#define PIN_I2S_BCK 6\n#define PIN_I2S_WS 7\n#define PIN_I2S_DATA_OUT 8\n#define PIN_I2S_DATA_IN 9\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Today I was testing my Arduino Audio Tools Library with an ESP32-C3 Processor. This is a RISC\u00ad V Single\u00adCore CPU supporting 2.4 GHz Wi\u00adFi and Bluetooth\u00ae 5 (LE). Please note that it does not support classic Bluetooth, so A2DP is not available! First I tried out my simple streams-generator-i2s sketch [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4598,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[20,22],"tags":[],"class_list":["post-4596","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino","category-machine-sound"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Using a ESP32-C3 with my Arduino Audio Tools Library - Phil Schatzmann<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using a ESP32-C3 with my Arduino Audio Tools Library - Phil Schatzmann\" \/>\n<meta property=\"og:description\" content=\"Today I was testing my Arduino Audio Tools Library with an ESP32-C3 Processor. This is a RISC\u00ad V Single\u00adCore CPU supporting 2.4 GHz Wi\u00adFi and Bluetooth\u00ae 5 (LE). Please note that it does not support classic Bluetooth, so A2DP is not available! First I tried out my simple streams-generator-i2s sketch [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/\" \/>\n<meta property=\"og:site_name\" content=\"Phil Schatzmann\" \/>\n<meta property=\"article:published_time\" content=\"2022-04-15T15:56:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-15T16:14:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"pschatzmann\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"pschatzmann\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/\"},\"author\":{\"name\":\"pschatzmann\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"headline\":\"Using a ESP32-C3 with my Arduino Audio Tools Library\",\"datePublished\":\"2022-04-15T15:56:53+00:00\",\"dateModified\":\"2022-04-15T16:14:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/\"},\"wordCount\":200,\"commentCount\":6,\"publisher\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/c3.jpg\",\"articleSection\":[\"Arduino\",\"Machine Sound\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/\",\"name\":\"Using a ESP32-C3 with my Arduino Audio Tools Library - Phil Schatzmann\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/c3.jpg\",\"datePublished\":\"2022-04-15T15:56:53+00:00\",\"dateModified\":\"2022-04-15T16:14:10+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/c3.jpg\",\"contentUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/04\\\/c3.jpg\",\"width\":800,\"height\":800},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2022\\\/04\\\/15\\\/using-a-esp32-c3-with-my-arduino-audio-tools-library\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using a ESP32-C3 with my Arduino Audio Tools Library\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#website\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/\",\"name\":\"Phil Schatzmann Consulting\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\",\"name\":\"pschatzmann\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\",\"contentUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\",\"width\":305,\"height\":305,\"caption\":\"pschatzmann\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/pschatzmann.png\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using a ESP32-C3 with my Arduino Audio Tools Library - Phil Schatzmann","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/","og_locale":"en_US","og_type":"article","og_title":"Using a ESP32-C3 with my Arduino Audio Tools Library - Phil Schatzmann","og_description":"Today I was testing my Arduino Audio Tools Library with an ESP32-C3 Processor. This is a RISC\u00ad V Single\u00adCore CPU supporting 2.4 GHz Wi\u00adFi and Bluetooth\u00ae 5 (LE). Please note that it does not support classic Bluetooth, so A2DP is not available! First I tried out my simple streams-generator-i2s sketch [&hellip;]","og_url":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/","og_site_name":"Phil Schatzmann","article_published_time":"2022-04-15T15:56:53+00:00","article_modified_time":"2022-04-15T16:14:10+00:00","og_image":[{"width":800,"height":800,"url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3.jpg","type":"image\/jpeg"}],"author":"pschatzmann","twitter_card":"summary_large_image","twitter_misc":{"Written by":"pschatzmann","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#article","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/"},"author":{"name":"pschatzmann","@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"headline":"Using a ESP32-C3 with my Arduino Audio Tools Library","datePublished":"2022-04-15T15:56:53+00:00","dateModified":"2022-04-15T16:14:10+00:00","mainEntityOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/"},"wordCount":200,"commentCount":6,"publisher":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3.jpg","articleSection":["Arduino","Machine Sound"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/","url":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/","name":"Using a ESP32-C3 with my Arduino Audio Tools Library - Phil Schatzmann","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#primaryimage"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3.jpg","datePublished":"2022-04-15T15:56:53+00:00","dateModified":"2022-04-15T16:14:10+00:00","breadcrumb":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#primaryimage","url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3.jpg","contentUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/04\/c3.jpg","width":800,"height":800},{"@type":"BreadcrumbList","@id":"https:\/\/www.pschatzmann.ch\/home\/2022\/04\/15\/using-a-esp32-c3-with-my-arduino-audio-tools-library\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pschatzmann.ch\/home\/"},{"@type":"ListItem","position":2,"name":"Using a ESP32-C3 with my Arduino Audio Tools Library"}]},{"@type":"WebSite","@id":"https:\/\/www.pschatzmann.ch\/home\/#website","url":"https:\/\/www.pschatzmann.ch\/home\/","name":"Phil Schatzmann Consulting","description":"","publisher":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pschatzmann.ch\/home\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1","name":"pschatzmann","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png","url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png","contentUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png","width":305,"height":305,"caption":"pschatzmann"},"logo":{"@id":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2022\/08\/pschatzmann.png"}}]}},"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/4596","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/comments?post=4596"}],"version-history":[{"count":14,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/4596\/revisions"}],"predecessor-version":[{"id":4603,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/4596\/revisions\/4603"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/media\/4598"}],"wp:attachment":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/media?parent=4596"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/categories?post=4596"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/tags?post=4596"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}