Кольцевая подсветка для корпуса ESP32-Cam........
Я хотел установить ремикс fuchsr на популярный корпус ESP32-CAM (первоначально разработанный bkgoodman)… но мне нужен был более сильный свет. Поэтому я купил на Aliexpress один из 12 светодиодных кольцевых неопиксельных светильников и разработал этот держатель, который приклеивается к оригинальному корпусу. Три провода можно пропустить через оригинальное отверстие для светодиода-вспышки.
Можно печатать лицевой стороной вниз — если перемычки провисают, необходимо немного почистить их перед приклеиванием кольца светодиода к держателю.
====================
Попробую объяснить, как я менял «оригинальную прошивку камеры Prusa» для ESP32-CAM для модуля AI-Thinker для подсветки кольца Neopixel. Делайте это на свой страх и риск — и НЕТ, я не могу разместить это на GitHub как форк, потому что я знаю, как программировать — но я никогда не использовал GitHub или что-то подобное, и я не собираюсь учиться, как это делать только для ��того проекта;)
Источник прошивки — у меня это сработало 28 декабря 2024 г.
https://github.com/prusa3d/Prusa-Firmware-ESP32-Cam
Вывод данных NeoPixel должен быть подключен к выводу 13 платы ESP32. Подключение внешнего датчика температуры/влажности больше НЕ будет возможным. Свет будет постоянно гореть в затемненном состоянии и загорится на 100 % в течение настроенного времени мигания.
камера.ч
После существующих строк #include добавьте
#include
камера.cpp
В определениях после
Камера SystemCamera(&SystemConfig, &SystemLog, FLASH_GPIO_NUM);
вставить
Неополоса Adafruit_NeoPixel = Adafruit_NeoPixel(12, FLASH_NEOPIXEL_LED_PIN, NEO_RGB + NEO_KHZ800);
В камере::Init, после
ИнитКамераМодуль();
ПрименитьCameraCfg();
ПолучитьМодельКамеры();
вставить
неострип.начать();
neostrip.setBrightness(100);
неострип.шоу();
В Camera::SetFlashStatus после
/* rgbLedWrite элемент управления FLASH */
измените код на
#if (истина == CAMERA_FLASH_NEOPIXEL)
если (истина == i_data) {
for(int i_px=0; i_px<12; i_px++)
neostrip.setPixelColor(i_px, FLASH_ON_STATUS, FLASH_ON_STATUS, FLASH_ON_STATUS*0.45);
} еще если (ложь == i_data) {
for(int i_px=0; i_px<12; i_px++)
neostrip.setPixelColor(i_px, FLASH_OFF_STATUS, FLASH_OFF_STATUS, FLASH_OFF_STATUS*0.25);
}
неострип.шоу();
#endif
модуль_AI_Thinker_ESP32-CAM.h
Изменить
/* — FLASH LED CFG ---------------*/
чтобы
#define ENABLE_CAMERA_FLASH true
#define CAMERA_FLASH_DIGITAL_CTRL true
#define CAMERA_FLASH_PWM_CTRL false
#define CAMERA_FLASH_NEOPIXEL true
#define FLASH_GPIO_NUM -1
#define FLASH_NEOPIXEL_LED_PIN 13
#define FLASH_OFF_STATUS 64
#define FLASH_ON_STATUS 255
//#define FLASH_PWM_FREQ 2000
//#define FLASH_PWM_CHANNEL 0
//#define FLASH_PWM_RESOLUTION 8
Изменить
#define DHT_SENSOR_ENABLE true
ложному





























