Welcome Uri Shaked of Wokwi.com!
Wokwi is an online microcontroller simulator built to make it easy to test different code types / platforms like Arduino, MicroPython, Rust, C, and more!Hardware targets:ESP32 (and -C3, -S2)AVRRP2040It was initially built to scratch own itch and get rid of lots of hardware on his desk. It all started as an Arduino simulator.Chris has had bad simulation experiences in early 2000s (felt so fake)Uri has talked about the simulator on Embedded.fm as wellThe Wokwi simulator is built on mutliple layersSchematic layer creates a netlistAll the code get compiled to a binaryThe binaries get loaded into microcontroller core simulators (depending on the processor/instruction set)All things on github open sourceSimulating an LED is especially hard because of PWM and user screen refresh ratesAn often asked for feature is a built in debugger. Uri has been working on getting LLDB working.gdb compiled as x86 binary and then simulating the linux distributionFast LED Library and the code required to work with its timinglife of a packet:comple source code to hex filestarts AVR simulatorESP32 connection to the internetThe ESP32 uses the Xtensa instruction set (though the -C3 is a RISC V part)Espressif didn't publish the instruction set manualReverse engienering the wifi driver was tough and involved Ghidra, an open source reverse engineering tool. There is also an xtensa plugin in Ghidra and Uri was using gdb on the physical chip as well for comparison. Uri gave a talk about this at 2021 Hackaday RemoticonUri published the Gateway code (in Go) on Githubwokwi-gwYou can vote on what's next on the roadmap by joining the Wokwi ClubCortex-M4 parts are coming soonExtending Wokwi - how to create your own chipsWriting code for the external parts like an i2c keypad driverWhat is WebAssembly?How much is running in the browser vs talking back to the cloud?Micropython projects have very little interactions with the serversBlog post about Kasm Caching at the project / compiler levelpic simulabHow accurate should a simulator be?Hardware in the loop testingShow with Pete from Blue CloverShow with Akbar from Lager DataFor the Skull, Uri recorded signals with Saleae, added that as a simulated outputSaleae episodeJoin the Wokwi.com Club!Ask questions on the Wokwi DiscordMore than anything, Uri is trying to gather feedback, so please try it out and let him know what you think!