Skip to main content Skip to local navigation
Home » Category: 'arduino'

arduino

Exploring RISC-V Options: the RP2350 (Part 5 -- Disk Not Ejected Properly)

This is going to be a short post. Over the past couple of days I've been exploring the RP2350 and the Arduino IDE as a possible tool for teaching computer architecture. In the morning I've been turning on my macOS machine and have been faced with this: What's causing the issue? I'm not sure. But […]

Exploring RISC-V Options: the RP2350 (Part 4 -- Serial Monitor Tooling)

It's easy to get caught in weird assembler errors. This is made more difficult if you don't have a background debugger and need to use a boot loader / serial monitor to debug your system. Sometimes that's all you have. So here is a suggestion for a C++ and Assembler file pair to check to […]

Exploring RISC-V Options: the RP2350 (Part 3 -- No Drive to Deploy)

It was bound to happen. The Seeed Studio RP2350 is not connecting to the Arduino IDE. I'll go out on a limb here and chalk this up to the boot loader having an issue after I tried to get it to spit out serial data or maybe it was because I was trying to get […]

Exploring RISC-V Options: the RP2350 (Part 1)

In engineering education there is an ever-present problem with technology-anchored pedagogy: when do you switch from current technology to the next one? Right now, the cool kid on the block in the RISC-V architecture. Will it be the next ARM or will it be the next PowerPC or MIPS? It's hard to tell. However, a […]

ESP32-C6: A RISC-V Microcontroller with JTAG on the USB

I'm more and more impressed by the selection of RISC-V processors out there. The ESP32 families of microcontrollers are found in some pretty impressive systems like M5Stack. The availability of WiFi and Bluetooth radios make them ideal development platforms for IoT. But here is a really cool thing. The ESP32-C6 RISC-V microcontroller has a single […]

Programming 8-bit PICs: which C standard?

Microcontrollers are usually programmed in C, a traditional programming language that dates back to the 1970s. Here I'll talk about a specific type of microcontroller family, the PIC16 (or PIC18) and the compiler options for it. XC8 supports C89, C90 and C99 (for PIC16/18) When programming an 8-bit PIC like a PIC16 or PIC18, it's […]

Programming M5Stack: the Timer Camera F

This is a quick little post on M5Stack embedded hardware. I'm going to use the Arduino 2 IDE with the M5Stack Timer Camera F in this example. I just opened up the Arduino IDE and updated the boards and libraries. I had previously installed the M5Stack library on the Arduino IDE. I'm going to see […]

Measuring voltage on a Grove Board

The Arduino-compatible Grove board that we use in EECS 1021 and EECS 1011 at York University has multiple analogue sensors on it. Other analogue sensors, like the soil moisture sensor, can be attached to the board using either the Arduino headers (in yellow) or with the Grove connectors. Students in EECS 1011 and 1021 are […]

Writing to the OLED with Firmata and Firmata4j

While demonstrating the OLED display in class this week, I messed up the lesson -- twice -- because I forgot a really important detail: timing. When putting information on the OLED display it's important to take into consideration timing. But that timing is not always important to consider. Where I messed up was in demonstrating […]

Your Arduino or Grove Board needs a Driver

Some students will find that their Grove Beginner Kit for Arduino board will have trouble being recognized by their Windows or macOS machine. It is important that you download the driver from SiLabs if this is the case, as per the instructions found on the Wiki page for the Grove Beginner Kit. That page will […]