A minimal table to compare the Espressif's MCU families.
ESP8266 | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C6 | |
---|---|---|---|---|---|---|
Announcement Date | 2014, August | 2016, September | 2019, September | 2020, December |
Multi-Invaders Game Emulator | |
Written by Larry Bank (bitbank@pobox.com) | |
Copyright (c) 2021 BitBank Software, Inc. | |
Project started July 2021 | |
This Arduino sketch contains the code needed to emulate the original | |
Taito Space Invaders along with Galaxy Wars and Lunar Rescue. The project | |
does not contain any game code and instead will read the game code and data | |
from ZIP files provided by the user. The 3 ZIP files can be from MAME or | |
other emulators and must contain the following files: |
import lcd | |
import image | |
import time | |
import uos | |
lcd.init() | |
lcd.rotation(2) #Rotate the lcd 180deg | |
from Maix import I2S, GPIO | |
from Maix import GPIO |
#include <DS3231.h> //Realtime Clock (RTC) Library from: http://www.rinkydinkelectronics.com/library.php?id=73 | |
#include <Stepper.h> //Arduino Stepper Library | |
//----------------------------------------- Limit Switch ----------------------------------------- | |
int switchPin = 6; | |
//----------------------------------------- Stepper Motor ----------------------------------------- | |
const int stepsPerRev = 200; //360 degrees / 1.8 degrees per step | |
const int sleepPin1 = 2; //Pins for enabling or disabling the h-bridge |
/* | |
Wemos D1 mini/D1 lite | |
Buzzer Shield example | |
by Petr Lukas | |
Simple music, sound efects and cricket chirp sounds | |
*/ | |
int buzzer=D5; //Buzzer control port, default D5 |
/* | |
pins_arduino.h - Pin definition functions for Arduino | |
Part of Arduino - http://www.arduino.cc/ | |
Copyright (c) 2007 David A. Mellis | |
Modified for ESP8266 platform by Ivan Grokhotkov, 2014-2015. | |
Modified for Oak by Digistump, 2016. | |
This library is free software; you can redistribute it and/or | |
modify it under the terms of the GNU Lesser General Public |
// (*) All in the spirit of open_soure and open-hardware | |
// Janost 2016 Sweden | |
// The Tiny-TS Touch Synthesizer | |
// https://janostman.wordpress.com/the-tiny-ts-diy-touch-synthesizer/ | |
// Copyright 2016 DSP Synthesizers Sweden. | |
// | |
// Author: Jan Ostman | |
// |
#include<FastLED.h> | |
// Red, White, and Blue stripes with "glitter" flashes | |
// Mark Kriegsman, June 30, 2014 | |
// requires FastLED v2.1 or later | |
#define NUM_LEDS 30 | |
#define LED_PIN 5 | |
#define COLOR_ORDER GRB | |
#define BRIGHTNESS 64 |
Controlling your nodebot using a USB cable is great and all, and obviously you could shell out and grab a sparkcore or some other dedicated controller but what if you've got a standard arduino and you want to take an existing nodebot wireless?
Bluetooth is an option and there's this excellent JohnnyFive wiki entry that will help you there. Bluetooth can be a bit flaky though and it's range is pretty lousy. You can also look at things like XBees and what not using point to point serial, but these are expensive and very fiddly to get working.
Really, what we want is a method of transferring data over a nice, simple, standard method, requiring little configuration, low cost and we can utilise a whole stack of the code we've already produced.
Enter the WiFi232 module. These little beauties are [available from AliExpress for $12 each](http://www.aliexpress.com/item/USR-WIFI232-T-wifi-to-uart-tt
#include <Adafruit_NeoPixel.h> | |
#define PIN 2 | |
#define Pixels 25 | |
// Parameter 1 = number of pixels in strip | |
// Parameter 2 = Arduino pin number (most are valid) | |
// Parameter 3 = pixel type flags, add together as needed: | |
// NEO_KHZ800 800 KHz bitstream (most NeoPixel products w/WS2812 LEDs) | |
// NEO_KHZ400 400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers) |