{"id":6402,"date":"2017-05-03T17:00:50","date_gmt":"2017-05-03T07:00:50","guid":{"rendered":"http:\/\/freematics.com\/pages\/?page_id=6402"},"modified":"2024-05-17T12:49:10","modified_gmt":"2024-05-17T02:49:10","slug":"arduino-builder","status":"publish","type":"page","link":"https:\/\/freematics.com\/pages\/software\/arduino-builder\/","title":{"rendered":"Freematics Builder"},"content":{"rendered":"<p>Freematics Builder is a self-contained firmware building utility which integrates toolchains, hardware SDK, Arduino cores and Arduino libraries for Freematics products.<\/p>\n<p>Freematics Builder supports custom configuration UI created from a config file (<a href=\"https:\/\/github.com\/stanleyhuangyc\/Freematics\/blob\/master\/firmware_v5\/telelogger\/config.xml\" target=\"_blank\" rel=\"noopener noreferrer\">example<\/a>) resulting in additional compiler options applied during building process, which makes it a configuration tool for hardware products.<\/p>\n<h1>Features<\/h1>\n<ul>\n<li>Compiling Arduino sketches for AVR, ESP32 and ESP32-C3<\/li>\n<li>Uploading binary to generic Arduino boards and Freematics products<\/li>\n<li>Built-in serial monitor<\/li>\n<li>SPIFFS image creation and uploading<\/li>\n<li>Customizable building configuration UI<\/li>\n<\/ul>\n<h1>Screenshots<\/h1>\n\n\t\t<style type=\"text\/css\">\n\t\t\t#gallery-1 {\n\t\t\t\tmargin: auto;\n\t\t\t}\n\t\t\t#gallery-1 .gallery-item {\n\t\t\t\tfloat: left;\n\t\t\t\tmargin-top: 10px;\n\t\t\t\ttext-align: center;\n\t\t\t\twidth: 33%;\n\t\t\t}\n\t\t\t#gallery-1 img {\n\t\t\t\tborder: 2px solid #cfcfcf;\n\t\t\t}\n\t\t\t#gallery-1 .gallery-caption {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\t\t\t\/* see gallery_shortcode() in wp-includes\/media.php *\/\n\t\t<\/style>\n\t\t<div id='gallery-1' class='gallery galleryid-6402 gallery-columns-3 gallery-size-medium'><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon portrait'>\n\t\t\t\t<a href='https:\/\/freematics.com\/pages\/wp-content\/uploads\/2021\/10\/FB_screenshot.png' rel='shadowbox[sbalbum-6402];player=img;'><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2021\/10\/FB_screenshot-300x300.png\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2021\/10\/FB_screenshot-300x300.png 300w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2021\/10\/FB_screenshot-150x150.png 150w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2021\/10\/FB_screenshot-66x66.png 66w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2021\/10\/FB_screenshot.png 756w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/dt><\/dl><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon portrait'>\n\t\t\t\t<a href='https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-config.png' rel='shadowbox[sbalbum-6402];player=img;'><img loading=\"lazy\" decoding=\"async\" width=\"293\" height=\"300\" src=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-config-293x300.png\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-config-293x300.png 293w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-config.png 642w\" sizes=\"auto, (max-width: 293px) 100vw, 293px\" \/><\/a>\n\t\t\t<\/dt><\/dl><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon portrait'>\n\t\t\t\t<a href='https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-code.png' rel='shadowbox[sbalbum-6402];player=img;'><img loading=\"lazy\" decoding=\"async\" width=\"293\" height=\"300\" src=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-code-293x300.png\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-code-293x300.png 293w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-code.png 642w\" sizes=\"auto, (max-width: 293px) 100vw, 293px\" \/><\/a>\n\t\t\t<\/dt><\/dl><br style=\"clear: both\" \/><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon portrait'>\n\t\t\t\t<a href='https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-compiling.png' rel='shadowbox[sbalbum-6402];player=img;'><img loading=\"lazy\" decoding=\"async\" width=\"293\" height=\"300\" src=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-compiling-293x300.png\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-compiling-293x300.png 293w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-compiling.png 642w\" sizes=\"auto, (max-width: 293px) 100vw, 293px\" \/><\/a>\n\t\t\t<\/dt><\/dl><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon portrait'>\n\t\t\t\t<a href='https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-report.png' rel='shadowbox[sbalbum-6402];player=img;'><img loading=\"lazy\" decoding=\"async\" width=\"293\" height=\"300\" src=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-report-293x300.png\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-report-293x300.png 293w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-report.png 642w\" sizes=\"auto, (max-width: 293px) 100vw, 293px\" \/><\/a>\n\t\t\t<\/dt><\/dl><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon portrait'>\n\t\t\t\t<a href='https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-uploading.png' rel='shadowbox[sbalbum-6402];player=img;'><img loading=\"lazy\" decoding=\"async\" width=\"293\" height=\"300\" src=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-uploading-293x300.png\" class=\"attachment-medium size-medium\" alt=\"\" srcset=\"https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-uploading-293x300.png 293w, https:\/\/freematics.com\/pages\/wp-content\/uploads\/2017\/05\/arduino-builder-uploading.png 642w\" sizes=\"auto, (max-width: 293px) 100vw, 293px\" \/><\/a>\n\t\t\t<\/dt><\/dl><br style=\"clear: both\" \/>\n\t\t<\/div>\n\n<h1><a href=\"https:\/\/github.com\/stanleyhuangyc\/Freematics\/releases\/tag\/builder\" target=\"_blank\" rel=\"noopener\">Download Latest Release<\/a><\/h1>\n<h1>Changelog<\/h1>\n<p><strong>Version 1.3.1 (16 MAY 2024)<\/strong><\/p>\n<ul>\n<li>ESP32 Arduino core 2.0.16<\/li>\n<\/ul>\n<p><strong>Version 1.3.0 (9 MAR 2024)<\/strong><\/p>\n<ul>\n<li>ESP32 Arduino core 2.0.14<\/li>\n<li>ESP32 IDF 4.4.6<\/li>\n<\/ul>\n<p><strong>Version 1.2.3 (20 APR 2022)<\/strong><\/p>\n<ul>\n<li>ESP32 Arduino core 2.0.3-RC1<\/li>\n<\/ul>\n<p><strong>Version 1.2.2 (24 FEB 2022)<\/strong><\/p>\n<ul>\n<li>ESP32 Arduino core 2.0.2<\/li>\n<li>Fixed ESP32 SD card access issue<\/li>\n<\/ul>\n<p><strong>Version 1.2.1 (3 DEC 2021)<\/strong><\/p>\n<ul>\n<li>Fixed a couple of bugs that cause compiling issues<\/li>\n<li>Dropped support for ESP8266<\/li>\n<\/ul>\n<p><strong>Version 1.2 <\/strong>(28 OCT 2021)<\/p>\n<ul>\n<li>Added support for RISC-V based ESP32-C3<\/li>\n<li>Added application console window for compiler error messages<\/li>\n<li>Updated ESP32 Arduino core 2.0.0<\/li>\n<li>Updated ESP-IDF 4.4<\/li>\n<li>Updated AVR toolchain<\/li>\n<\/ul>\n<p><strong>Version 1.1.3 <\/strong>(15 SEP 2019)<\/p>\n<ul>\n<li>Updated ESP32 Arduino core<\/li>\n<li>Updated esptool<\/li>\n<li>Integrated ESP-MDF (WiFi mesh support for ESP32)<\/li>\n<li>Fixed occasional ESP32 reset issue<\/li>\n<li>Changed ESP32 default upload baud rate to 921600bps<\/li>\n<\/ul>\n<p><strong>Version 1.1.1 <\/strong>(30 MAY 2019)<\/p>\n<ul>\n<li>Updated ESP32 SDK<\/li>\n<li>Updated esptool<\/li>\n<li>CPU frequency configurable for ESP32<\/li>\n<\/ul>\n<p><strong>Version 1.1.0 <\/strong>(15 APR 2019)<\/p>\n<ul>\n<li>Updated ESP32 Arduino core<\/li>\n<li>Added auto-reset option<\/li>\n<li>Improved UI<\/li>\n<\/ul>\n<p><strong>Version 1.0.12 <\/strong>(24 JUL 2018)<\/p>\n<ul>\n<li>Updated ESP32 Arduino core<\/li>\n<li>Added image verification for ESP32<\/li>\n<li>Allowing uploading pre-built file system image<\/li>\n<\/ul>\n<p><strong>Version 1.0.11 <\/strong>(22 MAY 2018)<\/p>\n<ul>\n<li>Fixed partition setting for ESP32 with 16MB flash so SPIFFS partition can reach the end of flash<\/li>\n<\/ul>\n<p><strong>Version 1.0.10 <\/strong>(8 APR 2018)<\/p>\n<ul>\n<li>SPIFFS image creation and uploading for ESP8266 and ESP32<\/li>\n<li>Updated ESP32 Arduino core<\/li>\n<\/ul>\n<p><strong>Version 1.0.9 <\/strong>(29 MAR 2018)<\/p>\n<ul>\n<li>SPIFFS image creation<\/li>\n<\/ul>\n<p><strong>Version 1.0.8 <\/strong>(16 MAR 2018)<\/p>\n<ul>\n<li>Updated ESP-IDF SDK and ESP32 Arduino core (using 240Mhz clock)<\/li>\n<li>Updated ESP8266 Arduino core<\/li>\n<li>Updated ESPtool<\/li>\n<\/ul>\n<p><strong>Version 1.0.7 <\/strong>(16 JAN 2018)<\/p>\n<ul>\n<li>Fixed a serial monitor issue<\/li>\n<\/ul>\n<p><strong>Version 1.0.6 <\/strong>(28 NOV 2017)<\/p>\n<ul>\n<li>Added ESP8266 target<\/li>\n<\/ul>\n<p><strong>Version 1.0.5 <\/strong>(6 NOV 2017)<\/p>\n<ul>\n<li>Updated ESP32 support for Arduino IDE (80Mhz clock)<\/li>\n<li>Cleaned up ESP32 boards type list in Arduino IDE<\/li>\n<\/ul>\n<p><strong>Version 1.0.4 <\/strong>(22 OCT 2017)<\/p>\n<ul>\n<li>Updated ESP32 SDK and Arduino core<\/li>\n<li>Changed default ESP32 clock to 80Mhz (lower power consumption)<\/li>\n<li>Purging build folder during installation to ensure a clean first-time build<\/li>\n<li>Fixed the bug that source code can&#8217;t reside in folder with white space in name<\/li>\n<li>Fixed a GUI issue<\/li>\n<li>Updated Electron runtime<\/li>\n<\/ul>\n<p><strong>Version 1.0.3 <\/strong>(2 OCT 2017)<\/p>\n<ul>\n<li>Updated ESP32 SDK and Arduino core<\/li>\n<li>Changed ESP32 default upload baud rate to 115200bps<\/li>\n<li>Fixed several GUI issues<\/li>\n<\/ul>\n<p><strong>Version 1.0.2 <\/strong>(17 JUL 2017)<\/p>\n<ul>\n<li>Added uploading baud rate option<\/li>\n<li>Adjusted library path searching range in accordance to Arduino IDE<\/li>\n<\/ul>\n<p><strong>Version 1.0.1<\/strong> (3 JUL 2017)<\/p>\n<ul>\n<li>Added optional rebuild for library and core files<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Freematics Builder is a self-contained firmware building utility which integrates toolchains, hardware SDK, Arduino cores and Arduino libraries for Freematics products. Freematics Builder supports custom configuration UI created from a config file (example) resulting in additional compiler options applied during building process, which makes it a configuration tool for hardware products. Features Compiling Arduino sketches [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":5566,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-6402","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/pages\/6402","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/comments?post=6402"}],"version-history":[{"count":71,"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/pages\/6402\/revisions"}],"predecessor-version":[{"id":7914,"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/pages\/6402\/revisions\/7914"}],"up":[{"embeddable":true,"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/pages\/5566"}],"wp:attachment":[{"href":"https:\/\/freematics.com\/pages\/wp-json\/wp\/v2\/media?parent=6402"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}