Group assignment
Individual assignment
This week is exciting and an area I wanted to learn more about in detail. I usually used microcontrollers for educational use — ones already built to make robotics and coding easy for K-12 children, who are our main stakeholders in the robotics education domain.
I am very new in this, so I asked FabGPT to help me in comparing between the list provided and the selection process
| MCU | CPU / Class | Clock | Memory (on-chip) | Big “why” |
|---|---|---|---|---|
| AVR128DB32 | 8-bit AVR | 24 MHz | 128KB Flash, 16KB SRAM | Best practical 8-bit mixed-signal + 5V friendliness |
| RP2040 | Dual-core Cortex-M0+ | up to 133 MHz | 264KB SRAM | Best for timing + learning 32-bit MCU structure |
| ESP32-C3 | RISC-V + Wi-Fi/BLE | up to 160 MHz | ~400KB SRAM (family) | Best entry to IoT + wireless MCU datasheets |
| ESP32-C6 | RISC-V + Wi-Fi 6/BLE/802.15.4 | up to 160 MHz | 512KB SRAM (noted by vendor) | Best for modern multiprotocol (Thread/Zigbee) |
01 | I opened the datasheet from this link
02| One main piece of information I saw: "Code may be executed directly from external memory" / "Debug is available via the SWD interface"
04| This sentence is in English but I did not understand what it means: "The four bus masters can access any four different crossbar ports simultaneously, the bus fabric does not add wait states to any AHB-Lite slave access."
05| I looked on YouTube for a simple explanation and found this video
06| As I have limited time to allocate to this task, I searched for some explanation videos to make sure I understand the main concepts and that I'm ready for the next assignment from this link
07| I also shared the datasheet with FabGPT to create a one-pager highlighting important information for a user with no experience
09| and I asked to reference pages and section from the datasheet against each important information
01 | I will be using the ESP32-C3 SuperMini for this task, as we have more pieces of this in our lab, and for my project I will need two microprocessors communicating
04 | I read the ESP32-C3 SuperMini datasheet to get more details
05| I connected the microcontroller to a breadboard and made sure I do not connect two pins on the same pin line to avoid short circuits. I also added a 4-leg button
01| My first trial was with ESP IDE it include a blocks coding and python interface with USB and bloothoth pairing
02| I tried to connecte ESP32 C3 XIAO to it but the device was not connecting, I trying to trouble shoot that using Gemeni AI but couldnt get it to work
03| I moved to the second IDE which is VIPER I tryied to also connect my ESP32 C3 XIAO but had deficulties
04| Then I tried Thonny I first downloaded the App
06| I found that I needed to download microPhython frameworks to the microcontroler before sending any code
08| I tried a code for blinking LED and It worked
# LED light blinking
from machine import Pin
import time
# Replace 'X' with the GPIO number from your PCB design
led = Pin(X, Pin.OUT)
while True:
led.value(0) # Logic 0 = LED ON (Common Anode)
print("LED is ON")
time.sleep(0.5)
led.value(1) # Logic 1 = LED OFF
print("LED is OFF")
time.sleep(0.5)