Skip to content

Electronic Components

October 31, 2023
September 12, 2018

Datasheets
电路城—基础电路电路图,原理图,电路设计

ArduinoModulesInfo - modules, sensors, example code spec for KEYES modules

DroneBot Workshop - YouTube many components
JohnAudioTech - YouTube
How To Mechatronics
How To Mechatronics - YouTube
Engineers - The Engineering Mindset
The Engineering Mindset - YouTube
工科男孙老师 - YouTube
Components101 - Electronic Components Pinouts, Details & Datasheets
Electronics Projects Circuits
Blog • AranaCorp
Home | MySensors - Create your own Connected Home Experience

20 Free Guides for Arduino Modules and Sensors | Random Nerd Tutorials

用 Raspberry Pi 學 GPIO - 自己做遊戲機 concepts and many components

Teardown sites

iFixit: The Free Repair Manual
微机分 WekiHome - YouTube

Hardware stores

e 絡盟 Hong Kong | Formally Premier Electronics | Electronic Components Distributor
HK STEM Club | HK STEM Club
RS Hong Kong | World Leading Distributor of Electronics, Electromechanical and Industrial Components
課室網 - CLASSROOM
Libre Computer – Open Computing Realized
奇果派工坊 | 这里总在创造一些有趣的作品
深圳市微雪电子有限公司
立创商城电子元器件采购网上商城领先的现货元器件交易平台-嘉立创电子商城

首页-都会明武电子-淘宝网 generally cheap
首页-单片机配件批发-淘宝网 boards
首页-深圳市轩特佳电子-淘宝网 per item cannot beat 明武's first item offer, but cheaper when buying in bulk
首页-深圳市育松电子 元器件 模块 工具-淘宝网 接插件 銅柱
首页-信德电子 各种电子元件 单片机 学习板 模块 电子 五金工具-淘宝网
首页-深海电子科技-淘宝网 OLED, cheaper carrier
首页-电子配件爱好者之家-淘宝网 resistors in batch, RGB LED, 銅柱, 2.54mm 座
首页-萍忻电子-淘宝网

首页-深圳宏维微电子工厂店-淘宝网
首页-嘉麒盛电子模块批发-淘宝网
首页-深名扬电子模块批发保护板温度计数显表-淘宝网
首页-德晟泰科技-淘宝网
首页-全球易创客空间-淘宝网 micro:bit extension board, LED, very deep discount for 1st item

Cheap Micro:bit
首页-掘金科技-淘宝网

Elecfreaks: Open-source electronic prototyping online store
首页-ELECFREAKS 恩孚科技-淘宝网

Prices

ESP32

LuaNode/Doit ESP-WROOM32 30pins, 51.5x28.3mm
https://item.taobao.com/item.htm?id=544098298735 ¥24.8 (¥23.4)
https://item.taobao.com/item.htm?id=547069527125 ¥25 (¥19.19)
https://item.taobao.com/item.htm?id=560873400638 ¥24.5 (¥21.5)
MicroPython 26pins, 49.3x25.6mm, no shielding
https://item.taobao.com/item.htm?id=575493516053 ¥32 (¥31)
https://item.taobao.com/item.htm?id=576611996743 ¥32 (¥31)
Wemos D1 LOLIN32 V1 ESP-WROOM32, 36pins, 58.2x25.6mm, MicroPython, PH2.0, CP2104
https://item.taobao.com/item.htm?id=575510460092 ¥33
https://item.taobao.com/item.htm?id=563668634893 ¥32 (¥25.45)
WEMOS ESP-WROOM32, 40pins, 18650
https://item.taobao.com/item.htm?id=556066490656 ¥48.7 (¥43.7)
wemqs ESP32 18650
https://item.taobao.com/item.htm?id=560643642544 ¥50 (¥40)
ESP32+0.96"OLED 128Mb flash, 0.96" OLED, PH2.0
https://item.taobao.com/item.htm?id=575275971002 ¥66
ESP32+0.96"OLED
https://item.taobao.com/item.htm?id=554493925832 ¥54.8 (¥53.8)
WEMOS LoLin32 ESP32+0.96"OLED ~¥55
wemos D1 R32 Arduino form factor
https://item.taobao.com/item.htm?id=575532753397 ¥32.80 (¥30)
Goouuu ESP-WROOM32 38pins, 54.9x23.9mm, CP2102
https://item.taobao.com/item.htm?id=547198899364 ¥27.5 (¥26.2)
https://item.taobao.com/item.htm?id=571259421779 ¥26.2 (¥21.2)
Goouuu ESP32+Speaker 63mmx69mm ¥68
Goouuu ESP32+Speaker+OLED 63mmx69mm ¥68

ESP8266

ESP-01S module only, no shielding
https://item.taobao.com/item.htm?id=566721821367 ¥8.4 (¥7.66)
ESP-07 module only, with shielding, external antenna
https://item.taobao.com/item.htm?id=566351217270 ¥10.3(¥8.41)
ESP-12E module only, with shielding
https://item.taobao.com/item.htm?id=549953220691 ¥8.8 (¥7.59)
Ao Thinker HW-306 30pins ¥9.9 (¥9.6)
NodeMCU ESP8266, 32M flash, CH340
v1 has no shielding
v2 48.26*25.4mm
https://item.taobao.com/item.htm?id=557551551827 v1 ¥10.8
https://item.taobao.com/item.htm?id=552443965319 v1 ¥12.5 (¥9.6)
https://item.taobao.com/item.htm?id=576101830285 v1 ¥12.5 (¥9.5)
https://item.taobao.com/item.htm?id=574896488803 v2 ¥12.6 (¥10.8)
https://item.taobao.com/item.htm?id=521821404492 v3 ¥15.35 (¥13.85)
https://item.taobao.com/item.htm?id=530794487317 v3 ¥14 (¥11.3)
https://item.taobao.com/item.htm?id=531510954596 CP2102 ¥16 (¥12.82)
wemos D1 R2 ESP8266 Arduino form factor
https://item.taobao.com/item.htm?id=560526485928 ¥21.5 (18.5)
wemos D1 R3 ESP8266 Arduino form factor
https://item.taobao.com/item.htm?id=560526485928 ¥16.5 (14.54)
esp-wroom-02 主板 D1 迷你 WiFi 模块 ESP8266+18650 电池套-淘宝网 $33.8 (¥31.48)
ESP8266 带 0.96 OLED 扩展温湿度开发板 气象站 wIFI 攻击-淘宝网 OLED, 5 way button, 18650 ¥52.8 (¥51.80)

Arduino

Arduino UNO R3 ¥15.5 (¥13.17)
Arduino pro mini, ATMEGA328P 5V/16Mhz or 3.3V/8Mhz, 33.3*18.0mm, no UART
https://item.taobao.com/item.htm?id=523797768826 ¥10.50 (¥9.28)
https://item.taobao.com/item.htm?id=520860420787 ¥10.00 (¥8.78)
https://item.taobao.com/item.htm?id=556819808542 3.3V ¥10.00 (¥8.45)
Arduino nano
nano V3.0 ¥11.5 (¥8.73)

USB Serial

CP2102 USB-TTL
https://item.taobao.com/item.htm?id=521308489687 ¥5.25
https://item.taobao.com/item.htm?id=520230692154 ¥4.41
CP2102 micro USB-TTL
https://item.taobao.com/item.htm?id=537797369228 ¥5.5 (¥4.39)
CH340G USB-TTL
https://item.taobao.com/item.htm?id=40680825639 ¥3.2 (¥2.8)
FT232 mini USB-TTL
https://item.taobao.com/item.htm?id=44348691599 ¥10 (¥8.9)
https://item.taobao.com/item.htm?id=38262381372 ¥8.3 (¥6.56)
FT232 micro USB-TTL
https://item.taobao.com/item.htm?id=564675217014 ¥8.5 (¥7.62)
PL2303hx USB-TTL
https://item.taobao.com/item.htm?id=25894436651 ¥2.6 (¥2.0)

Prototyping

40P M2M/F2M cable 20cm ~¥1.7
Crocodile clip 10pcs ¥3 (¥2.2)
SYB-170 mini breadboard 35*47mm ¥0.7 (¥0.4-0.6)
MB102 830 holes breadboard ¥3 (¥1.8)
GL-12 840 holes breadboard ¥3.3 (¥2.5)
400 holes breadboard ¥2 (¥0.75)
2.54mm 銅 40pins ¥0.11 深圳市育松电子 ¥0.12 深海电子科技 彩色
2.54mm 镀金 40pins ¥0.25 深圳市育松电子
2.54mm 单排母座 40pins ¥0.2
Micro USB cable 1m ¥0.6

Wireless

Bluetooth

HC-06 带针带底板 从机蓝牙模块无线串口通讯 HC-06 蓝牙模块-淘宝网 ¥15.5 (¥15)
JDY-31 蓝牙模块 2.0/3.0 SPP 协议 android 兼容 HC-05/06 JDY-30-淘宝网 ¥7.9 (¥7.4)
BC04-B 主从一体 蓝牙串口适配器 蓝牙串口模块 蓝牙转串口模块-淘宝网 ¥17 (¥16.5)
AT-09 蓝牙 4.0BLE 模块 串口引出 CC2541 兼容 HM-10 模块 连接单片机-淘宝网 ¥10.9 (¥10.4)
DX-BT18-LE 蓝牙模块 BLE4.2 单模无线串口透传替换 HC06/HC05/CC2541-淘宝网 ¥10.5 (¥6.6)

2.4G

NRF24L01 无线模块迷你版 功率加强版 2.4G 无线收发模块-淘宝网 ¥4.2 (¥2.98)
NRF24L01+ 无线模块 功率加强版 2.4G 无线收发通信模块-淘宝网 ¥3.4 (¥2.69)

433M

433M 超再生模块 无线发射模块 防盗报警发射器 接收器 433 频率-淘宝网 ¥3.5 (¥3)

Motors

智能小车减速电机的减速比 1:48 和 1:120 和 1:288 哪个速度大?🙏_百度知道
输出速度与减速比成反比,数比越大输出速度越小,1:48 的速度最快
減速越大, 減速箱越長

3-6V DC motor (TT 马达) ¥0.6
1:120 (电压:6V )扭力:2KG 转速: 100

1:48

额定电压电流转速扭矩
3V≤170mA115±10%转/分0.7±10%kgf.cm
6V≤230mA255±10%转/分1.2±10%kgf.cm
7.2V≤250mA320±10%转/分1.5±10%kgf.cm

370 固定座-淘宝网

模型电机-金色传说-淘宝网
电机-金色传说-淘宝网
减速电机-金牌数码经营部-淘宝网 clear spec

Tachometer (RPM Meter) || DIY or Buy || How a 3€ sensor outdoes a 29€ product! - YouTube

Specification

LEGO 9V Technic Motors compared characteristics for reference

755,795 M4, 29mm
895 M4/M5, 32mm
545,550 M3, 25mm
370 M3, 17mm
25GA310 M3, 17mm
25GA370 GA25-310
395 M3, 16mm
380 M2.5, 15.8mm
385,390 M2.5
270 M2.5, 14mm
365 M2.5, 16mm
360 M2, 16mm
150 M2, 12mm
300 M1.6

Tamiya GearBox

Dual Motor GearBox - ROB-00319 - SparkFun Electronics RC300 motor; 12.7-114:1
TAMIYA 70203 三速可选齿轮箱-淘宝网
TAMIYA 72007 四速可选齿轮箱-淘宝网 130, 140 motor; 39.6-74:1
TAMIYA 70110 四速可选齿轮箱-淘宝网 120 motor; 126,441:1; 1543,5402:1 (clutched)
TAMIYA 70188 八速可选齿轮箱-淘宝网 4.6-661:1
TAMIYA 70190 十二速可选齿轮箱-淘宝网 4.6-661:1
TAMIYA 70168 左右独立齿轮箱组 4 速可变-淘宝网 130 motir; 12.7-344:1
TAMIYA 70108 坦克底盘-淘宝网

Servo

TowerPro Servos
Servos & Parts | Product Categories | Tower Pro
vendors are selling counterfeits if they remove "TowerPro" logo from the photo
SG: Plastic Gears, MG: Metal Gears
MG90 2.2/2.5kg analog
90-180° ¥14.80
MG90S 1.80/2.2kg digital
360° ¥6, 90-180° ¥4.5
sg90 1.80kg analog/digital
¥4.5
SG5010 5/6.5kg digital
MG995 9.40/11kg digital ¥9.20
Servo platform ¥1.36

Motor Control

TB6612 16pins 24.7*21.5mm ¥3.8
DRV8833 12pins 18.4x16mm ¥2-3
直流电机驱动板 2 路电机驱动模块 DRV8833 电机驱动模块 小体积-淘宝网 ¥3.3 (¥1.28)
Fundumoto L298P Motor Shield ¥20.1 (¥13.9)
PCA9685 ¥10.4 (¥8.6)

AD/DA

ADS1115 ¥9 (¥7.2)
ADS1115 ¥8.8 (¥6.8)
PCF8591 ¥5.98 (¥5.6) was ¥4.6 (¥4.4)

Power

5.5mmx2.1mm center positive is the most common

9V-1A power adapter 5.5x2.1mm ¥3.7 (¥2.2)
USB 升压线 12V1A 5.5x2.1mm ¥3.3 (¥2.9)

Bread board power
DC/USB-A in, 3.3V, 5V out $1.99 (1.77)
DC/Micro in, 3.3V, 5V out $3.45 ($2.5)

DC 电源插座 5.5*2.1MM ¥0.07 (¥0.01)
DC 公母头 1 对 5.5*2.1MM DC Plug/Jack to Termainal ¥0.78
DC in, VIN + 3.3V + 5V out, breakout board ¥1.9 (¥1.8)
DC in, VIN + 3.3V + 5V out, breakout board ¥2.2 (¥1)

AMS1117 5V -> 3.3V ¥0.66 (¥0.56)

Buck converter
Mini 360 variable out 3A ¥1.37 (¥0.25)
QS-1205CME 5V3A ¥2.85 (¥0.5)
MP1584EN 5V 3A ¥2.3 (¥1.8)
5V-3.3V 100mA ¥2.1 (¥1.2)

Buck-boost converter
8W 5-16V ¥2.9 (¥2.5)
超小 DC-DC 降压模块 7V-28V 5V3A ¥2.3 (¥1.8)

HLK series
HLK-PM01 3W 220V 转 5V
HLK-PM03 3W 220V 转 3.3V
HLK-PM12 3W 220V 转 12V
HLK-5M05 5W 220V 转 5V
HLK-5M12 5W 220V 转 12V
Power ESP8266 with HLK-PM03 Converter | Random Nerd Tutorials

Measuring Power Supply Barrel Plug ID 2.1mm vs 2.5mm - Tech Tips - Engineering and Component Solution Forum- TechForum │ DigiKey

Switch

拨动开关 迷你开关 diy 电子制作套件 带孔 电子元件 电路制作-淘宝网 ¥0.28
拨动开关座 开关免焊座 玩具配件 科技积木零件 diy 模型电路材料-淘宝网 case ¥0.2
黑色方形开关(自锁两脚) 开源单片机微型开关配件 电子 DIY 材料-淘宝网 ¥0.55
自锁圆扭开关 DIY 电子制作材料 圆形开关 微型迷你开关 开源硬件-淘宝网 ¥0.72

Battery

9V 电池盒 DC 头 ¥1.4 (¥1.2)
9V 电池扣 DC 头 ¥0.41 (¥0.12)
9V battery adapter ¥0.15
AA Battery box ¥2
AAx6 电池盒 DC 头 ¥2.3
AAA Battery box ¥2.8
电池盒 5 号/五号/七号 7 号/9V 18650 电池 1 节 2 节 3 节 4 节 带盖带开关-淘宝网 ¥0.25 - 4.4

AAx24 + AAAx24 ¥68 (¥58.5)
9V 1000mAh ¥48 (¥20)

Unbranded 18650 3.7V 2600mAh ¥8.3 (¥7.8)
Unbranded 18650 3.7V 3000mAh ¥6.7 (¥6)
德力普 2500mAh ¥15 (¥7.9)
德力普 2800mAh ¥18 (¥9.9)
德力普 2800mAhx4 + 双槽充 ¥80 (¥46)
德力普 2800mAhx6 + 双槽充 ¥120 (¥61)

18650 电池盒 3.3V 5V USB-A, mini-USB charging battery shield ¥9 (¥8)
18650 电池盒 ¥0.69
18650 电池盒 2 节 7.4V ¥0.8
18650 电池盒 2 节 3.7V ¥1.2
18650 电池盒 2 节 7.4V DC 头 ¥1.8 (¥1.6)
带盖带开关 2 节 18650 电池盒 带红黑线 7.4v 锂电池盒 18650 串联-淘宝网 ¥2.5
18650 双槽充电器 ¥5.44 (¥5)

Logic Level converter 电平转换

AN97055 4 channels ¥0.75 (¥0.35)
TXS0108E 8 channels ¥2.8 (¥2.2)

I/O Expansion

8 I/Os
PCF8574T DIP switch ¥4.25 (¥3.75)
PCF8574 jumper ¥4.7 (¥3.6)
PCF8574 for LCD ¥1.98 (¥1.33)

16 I/Os
PCF8575 ¥11.3 (¥10.8)
MCP23017 ¥6.5 (¥6)

LED

5mm RGB LED ¥0.21
5mm LED 5 colors @20 ¥3.9 (¥3.7)
5050 RGB LED (mostly 都会明武电子)
KY-009 ¥0.7 (¥0.3)
8 bit WS2812 5050 RGB LED (NeoPixel) ¥3.6 (¥2)
8 bit WS2812 5050 RGB LED Ring ¥4.1 (¥2.4)
16 bit WS2812 5050 RGB LED Ring ¥8.8

Sensors

TCS3200 RGB sensor ¥10 (¥8)
TCS34725 RGB sensor ¥12.5

AM312 PIR 2.7-12V 3V out ¥5.97 (¥5.42)
HC-SR501 PIR 4.5-20V 5V out ¥3.77 (¥3.09)
https://item.taobao.com/item.htm?id=547570274578 5-20V 3.3V out ¥4 (¥3.7)
https://item.taobao.com/item.htm?id=38317190780 5-20V 3.3V out ¥3.7 (¥1.76)
HC-SR505 PIR 4.5-20V 3V out ¥4.8
RCWL-0516 Microwave PIR 4-28V 3.3V out ¥2.7 (¥1.6)

HC-SR04P Ultrasound 3-5.5V SGM324 ¥3.3-4.5 (¥2)
Risym US-100 Ultrasound 2.4-5.5V ¥12.6

BMP280 ¥3.15 (¥1.23)

LDR extension board KY-018 ¥1.1 (¥0.28)
Heart beat extension board KY-039 ¥1.3 (¥0.75)

Arduino 5+37 款共 42 款传感器入门套件 不含原装正版 UNO R3 开发板-淘宝网 ¥129
基于 arduino 传感器套件 uno r3 套件 电子积木模块 37+5 共 42 款-淘宝网 ¥129
37 mems sensors ¥46.5

Displays

LCD Keypad Shield (D1 ROBOT, for Arduino) ¥9 (¥8.8)
1602 LCD (I2C) ¥8 (¥7.2)
0.96" I2C OLED 3.3-5V, 128x64 ¥11.5 ¥9.4

Screws

M3 nuts M3 六角螺母 100pcs ¥1
M3*5mm screws 100pcs 沉頭 ¥3
M3*10mm screws 100pcs 沉頭 ¥1.8
M3 螺丝 M3*5/8/10/12/20mm 圆头 螺纹部分长 5/8/10/11.5/19 100 只-淘宝网 100pcs ¥1-4
3MM 石棉垫 100pcs ¥0.95
3MM 金屬垫 100pcs ¥2
M3 6+6mm 铜柱 10pcs ¥1

M3M4M5M6 304 不锈钢圆头/盘头内六角螺丝/半圆杯螺钉/蘑菇头螺栓-淘宝网 內六角 M3 0.03-0.14 M4 0.06-0.23
M3M4M5M6mm304 不锈钢十字盘头螺丝 圆头螺钉*8/10/12/16/20/25-80-淘宝网 M3 0.03-0.13 M4 0.05-0.16
304 不锈钢螺母 六角螺帽 螺丝帽 M3M4M5M6M8M10M12M14M16M18M20M24-淘宝网 M3 0.02 M4 0.03

不包郵
M3M4M5M6M8M10mm 201 不锈钢圆头螺丝钉 盘头机螺钉*16/25/30-60-淘宝网 M3 0.02-0.05 M4 0.03-0.10
201 不锈钢六角螺母外六角螺丝帽 M3M4M5M6M8M10M12M14M16M18M20M24-淘宝网 M3 0.02 M4 0.02

铜柱 铜柱 m3 六角铜柱 铜柱 m3 单头六角铜柱 铜柱 m3 铜柱螺母-淘宝网 0.07-0.56
铜柱 铜柱 M3 M2.5 六角铜柱 铜柱 m3 单头六角铜柱 铜柱螺丝 空心-淘宝网 0.05-0.37
螺丝 螺丝钉 m3 螺丝 平头螺丝 螺母 m3 螺母 M2/M2.5 螺丝-淘宝网 0.1-2.95
螺丝/螺母/铜柱-炫蓝电子科技有限公司-淘宝网

M4 铜柱 单头六角铜柱 六角隔离柱 铜柱螺丝 主板机箱铜柱螺丝帽-tmall.com 天猫

5 Confusing PC Building Facts - YouTube
Coarse: UTS 6-32
Fine: M-3

Audio

PAM8406 数字功放板 ¥3.4 (¥2.9)

Interfaces/Protocol

automobile#CAN bus

Introduction to Interfaces - YouTube

General-purpose input/output - Wikiwand
GPIO 接腳基本認知 – circuitcellar

Note: when communicating serial bus on ESP32 (with multicore), we have to enter critical session to prevent the bus to timeout
see https://github.com/beegee-tokyo/DHTesp/blob/master/DHTesp.cpp, search ESP32

Bit-Banging

Bit banging - Wikiwand software implementation of serial interface

Overview - V-USB emulate USB with Bit banging on cheap Atmel chips
V-USB - A Firmware-Only USB Driver for Atmel AVR Microcontrollers
obdev/v-usb: A Firmware-Only USB implementation for Atmel's AVR Microcontrollers

I2C Bit-Banging Tutorial: Part I | Calvin's Plot on the Interwebs
I2C Bit-Banging Tutorial: Part II | Calvin's Plot on the Interwebs

I2C driver using bit bang

Serial

Transistor–transistor logic - Wikiwand
On 5V, High > 2.4V, Low < 0.4V
Weak anti-interference

Serial port - Wikiwand
RS-232 - Wikiwand
Convert 0-5V TTL signal to (-15V, 15V) via Voltage Level Shifter, High 3 - 15V, Low -3 - -15V
15m, 2Mbps

RS-485 - Wikiwand
Uses differential signaling
1200m, 50Mbps

Serial Communication - learn.sparkfun.com RS232, UARTs
RX, TX without clock
Where does 9600 bps come from? - News - SparkFun Electronics

Serial Terminal Basics - learn.sparkfun.com

RS-232 vs. TTL Serial Communication - SparkFun Electronics
Selecting and Using RS-232, RS-422, and RS-485 Serial Data Standards - Tutorial - Maxim

5 分钟看懂!串口 RS232 RS485 最本质的区别! - YouTube

USB Serial/UART

Universal asynchronous receiver-transmitter - Wikiwand
Hacker's Guide to UART Root Shells - YouTube

Which USB to TTL converter Adapter To Chose For Your Arduino Projects?! - YouTube

Basics: AVR Target Boards and Arduino Compatibility | Evil Mad Scientist Laboratories
How to use an Arduino as a USB to TTL converter || Arduino tutorial - YouTube connect RESET to ground

USB 系列芯片 - 江苏沁恒股份有限公司
CH340G, all platforms

USB to UART Bridge VCP Drivers | Silicon Labs
CP210X, all platforms

An FTDI chip to provide a USB serial interface to allow you to program it from your PC using a USB cable.
FT232R
Arduino Playground - FTDI FTDI is one manufacturer of USB-Serial chips
FTDI + Arduino Pro Mini - YouTube
FTDI SmartBasic Hookup Guide - learn.sparkfun.com
FT232RL: Real Or Fake? | Hackaday

PL2303
PL2303/PL2303HX, no Linux, worse reputation

Some adapter has 3.3V and 5V pin to power the board while flashing.

Absolute WeMos D1 Mini (ESP8266) Basics adding udev rule

lsusb to check the vendor and product ID, add it to tty subsystem

SUBSYSTEM=="tty", GROUP="plugdev", MODE="0660"
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="wemos"

Make sure you user is in plugdev group (or dialout per espressif doc?)

I2C

I²C - Wikiwand
I2C Device Library
Gammon Forum : Electronics : Microprocessors : I2C - Two-Wire Peripheral Interface - for Arduino

UM10204 I2C-bus specification and user manual
I2C - learn.sparkfun.com
Introduction to the I2C Bus
The I2C Bus: Hardware Implementation Details
The I2C Bus: Firmware Implementation Details
The I2C Bus: When to Use an I2C Buffer
Electronic Basics #19: I2C and how to use it - YouTube
How I2C Communication Works and How To Use It with Arduino - YouTube
I2C-bus by NXP Semiconductors - YouTube
4 分钟看懂!I2C 通讯协议 最简单的总线通讯! - YouTube

SCK: serial clock
SDA: serial data
pull up on both pins
few pins, slow speed

Start (SDA falling edge, SCK high) , Device Address (7 bits), R/W bit, Ack bit , Internal Register Address (8 bits), Ack Bit, Data (8 bits), Stop (SDA rising edge, SCK high)

PCF8574 8 I/Os, usually for LCD
PCF8575 16 I/Os
MCP23017 16 I/Os, with 2 interrupts

How I2C Communication Works & How To Use It with Arduino
Arduino - Wire

SPI

Serial Peripheral Interface - Wikiwand
Serial Peripheral Interface (SPI) - learn.sparkfun.com

What Could Go Wrong: SPI | Hackaday
Better SPI Bus Design | Hackaday

MOSI: master out/slave in
MISO: master in/slave out
SCLK: serial clock
CS: chip select (1 pin for each device on the bus)
Activate device with active low/high on CS pin (active low)
Byte interchange during communication, one byte in and one byte out

Parameters:
Clock speed (SPI/HW: >1MHz, SPI/SW: ~10kHz)
Mode (Phase and Polarity)
Endian

Arduino - SPI

Electronic Basics #36: SPI and how to use it - YouTube
SPI: The serial peripheral interface - YouTube
5 分钟看懂!SPi 通讯协议 非常简单的一种通讯。 - YouTube

I2S

I²S - Wikiwand Inter-IC Sound
Arduino - I2S

JACDAC

JACDAC | A single wire protocol for the plug and play of sensors, actuators, and microcontrollers.
JACDAC | Getting Started
JACDAC | Specification

JACDAC over stereo audio cables and JACDAC over WebUSB

AD/DA

ADS1115 16-Bit 860SPS 4-Ch Delta-Sigma ADC With PGA, Oscillator, VREF, Comparator, and I2C | TI.com
Overview | Adafruit 4-Channel ADC Breakouts | Adafruit Learning System
4 analog in
16 bits resolution
2V-5.5V
16 single-ended or 8 differential channels
programmable gain
programmable comparator
I2C

MCP3008 - Mixed Signal - Successive Approximation Register (SAR) A/D Converters - Microcontrollers and Processors the DIP16 packaging is too large
MCP3008 | Raspberry Pi Analog to Digital Converters | Adafruit Learning System

PCF8591|NXP
Overview | Adafruit PCA9685 16-Channel Servo Driver | Adafruit Learning System
4 analog in, 1 analog out
8 bits resolution
2.5V-6V
programmable address
I2C

MCP4725A0T-E/CH Details - Microchip Technology | Datasheets

CD74HC4067
16-Channels
2.0V-6V

Arduino DAC Guide

Power

DIY LiPo Charge/Protect/5V Boost Circuit - YouTube
#250 Universal Power Source (UPS) for only 2$. Is this possible? (Raspberry Pi, Arduino, ESP32) - YouTube
Charger: TP4056
LDO: LM6206N3
Boost: FP6298
Protection: FS8205A

How to power ANYTHING using USB-C Power Delivery and the ZY12PDN PD Trigger Board - YouTube
USB-C PD2.0 3.0 转 DC 诱骗快充触发轮询检测器笔记本供电改 Type-C-淘宝网
USB-C PD2.0 3.0 转 DC 诱骗快充触发轮询检测器笔记本供电改 Type-C-tmall.com 天猫

DIY - 12V Mini UPS - YouTube

AC-DC Power Conversion on a GaN Device Evaluation Board - Power Electronics News

Voltage-Level Shifter

Logic Levels - learn.sparkfun.com
逻辑电平转换 - 应用笔记 - Maxim

Power For Your Electronics Projects - Voltage Regulators and Converters - YouTube
电源芯片选型 | LDO 那么烫手,你确定不试试 DC-DC? - YouTube
Buck converter vs. linear voltage regulator - practical comparison - YouTube
How to Design 12V to 5V Buck Converter 一起设计一款好用的 12V 转 5V 电源模块 - YouTube 工科男孙老师

Is this the BEST Voltage Converter? Trying to build a Synchronous Converter! - YouTube

2 毛钱得线性稳压器(LDO)你也敢用?1117 完整评测 - YouTube

Voltage regulators:
These are like a dynamic resistor the produces quite a lot of heat
78XX (7805, 7812), Out: 1.5A, less efficient
LM317, Out: Variable 1.5A, less efficient
PSM-165 Module, In: 4.5-12V, Out: 800mA, used by Uno, more efficient
AMS1117-5 Module, In: 4.5-12V, Out: 3V 1A, less voltage drop
L4931CZ33 Module, Out: 3.3/5V 250mA, extremely efficient, extremely low voltage drop (0.4V)

Buck converter, like voltage regulator, can be used to lower the voltage of input. It uses switch mode circuit with coils that makes it extremely efficient (~95%). Takes wider range of input voltage (dozens V). Also because of the coil, it may interfere with RF signals.
MP1584EN
Mini-360, In: 4.75-23V, Out: 1-17V 1.8A 3A peak
LM2678, In: 8-30V, Out: 5V 3A

Boost converter, works in the same principle as buck converter, increase the input voltage, extremely efficient (~95%).
PSM-205, In: 0.9-5V, Out: 5V 600mA
MT3608, In: 2-24V, Out: 2-24V 2A
SDB628, In: 2-24V, Out: 5-12V 2A

Nanjing Extension Microelectronics TP5410| lcsc.com 3.7V LiPo to 5V, with charging circuit
Output: 5V 300mA (not 1A in spec), no protection
2$ LiPo Charger & Boost Converter? || TP5410 Test - YouTube

Nanjing Extension Microelectronics TP4056 | lcsc.com charging circuit with protection
DIY LiPo Charge/Protect/5V Boost Circuit - YouTube TP4056 with custom circuit

Buck-boost converter (with a box) can decrease or increase the input voltage to a specific level.
S9V11F5, In: 2-16V, Out: 5V 1.5A 2A peak, may get very hot

Philips AN97055
Bi-Directional Logic Level Converter Hookup Guide - learn.sparkfun.com

TXS0108E 8-Bit Bidirectional Voltage-Level Shifter For Open-Drain And Push-Pull Application | TI.com
TXB0108 8-Bit Bidirectional Voltage-Level Shifter with Auto Direction Sensing and +/-15-kV ESD Protect | TI.com
TXB0108-8 通道双向逻辑电平转换器原理图/PCB 等分享 _电路方案 - 与非网

Audio output

Arduino - ToneMelody
我的 Stem Project (九) 用 Arduino 控制 Buzzer 唱歌 | Mister Ngan

Overview | Trinket Audio Player | Adafruit Learning System
High frequency PWM for output of PCM stored in flash

The Best Way to Add Sound FX to Your Projects

Electronic Basics #21: OpAmp (Operational Amplifier) - YouTube
What is an op amp? Operational Amplifier tutorial & super spy microphone circuit - YouTube
LM358

LM386 5-12V, 200x gain, mono
HXJ8002 2-5.5V, 3W, mono
PAM8406 2-5.5V, 5W, stereo

DFPlayer Mini

DFPlayer Mini SKU:DFR0299 - DFRobot Electronic Product Wiki and Tutorial: Arduino and Robot Wiki-DFRobot.com
(SKU:DFR0299)DFPlayer Mini 模块 - DFRobot Product Wiki

Stonez56: Family, Life, Kids, Work, Arduino: Arduino - DFPlayer Mini MP3 Module no common ground, RX not at 3.3V
ESP8266 MP3 Sound Machine - Self Hosted Home

7 Segment Display

libraries/DigitalTube at master · reeedstudio/libraries

我的 Stem Project (六) 用 Arduino 控制 7 segment display (基礎篇) | Mister Ngan
Driving a 7 segment display with a 4511 BCD to 7 Segment Driver - Protostack
Arduino 7 Segment LED Display and Counter

How to Use a 7-Segment Display with Raspberry Pi Pico | Tom's Hardware

LCD

Arduino - LiquidCrystal
Arduino Playground - LiquidCrystal Library
Overview | Character LCDs | Adafruit Learning System

olikraus/u8g2: U8glib library for monochrome displays, version 2
Learn Arduino Tutorial Project Ep.2 - LCD and OLED Text - How to Draw - SPI & I2C - YouTube
Learn Arduino Tutorial Project Ep.3 - LCD and OLED Graphics - Lines and Shapes - SPI & I2C - YouTube

If the LCD has 2 rows of 16 characters (1602) and 16 pins, its probably Hitachi HD44780 or compatible.
HD44780 Character LCD Displays - Part 1 - Protostack
hd44780 Character LCD Displays - Part 2 - Protostack
Using LCD Displays with Arduino - YouTube
再简单的屏幕也需要显卡!让你彻底看懂 LCD 屏的控制原理!1602A LCD 的工作原理! - YouTube

How a Character LCD works Part 1 - YouTube
Controlling LCD with a Commodore 64
How a Character LCD Works - Part 2 - YouTube
How a Character LCD Works - Part 3 - YouTube

Using LCD Displays with Arduino | DroneBot Workshop I2C
How to connect and use a Character LCD using only 2 pins – Brainy-Bits
Makeblcok 電子模組手冊----2.2 吋 TFT 彩屏 - 軟硬體開源區 - 圓創力科技.MakeBlock TW - serial interface
ESP32 Drives Controllerless Display Using I2S Hack | Hackaday
adafruit/Adafruit-ST7735-Library: This is a library for the Adafruit 1.8" SPI display http://www.adafruit.com/products/358 and http://www.adafruit.com/products/618

Bitmap converter for mono and color LCD displays

Superfast Raspberry Pi display driver offers 60fps - Geeky Gadgets

OLED

Overview | Monochrome OLED Breakouts | Adafruit Learning System
Monochrome 0.96 128x64 OLED graphic display ID: 326 - $19.50 : Adafruit Industries, Unique & fun DIY electronics and kits
SSD1306 exposes I2C, SPI and 8-bit parallel interface.

OLED I2C DISPLAY ARDUINO/NODEMCU TUTORIAL | Arduino | Maker Pro
TCA9548A demux multiple data streams on i2c and send them to component separately.
How to connect and use an SPI OLED Display – Brainy-Bits

Arduino OLED Display Tutorial and Library
Guide for I2C OLED Display with Arduino | Random Nerd Tutorials

MicroPython: OLED Display with ESP32 and ESP8266 | Random Nerd Tutorials
ESP32 OLED Display with Arduino IDE | Random Nerd Tutorials
ESP8266 0.96 inch OLED Display with Arduino IDE | Random Nerd Tutorials
ESP32/ESP8266: DHT Temperature and Humidity Readings in OLED Display | Random Nerd Tutorials

Superfast Raspberry Pi display driver offers 60fps - Geeky Gadgets
juj/fbcp-ili9341: A blazing fast display driver for SPI-based LCD displays for Raspberry Pi A, B, 2, 3 and Zero

IR Remote

Send TV Remote signal using Arduino | HalfaGeek
Arduino IR Remote identification | HalfaGeek

Using an IR Remote and sensor with an Arduino – Brainy-Bits
Using IR Remote Controls with the Arduino - YouTube

一帧红外遥控信号,竟如此复杂,超乎你的想象!红外遥控的工作原理! - YouTube

Heart Beat

From KY-039 To Heart Rate - Hackster.io
Arduino KY-039 Detect the heartbeat module - TkkrLab
KY-039 Heartbeat sensor module - SensorKit X40 Wiki

Motion Sensor

Passive Infrared (PIR)

HC-SR501 Arduino Tutorial and Manual | Henry's Bench
How PIR Sensor Works and How To Use It with Arduino
Arduino Powered PIR Motion Detection Light

Arduino with PIR Motion Sensor | Random Nerd Tutorials
Modifying Cheap PIR Motion Sensor to Work at 3.3V | Random Nerd Tutorials The sensor itself if 3.3V

#97 PIR Sensors: Test and comparison. Is the bigger better? - YouTube

RCWL-0516 Microwave Radar

RCWL-0516 Microwave Radar Sensor Switch Module Body Induction Module 4-28V 100mA
Investigating a RCWL 9196 / RCWL-0516 “Radar” motion detector module | Roger Clark
How to Get Started with a Microwave Radar Motion Sensor
First steps with the RCWL 0516 radar switch | Hackaday.io

VIN is 5V input
3V3 is output

#135 Radar Sensors / Switches: Comparison and Tests - YouTube

jdesbonnet/RCWL-0516: Information about RCWL-0516 microwave proximity switch module (ICStation.com SKU 10630)

IR Sensor

Build an Intruder Alert using a Micro SD Module – Brainy-Bits Micro SD, RTC

Line Tracking

Yahboom 4 路循迹模块 mj8t
Tracking module

Distance Measurement

Time of Flight (TOF)

Tech Spotlight: Laser Distance Measurement | element14 | Tech Connection disable JavaScript
Arduino Blog » Arduino and industrial distance sensor communicate via RS-485

Ultrasound sensor

HC-SR04 5V
HC-SR04P works with 3.3V
HY-SRF05
US-015
US-020 long range
US-100 temperature compensation, 3.3-5V

Using the HC-SR04 Ultrasonic Distance Sensor with Arduino - Everything you need to know! - YouTube
Complete Guide for Ultrasonic Sensor HC-SR04 with Arduino | Random Nerd Tutorials
Using the HC-SR04 Ultrasonic Range Sensor with Arduino – Brainy-Bits
Ultrasonic Sensor HC-SR04 and Arduino Tutorial
ModMyPi LTD | HC-SR04 Ultrasonic Range Sensor on the Raspberry Pi
An Ultrasonic Shortcut a breakout board with distance display

#40 Ultrasonic Distance Sensors Arduino Tutorial and Comparison for HC-SR04, HY-SRF05, US-015 - YouTube

Hc sr04 at 3.3v - Raspberry Pi Forums

LED

Arduino Blog » Blow out this Arduino LED candle! 0402 SMD LED

Best LED Strip For Your Project | Random Nerd Tutorials
How do RGB LEDs work? | Random Nerd Tutorials

LED Circuit Design - How to design LED circuits - YouTube
Multi-LED circuit design - LED Parallel Circuits - YouTube

Basics: Picking Resistors for LEDs | Evil Mad Scientist Laboratories
Electronic Basics #8: Everything about LEDs and current limiting resistors - YouTube
LED Circuit Design - How to design LED circuits - YouTube
Standard red, orange, yellow and yellow-green LEDs have a forward voltage (Vf) of about 1.8V.
Pure-green, blue, white, and UV LEDs have a Vf of about 3V.
LED usually consumes 16-20mA.
We need to consume the excess voltage by resistor R of resistance = (V - Vf)/0.02 (assuming the current is 20mA)
Every LED have slight difference in forward voltage, it's easier to keep the current constant.
V_red = 3V
V_blue = 3.4V
V_green = 3V

Light-Emitting Diodes (LEDs) - learn.sparkfun.com
Wallet-size LED Resistance Calculator | Evil Mad Scientist Laboratories papercraft
8mm Power LED 0.5W White LED Specs, Data Sheet P804TW4D from lc-led.com
LED Dropping Resistor Calculator for LEDs and Current Needs
LED center » LED basics

5050 RGB Full Color SMD LED
5050 RGB Full Color SMD LED [LED-5050-RGB] - $0.19 : Wayjun Technology, Focus on the production and development of LED
KY-009 RGB Full color LED SMD Module - ArduinoModulesInfo

KY-0095V Circuit
R180Ω resistor
G110Ω resistor
B110Ω resistor

NEW LED Software and Hardware Platform that YOU need to know about! - YouTube
PlummersSoftwareLLC/NightDriverStrip: NightDriver client for ESP32

WS2812B addressable RGB LED strip, communication via a one-wire interface
LED of each color (at max brightness) takes ~18mA, works at 3.5-5V
So 1 white 5050 takes ~50mA
Guide for WS2812B Addressable RGB LED Strip with Arduino | Random Nerd Tutorials
Quick-Tips: LED strip flickering? Possible reason & solution! – Brainy-Bits
Build an RGB Matrix using some WS2812 modules – Brainy-Bits
Overview | micro:bit Lesson 3. NeoPixels with micro:bit | Adafruit Learning System
The Magic of NeoPixels | Adafruit NeoPixel Überguide | Adafruit Learning System
Can You Live Without the WS2812? | Hackaday

adafruit/Adafruit_NeoPixel: Neo Pixels!

FastLED LED animation library for Arduino (formerly FastSPI_LED)
Learn Arduino Tutorial Project Ep.4 - FastLED Introduction - WS2812B and Neopixels - YouTube
HOW TO USE WS2812B NEOPIXELS WITH FASTLED ON ARDUINO - YouTube

Dot Matrix/LED Array

Guide for 8x8 Dot Matrix MAX7219 with Arduino | Random Nerd Tutorials
Scrolling text using the MAX7219 LED Dot Matrix – Brainy-Bits
How to use a MAX7219 LED dot matrix with an Arduino – Brainy-Bits
Starting driving LED arrays from the Beaglebone | derekmolloy.ie

Rainbowduino v3.0
ULN2803: 8 Channel Darlington Driver (Solenoid/Unipolar Stepper) [ULN2803A] ID: 970 - $1.95 : Adafruit Industries, Unique & fun DIY electronics and kits
ULN2803A darlington transistor array driver IC - YouTube current amplifier, 500mA per pin, 2.5A max

Color Sensor

TCS3200 Color Sensor (SKU:SEN0101) - DFRobot Electronic Product Wiki and Tutorial: Arduino and Robot Wiki-DFRobot.com
seasonedbits/pxt-color-sensor: Extension for TSC3200 color sensor module

Arduino COLOR Sensor / Color Recognition Sensor TCS230 Arduino
How to Make a Color Sensor Using a TCS3200 Module | PIC | Maker Pro
TCS3200 RGB Color Sensor For Arduino - Thingbits Electronics
MajicDesigns/MD_TCS230: TCS230 TCS3200 RGB Color Sensor Library

Help With TCS3200 Color Sensor (Understanding Output)

UV sensor

紫外线(UV)辐射强度检测模块硬件设计及入门指导 - 基础电路 - 电路城
Arduino UV Index Meter - Working with Ultraviolet Light - YouTube

Wireless

Overview of Crystal Oscillator Circuit Working with applications
RC Oscillator : Working using BJT and Operational Amplifier

Bluetooth

HC-05 and HC-06 zs-040 Bluetooth modules. First Look | Martyn Currey
HC-05 is master/slave, 5V
HC-06 is slave only, 3.3-5V
RX pin of both need to level shift to 3.3V, do not connect directly to Arduino

HC-05 Bluetooth Module Pinout, Specifications, Default Settings, Replacements & Datasheet
Arduino and Bluetooth module HC-05 • AranaCorp
Arduino and HC-05 Bluetooth Module Tutorial - HowToMechatronics
Arduino with HC-05 (ZS-040) Bluetooth module – AT MODE | Martyn Currey

HC 06 Bluetooth module pinout, features & datasheet
Arduino and Bluetooth module HC-06 • AranaCorp
Introduction to HC-06 - The Engineering Projects

2.4GHz

nRF24 Series - Nordic Semiconductor - nordicsemi.com

Introduction to NRF24L01 - The Engineering Projects
Arduino Wireless Communication - NRF24L01 Tutorial - HowToMechatronics
In-Depth: How nRF24L01 Wireless Module Works & Interface with Arduino
DIY Arduino RC Transmitter - HowToMechatronics

NRF24L01 compatibility with NRF24L01+ - Nordic DevZone
NRF24L01 only supports 1Mbps and 2Mbps

Nordic NRF24L01+ - real vs fake : weekend die-shot : ZeptoBars

433MHz

Insight Into How 433MHz RF Tx-Rx Modules Work & Interface with Arduino

Motor Control

robotics#Motor

Weight Sensor

How to use a Weight Sensor / Load Cell + HX711 with an Arduino – Brainy-Bits

HX711

Switch

Switch Basics - learn.sparkfun.com

Two Way Switching Explained - How to wire 2 way light switch - YouTube
3 Way Switches Explained - How to wire 3 way light switch - YouTube
Four Way Switching Explained - How to wire 4 way intermediate light switch - YouTube

Switches are Clicky; Here's Why - YouTube

有手就会!一个按键一颗芯片实现长按开关机 - YouTube EC190708

Key Matrix

How a Key Matrix Work ❗!important
logic can also be used for LED matrix
Input Matrix Scanning | Open Music Labs

键盘如何识别 104 个按键?绝对巧妙!独立按键和矩阵按键! - YouTube

Joystick

Arduino Joystick Experiment
How to connect and use Analog Joystick with Arduino – Brainy-Bits
Turn an Analog Joystick module into a PC mouse – Brainy-Bits
Dual Axis Camera Slider using a Joystick to set IN and OUT travel – Brainy-Bits
Control a ‘LOT’ of Servo Motors using a Joystick, Arduino and PCA9685 PWM Module – Brainy-Bits

Funduino Joystick Shield
Joystick Shield V1.A - www.funduinoshop.com
Joystick Shield V1.A – The Arduino Store
Arduino Gamepad Joystick Shield 1.A - Art of Circuits
Arduino nrf24l01+ and Funduino Joystick Shield - YouTube
Funduino Joystick Shield Review - YouTube

RF

nRF24L01 - 2.4GHz RF Transceiver With Arduino (Code and Schematics) | Random Nerd Tutorials

Wiegand interface - Wikiwand
Wiegand: What Is It And How Does It Work With Access Control | Kisi
monkeyboard/Wiegand-Protocol-Library-for-Arduino: Wiegand 26 and Wiegand 34 Protocol Library for Arduino

Flipper Zero

Flipper Zero — Portable Multi-tool Device for Geeks
flipperdevices/flipperzero-firmware: Flipper Zero firmware source code

Talking Sasquach - YouTube
Flipper Zero Videos - YouTube

Flipper Zero - Starter Guide - YouTube
Flipper Zero - A Hackers Review - YouTube

This Makes Hacking TOO Easy - Flipper Zero - YouTube

David Bombal
Flipper Zero: Hottest Hacking Device for 2023? - YouTube
Flipper Zero - YouTube

Custom Firmware

Flipper Zero Firmware Update via qFlipper

Unleashing the power of the Flipper Zero with custom firmware - YouTube
DarkFlippers/unleashed-firmware: Flipper Zero Unleashed Firmware

WiFi Dev Board

Flipper Zero: The Ultimate WI-FI Guide | Marauder ESP32 - YouTube
Flipper Zero: How To Run Marauder on the WiFi Dev Board - YouTube

Cars

Flipper Zero vs Cars, Bike locks, Alarm systems and Door chimes 😱 - YouTube

Warning! This is how cars are hacked. Just like in Mr Robot. - YouTube

jimilinuxguy/Tesla-Charging-Port-Opener: Files for HackRF + Portapack MAYHEM firmware to open any and all Tesla vehicle charging ports in range!

RFID

RFID Basics - learn.sparkfun.com
rfid+guide.pdf
Radio-frequency identification - Wikiwand
About RFID - Learn more about RAIN RFID, UHF RFID, passive RFID
HF RFID standards | HF RFID frequencies

Finitepi Videos - YouTube
Read and Write to RFID Tags - YouTube different standards

Choose your type of NFC tags
MiFare Cards & Tags | Adafruit PN532 RFID/NFC Breakout and Shield | Adafruit Learning System
Which NFC Chip ? | NFC.Today
NFC Guide - Shop NFC
Mifare classic 1k and NFC communication protocol - Stack Overflow

手机 NFC 到底如何使用?怎么才可以复制加密门禁卡?为什么不能直接复制? - YouTube
RFID Locks are way too easy to "Hack"! Let me show you! - YouTube

教你用智能手機製作 NFC 標籤 How to program NFC chips with your phone?【NFC 數碼轉型#10 | 教學 - 實試】 - YouTube
NFC 標籤/ 卡/ 貼紙分類介紹 Introduction to NFC chips, Tag, Card & Stickers 【 NFC 數碼轉型#11 | 教學 - 介紹】 - YouTube

RFID RC522 和 PN532 有什么区别?-控制器/处理器-与非网
RC522 supports ISO14443A/B and MIFARE
NFC Type 2 and Type 4 are based on MIFARE so RC522 can read and write those
see also NPX PN532 for full NFC support

Arduino RFID shield | Open Electronics

RC522

First Look: RC522 RFID Reader/Writer ($4 on eBay) - YouTube
#223 RFID How-To: Not only for Arduino (only legal Stuff!) - YouTube
ESP32 #33: RFID Read and Write with MFRC522 Module + ESP32 Giveaway - YouTube

MFRC522 RFID Reader with Arduino Tutorial | Random Nerd Tutorials
MFRC522 Module User Guide - Blog
Let’s make a simple Arduino RFID reader using the RC522 Module – Brainy-Bits with LED and buzzer
Clone your RFID badge - Gain entry in style! - YouTube

MFRC522 RFID Boards - YouTube Arduino
MFRC522 and ESP8266 - YouTube

Connect multiple RFID-RC522 cards? - Arduino Stack Exchange
SDA = CS/SS
RST = Set high to activate the chip
Hence, each RC522 requires unique SDA+RST pair to control
There's a reset and init sequence, see library source codes.

Datasheet

MFRC522 Standard performance MIFARE and NTAG frontend
NTAG210/212 NFC Forum Type 2 Tag compliant IC with 48/128 bytes user memory
NTAG213/215/216 NFC Forum Type 2 Tag compliant IC with 144/504/888 bytes user memory
NTAG213/215/216|NXP
ISO/IEC 14443-3:2011 Part 3 Type A final draft

Library

The MFRC522 requires special sequence to initialize, do refer to data sheet and existing libraries.

miguelbalboa/rfid: Arduino RFID Library for MFRC522
mxgxw/MFRC522-python: A small class to interface with the NFC reader Module MFRC522 LGPL
wendlers/micropython-mfrc522: (Micro)Python class to access the MFRC522 RFID reader
cefn/micropython-mfrc522: (Micro)Python class to access the MFRC522 RFID reader

MFRC522 NFC/RFID module - Espruino
www.espruino.com/modules/MFRC522.js
esprfid/esp-rfid: ESP8266 RFID (RC522, PN532, Wiegand, RDM6300) Access Control system featuring WebSocket, JSON, NTP Client, Javascript, SPIFFS

I/O Expander

General Purpose I/O: How to get more | Hackaday

PCF8574 Remote 8-Bit I/O Expander for I2C-Bus | TI.com
8-bit, 2.5-6V
usually used by LCD1602 LCD

PCF8575 Remote 16-Bit I2C and SMBus I/O Expander with Interrupt Output | TI.com
16-bit, 2.5-5.5V

PCA9685|NXP
16-channel, 12-bit PWM Fm+ I²C-bus LED controller, 6V V+

MCP23017 - Interface- Serial Peripherals - Microcontrollers and Processors
16-bit, 1.8 to 5.5V, cascadable to 8 devices

M74HC238 - 3 to 8 Line Decoder - COM-09577 - SparkFun Electronics
3 to 8 line decoder

74HC4051D - 8-channel analog multiplexer/demultiplexer | Nexperia selector pins
SparkFun Multiplexer Breakout - 8 Channel (74HC4051) - BOB-13906 - SparkFun Electronics

Speech

EEPROM

Using an EEPROM to replace combinational logic - YouTube
Build an Arduino EEPROM programmer - YouTube

Rotary Encoder

Basics of Rotary Encoders: Overview and New Technologies | Machine Design

Rev Counter
LM393

How to use a Speed Sensor with Arduino – Brainy-Bits

Weather Station

Temperature/Humidity

Overview | DHT11, DHT22 and AM2302 Sensors | Adafruit Learning System
DHT11 Sensor Pinout, Features, Equivalents & Datasheet
Fast and Easy DIY Weather Station with DHT11
Arduino DHT22 (AM2302) Tutorial + Library + Wiring
How to use the DHT11 Temperature – Humidity Sensor with Arduino – Brainy-Bits

LM35 Temperature Sensor: Pinout, Diagrams, Equivalents & Datasheet

Barometer

BMP280 also return temperature

?GY-BMP280-3.3 高精度大气压强传感器模块 高度计传感器-tmall.com 天猫
adafruit/Adafruit_CircuitPython_BMP280: CircuitPython driver for the BMP280
adafruit/Adafruit_BME280_Library: Arduino Library for BME280 sensors

GY-80 Barometer+Thermometer+Gyroscope+Accelerometer+Magnetometer
GY-521 (MPU 6050) Thermometer+Gyroscope+Accelerometer

MPL115A2 - I2C Barometric Pressure/Temperature Sensor ID: 992 - $7.95 : Adafruit Industries, Unique & fun DIY electronics and kits less precise

Gyroscope/Accelerometer

see robotics.md#imu

MPU-6050 | TDK
How to Interface Arduino and the MPU 6050 Sensor | Arduino | Maker Pro
Arduino Playground - MPU-6050

?GY-521 MPU6050 模块三维角度传感器 6DOF 三轴加速度计电子陀螺仪-tmall.com 天猫

Magnetometer (compass)

MPU-9150 | TDK
Arduino Playground - MPU-9150 MPU-6050 + AK8975

GY-271 QMC5883L
GY-511 LSM303DLHC compass + accelerometer
MCU-86 AK8975

Two Point Calibration | Calibrating Sensors | Adafruit Learning System
Tutorial: How to calibrate a compass (and accelerometer) with Arduino | Underwater Arduino Data Loggers
Arduino - RobotCompassCalibration
Advanced hard and soft iron magnetometer calibration for dummies - DIY Drones
Simple Manual Magnetometer Calibration: 7 Steps (with Pictures)
Automatic Magnetometer Calibration: 6 Steps
Calibration | LSM303 Accelerometer + Compass Breakout | Adafruit Learning System
LSM303C 6DoF Hookup Guide - learn.sparkfun.com
magnetometer - QMC5883L automatic calibration - Arduino Stack Exchange
helscream/HMC5883L_Header_Arduino_Auto_calibration: HMC5883L on Arduino with auto calibration capability

https://belchip.by/sitedocs/10882.pdf

bearing=180*atan2(y,x)/3.141592654;  //values will range from +180 to -180 degrees
bearing += 5+(58/60);//Adjust for local magnetic declination

float Mecha83::azimuth(int *a, int *b){
  float azimuth = atan2((int)*a,(int)*b) * 180.0/PI;
  return azimuth < 0?360 + azimuth:azimuth;
}

double QMC5883L::getHeading()
{
    float magData[3];
    readMagData(magData);

    /* Calculate the heading while Z axis of the module is inting up */
    double heading = atan2(magData[1], magData[0]);

    // After calculating heading declination angle should be added to heading which is the error of the magnetic field  specific location.
    // declinationAngle can be found here http://w.magnetic-declination.com/
    // For Ankara (my location) declinationAngle is ~5.5 grees (0.096 radians)
    float declinationAngle = 0.096;
    heading += declinationAngle;

    // Correct for when signs are reversed.
    if(heading < 0)
        heading += 2*PI;

    // Check for wrap due to addition of declination.
    if(heading > 2*PI)
        heading -= 2*PI;

    // Convert radian to degrees
    heading = heading * 180 / PI;

    return heading;
}

Shift Registers

8 bit serial in, parallel-out shift register with 3 states
split a byte (1 input pin) to 8 bits (8 output pins)

SN54HC595, SN74HC595 8-Bit Shift Registers With 3-State Output Registers datasheet (Rev. I)

Shift Registers - learn.sparkfun.com
Overview | Arduino Lesson 4. Eight LEDs and a Shift Register | Adafruit Learning System
Using Shift Registers to Get UNLIMITED GPIOs for our project !! - YouTube
Arduino - ShiftOut
multiwingspan Shift Register
In-Depth: How 74HC595 Shift Register Works & Interface with Arduino

Introduction to 74HC595 shift register - Controlling 16 LEDs - Protostack
我的 Stem Project (十二) Arduino Music Light Show | Mister Ngan

Arduino Shift Register LCD with 74HC595
Arduino 16x2 LCD Shift Register Library - Part 2

Arduino Daisy Chain Shift Register with 74HC595 part 1
Arduino Daisy Chain 7-segments LED Displays part 2

BBC micro:bit Shift Register - multiwingspan