{"id":6843,"date":"2025-10-05T16:53:39","date_gmt":"2025-10-05T14:53:39","guid":{"rendered":"https:\/\/www.pschatzmann.ch\/home\/?p=6843"},"modified":"2025-10-05T17:04:38","modified_gmt":"2025-10-05T15:04:38","slug":"arduino-emulator-major-architecture-improvements-and-raspberry-pi-support","status":"publish","type":"post","link":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/","title":{"rendered":"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em>October 2025<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;m excited to share some significant updates to the <a href=\"https:\/\/github.com\/pschatzmann\/Arduino-Emulator\">Arduino Emulator project<\/a> that make it more robust, easier to use, and better aligned with official Arduino standards. These changes represent a major step forward in cross-platform Arduino development.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udd04-arduino-core-as-official-submodule\">\ud83d\udd04 Arduino Core as Official Submodule<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The most significant architectural change is <strong>migrating to the official Arduino Core API as a git submodule<\/strong>. Previously, we maintained our own fork of the Arduino Core, but now we point directly to the <a href=\"https:\/\/github.com\/arduino\/ArduinoCore-API\">official Arduino Core API repository<\/a> maintained by Arduino.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"why-this-matters\">Why This Matters:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Always up-to-date<\/strong>: Automatic access to the latest Arduino API improvements and bug fixes<\/li>\n\n\n\n<li><strong>Perfect compatibility<\/strong>: 100% alignment with official Arduino function signatures and behavior  <\/li>\n\n\n\n<li><strong>Reduced maintenance<\/strong>: No need to manually sync API changes from upstream<\/li>\n\n\n\n<li><strong>Community trust<\/strong>: Using the same core API that millions of Arduino developers rely on<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This change ensures that your Arduino sketches will behave identically whether running on actual hardware or in the emulator.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83c\udf53-complete-raspberry-pi-hardware-support\">\ud83c\udf53 Complete Raspberry Pi Hardware Support<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The emulator now provides <strong>full hardware abstraction for Raspberry Pi<\/strong>, enabling real GPIO, SPI, I2C, and Serial communication through the actual hardware interfaces using the <strong>familiar Arduino API.<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"whats-new\">What&#8217;s New:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Real I2C communication<\/strong> via <code>\/dev\/i2c-1<\/code> (GPIO 2\/3)<\/li>\n\n\n\n<li><strong>Hardware SPI support<\/strong> using <code>\/dev\/spidev0.0<\/code> and <code>\/dev\/spidev0.1<\/code><\/li>\n\n\n\n<li><strong>Direct GPIO control<\/strong> through the modern <code>gpiod<\/code> interface<\/li>\n\n\n\n<li><strong>Serial port access<\/strong> to physical UART interfaces<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"build-with-hardware-support\">Build with Hardware Support:<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-comment\"># Enable Raspberry Pi hardware support<\/span>\ncmake -DUSE_RPI=ON ..\nmake -j4\n\n<span class=\"hljs-comment\"># Run with hardware access<\/span>\nsudo .\/examples\/i2c\/i2c\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\" id=\"before-vs-after\">Before vs. After:<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-comment\">\/\/ This I2C code now generates REAL signals on GPIO 2\/3<\/span>\nWire.begin();\nWire.beginTransmission(<span class=\"hljs-number\">0x3C<\/span>);\nWire.write(<span class=\"hljs-number\">0xA5<\/span>);\nWire.endTransmission();  <span class=\"hljs-comment\">\/\/ Actually sends data to hardware!<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83c\udfaf-redesigned-hardware-abstraction-layer\">\ud83c\udfaf Redesigned Hardware Abstraction Layer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The GPIO, SPI, and I2C implementations have been <strong>completely redesigned<\/strong> for consistency and extensibility:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"new-architecture-benefits\">New Architecture Benefits:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Unified interface<\/strong>: All hardware abstractions follow the same design patterns<\/li>\n\n\n\n<li><strong>Multiple backends<\/strong>: Easy switching between Mock, Raspberry Pi, FTDI, and Remote implementations  <\/li>\n\n\n\n<li><strong>Clean separation<\/strong>: Hardware-specific code is isolated and modular<\/li>\n\n\n\n<li><strong>Future-proof<\/strong>: Easy to add support for new platforms<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"implementation-options\">Implementation Options:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Mock<\/strong>: For testing and development without hardware<\/li>\n\n\n\n<li><strong>Raspberry Pi<\/strong>: Direct hardware access via Linux kernel interface<\/li>\n\n\n\n<li><strong>Remote<\/strong>: Communicate with real Arduino via UDP\/Serial<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udee0\ufe0f-simplified-cmake-integration\">\ud83d\udee0\ufe0f Simplified CMake Integration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Building Arduino sketches and integrating libraries is now <strong>incredibly simple<\/strong> with new CMake functions:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"arduino_sketch-function\">arduino_sketch() Function<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-comment\"># Before: Complex manual configuration<\/span>\nadd_executable(blink blink.ino)\nset_source_files_properties(blink.ino PROPERTIES LANGUAGE CXX)\ntarget_compile_options(blink <span class=\"hljs-keyword\">PRIVATE<\/span> -x c++)\ntarget_link_libraries(blink arduino_emulator)\n<span class=\"hljs-comment\"># ... many more lines ...<\/span>\n\n<span class=\"hljs-comment\"># After: One simple line!<\/span>\narduino_sketch(blink blink.ino)\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\" id=\"arduino_library-function\">arduino_library() Function<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-comment\"># Automatically download and integrate Arduino libraries<\/span>\narduino_library(sam <span class=\"hljs-string\">\"https:\/\/github.com\/pschatzmann\/arduino-SAM\"<\/span>)\narduino_sketch(my_project main.ino LIBRARIES sam)\n\n<span class=\"hljs-comment\"># Or use local libraries<\/span>\narduino_library(my_sensors .\/local\/sensors)\narduino_sketch(sensor_demo demo.ino LIBRARIES my_sensors Wire)\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udcda-comprehensive-documentation\">\ud83d\udcda Comprehensive Documentation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">All these improvements are thoroughly documented in our <strong><a href=\"https:\/\/github.com\/pschatzmann\/Arduino-Emulator\/wiki\">Wiki<\/a><\/strong>, including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Getting Started Guide<\/strong>: From zero to running sketches in minutes<\/li>\n\n\n\n<li><strong>Hardware Setup<\/strong>: Detailed Raspberry Pi configuration instructions  <\/li>\n\n\n\n<li><strong>CMake Reference<\/strong>: Complete function documentation with examples<\/li>\n\n\n\n<li><strong>Architecture Overview<\/strong>: Understanding the emulator&#8217;s design<\/li>\n\n\n\n<li><strong>Platform Support<\/strong>: Comparison of different backend implementations<\/li>\n\n\n\n<li><strong>Troubleshooting<\/strong>: Common issues and solutions<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\ude80-what-this-means-for-you\">\ud83d\ude80 What This Means for You<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">These changes make the Arduino Emulator more powerful and easier to use than ever:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-developers\">For Developers:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Faster iteration<\/strong>: Test Arduino code without uploading to hardware<\/li>\n\n\n\n<li><strong>Better debugging<\/strong>: Use full IDE debugging capabilities  <\/li>\n\n\n\n<li><strong>Cross-platform<\/strong>: Develop on Linux, macOS, or Windows<\/li>\n\n\n\n<li><strong>CI\/CD integration<\/strong>: Automated testing of Arduino projects<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-raspberry-pi-users\">For Raspberry Pi Users:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Real hardware testing<\/strong>: Verify I2C\/SPI communication with actual devices<\/li>\n\n\n\n<li><strong>Prototype faster<\/strong>: Test sensor integration before building circuits<\/li>\n\n\n\n<li><strong>Educational tool<\/strong>: Learn Arduino programming with immediate hardware feedback<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"for-project-maintainers\">For Project Maintainers:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Simplified builds<\/strong>: CMake integration reduces configuration complexity<\/li>\n\n\n\n<li><strong>Library ecosystem<\/strong>: Easy integration with existing Arduino libraries<\/li>\n\n\n\n<li><strong>Future-proof<\/strong>: Automatic compatibility with Arduino API evolution<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ufffd-ftdi-usb-to-gpio-bridge-support\">\ufffd FTDI USB-to-GPIO Bridge Support<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">One of the exciting next planned additions is <strong>comprehensive FTDI FT2232HL support<\/strong>, bringing real Arduino hardware capabilities to any desktop computer via USB.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"try-it-now\">Try It Now!<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ready to experience the improved Arduino Emulator? Check out the complete documentation in our <a href=\"https:\/\/github.com\/pschatzmann\/Arduino-Emulator\/wiki\">Wiki<\/a> and start building cross-platform Arduino applications today!<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">git <span class=\"hljs-keyword\">clone<\/span> --recursive https:<span class=\"hljs-comment\">\/\/github.com\/pschatzmann\/Arduino-Emulator.git<\/span>\ncd Arduino-Emulator\nmkdir build &amp;&amp; cd build\ncmake -DUSE_RPI=ON ..  <span class=\"hljs-comment\"># Enable Raspberry Pi support<\/span>\nmake -j4\n.\/examples\/blink\/blink  <span class=\"hljs-comment\"># Your first emulated Arduino sketch!<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><em>The Arduino Emulator continues to bridge the gap between embedded development and modern software practices. These improvements make it an even more powerful tool for Arduino developers working on complex, cross-platform projects.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>October 2025 I&#8217;m excited to share some significant updates to the Arduino Emulator project that make it more robust, easier to use, and better aligned with official Arduino standards. These changes represent a major step forward in cross-platform Arduino development. \ud83d\udd04 Arduino Core as Official Submodule The most significant architectural [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2884,"comment_status":"open","ping_status":"closed","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],"tags":[],"class_list":["post-6843","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support - 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\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support - Phil Schatzmann\" \/>\n<meta property=\"og:description\" content=\"October 2025 I&#8217;m excited to share some significant updates to the Arduino Emulator project that make it more robust, easier to use, and better aligned with official Arduino standards. These changes represent a major step forward in cross-platform Arduino development. \ud83d\udd04 Arduino Core as Official Submodule The most significant architectural [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/\" \/>\n<meta property=\"og:site_name\" content=\"Phil Schatzmann\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-05T14:53:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-05T15:04:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/04\/raspberry.png\" \/>\n\t<meta property=\"og:image:width\" content=\"200\" \/>\n\t<meta property=\"og:image:height\" content=\"252\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/\"},\"author\":{\"name\":\"pschatzmann\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"headline\":\"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support\",\"datePublished\":\"2025-10-05T14:53:39+00:00\",\"dateModified\":\"2025-10-05T15:04:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/\"},\"wordCount\":593,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#\\\/schema\\\/person\\\/73a53638a4e34e8373405fd737dac9b1\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/raspberry.png\",\"articleSection\":[\"Arduino\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/\",\"name\":\"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support - Phil Schatzmann\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/raspberry.png\",\"datePublished\":\"2025-10-05T14:53:39+00:00\",\"dateModified\":\"2025-10-05T15:04:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/raspberry.png\",\"contentUrl\":\"https:\\\/\\\/www.pschatzmann.ch\\\/wp-content\\\/uploads\\\/2021\\\/04\\\/raspberry.png\",\"width\":200,\"height\":252},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/2025\\\/10\\\/05\\\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.pschatzmann.ch\\\/home\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support\"}]},{\"@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":"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support - 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\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/","og_locale":"en_US","og_type":"article","og_title":"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support - Phil Schatzmann","og_description":"October 2025 I&#8217;m excited to share some significant updates to the Arduino Emulator project that make it more robust, easier to use, and better aligned with official Arduino standards. These changes represent a major step forward in cross-platform Arduino development. \ud83d\udd04 Arduino Core as Official Submodule The most significant architectural [&hellip;]","og_url":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/","og_site_name":"Phil Schatzmann","article_published_time":"2025-10-05T14:53:39+00:00","article_modified_time":"2025-10-05T15:04:38+00:00","og_image":[{"width":200,"height":252,"url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/04\/raspberry.png","type":"image\/png"}],"author":"pschatzmann","twitter_card":"summary_large_image","twitter_misc":{"Written by":"pschatzmann","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#article","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/"},"author":{"name":"pschatzmann","@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"headline":"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support","datePublished":"2025-10-05T14:53:39+00:00","dateModified":"2025-10-05T15:04:38+00:00","mainEntityOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/"},"wordCount":593,"commentCount":0,"publisher":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#\/schema\/person\/73a53638a4e34e8373405fd737dac9b1"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/04\/raspberry.png","articleSection":["Arduino"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/","url":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/","name":"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support - Phil Schatzmann","isPartOf":{"@id":"https:\/\/www.pschatzmann.ch\/home\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#primaryimage"},"image":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/04\/raspberry.png","datePublished":"2025-10-05T14:53:39+00:00","dateModified":"2025-10-05T15:04:38+00:00","breadcrumb":{"@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#primaryimage","url":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/04\/raspberry.png","contentUrl":"https:\/\/www.pschatzmann.ch\/wp-content\/uploads\/2021\/04\/raspberry.png","width":200,"height":252},{"@type":"BreadcrumbList","@id":"https:\/\/www.pschatzmann.ch\/home\/2025\/10\/05\/arduino-emulator-major-architecture-improvements-and-raspberry-pi-support\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pschatzmann.ch\/home\/"},{"@type":"ListItem","position":2,"name":"Arduino Emulator: Major Architecture Improvements and Raspberry Pi Support"}]},{"@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\/6843","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=6843"}],"version-history":[{"count":4,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/6843\/revisions"}],"predecessor-version":[{"id":6848,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/posts\/6843\/revisions\/6848"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/media\/2884"}],"wp:attachment":[{"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/media?parent=6843"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/categories?post=6843"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pschatzmann.ch\/home\/wp-json\/wp\/v2\/tags?post=6843"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}