Skip to main content Skip to local navigation
Home » Category: 'arduino' (Page 2)

arduino

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 […]

Version 2.3.9 of Firmata4j

Summary to installing Firmata4j for Java projects in EECS 1021: Either one should work fine, but the 2.3.9 version should operate a little more cleanly. When using Maven to load the Firmata4j library you'll can only use up to version 2.3.8 and you'll need to load dependencies in a particular order, as per my earlier […]

Firmata4j and a Simple DHT20 example

After my earlier blog post from today, I wanted to verify that I could read single bytes of data from other sensors on the Grove Beginner Kit for Arduino. The next target? The DHT20 sensor. According to the data sheet, I should be able to be able to request a status byte and that that […]

Main Project Example for EECS 1021

[This was written specifically for the 2024 edition of the course. Some details may have changed. Please refer to current documentation provided in class. The following is an example of a main project for the EECS 1021 course. While I think that it's important to provide concrete examples it's also important not to provide examples […]

Trying out the M5Stack

My colleague, Eric Prandovszky, has been discussing the M5Stack system with me for a while and acquired a few modules to us to try out. Today I tried out the M5Stack Core 2 AWS module. My objective is to see if we can program it using the legacy Arduino 1.x IDE on macOS with Apple […]