← обратно в блог

ESP32-S3R8

Года 2 назад попал в руки микроконтроллер ESP32-S3R8, он же Lilygo T-display-s3, написал часы на TinyGO и… забросил.

И вот на дворе 2026 и опять чешутся руки и хочется что-то поинтересней очередного API/GRPC и уж точно не telegram-bot.

Если ресёчить какие-нибуть проекты на ESP32, то в первую очередь попадаются сканер WiFi:

package main

import (
	"time"

	"tinygo.org/x/espradio"
)

func main() {
	time.Sleep(2 * time.Second)
	println("Initializing Wi-Fi...")
	if err := espradio.Enable(espradio.Config{}); err != nil {
		println("Enable error:", err.Error())
		return
	}

	if err := espradio.Start(); err != nil {
		println("Start error:", err.Error())
		return
	}

	for range time.NewTicker(5 * time.Second).C {
		println()
		println("Scanning Wi-Fi...")

		aps, err := espradio.Scan()
		if err != nil {
			println("Scan error:", err.Error())
		} else {
			println("Found:", len(aps))

			for _, ap := range aps {
				println("SSID:", ap.SSID, "| RSSI:", ap.RSSI, "dBm")
			}
		}
	}
}

прошиваем…

> tinygo flash -monitor -target=esp32s3-generic -serial=usb -port=COM6 .

Но есть же ещё и Ble/Bluetooth - я поигралася с коммутацией ESP32 с велокомпом (ВК), но там случилось ой, всё из-за проприетарности и отсутствия документации API самого ВК, а играть в реверс-инжиниринг я пока не настроен.


Хочу павука

На просторах интернета попалась статья про Шестиногий робот-паук с сервоприводом и Arduino - отдельное спасибо автору за проделанную работу.

Что я хочу:

  • 3 сервопривода на каждую ногу и того - 18 сервоприводов
  • 3 “правых” ноги подключены к “правому” PCA9685, 3 “левых” - к “левому” - и того - 2 PCA9685 - тут нужно будет поработать паяльником для переключения джампера адресации ШИМ
  • 2 x PCA9685 последовательно подключены PCA9685->PCA9685->ESP32S3
  • ESP32S3 - это у нас станет контроллер движения
  • отдельная линия питания для логического блока, отдельная для силового блока
  • Orange PI 4 LTS подключается к ESP32 по UART_RX+UART_TX

Как-то так
Как-то так

CirkitDesigner