Роман
Мы же верим, что он все правильно настроил
Что именно, написал на c# программульку, видит все. Понятное дело надо ковырять либу. Спрсил у бывалых. Таких нет наверное.
Ruslan
Нету
Роман
Ладно, вайршарк достать надо
_StereOo
Схема точно такая-же, как и у любого SPI дисплея
на каждом сайте разные схемы, я хз какие выбрать для своего экрана и есп.
Ruslan
Камрады, ее тут пробегал человек, который делает терминалы оплаты для вендинга?
Agent
на каждом сайте разные схемы, я хз какие выбрать для своего экрана и есп.
Лучше всего разобраться какой пин за что отвечает для начала, а не просто тыркать как где-то написано. Но в целом, когда первый раз подключал такой дисплей когда-то, не испытал каких либо проблем при следовании нагугленной информации.
Ruslan
Sergey
я уже больше больше недели пытаюсь подключить и накатить хоть какой то код, что бы он нормально работал, а не просто сиял белым
Если не получилось с наскока, откатись назад и попробуй идти от простого к сложному. Забудь что это дисплей, возьми базовый spi пример и подключись к нему просто как к обычному spi устройству, запроси статус командой 09h, сверь ответ с тем что написано в даташите
ok-home
вроде оно!
я про индуса кстати серьезно, в соседнем чате часто бродил
Ruslan
я лучше готовое возьму, индус крайне ненадёжен
ok-home
(я)
Не там другой ) прямо с берегов Ганга )))
Белибоба
телефоном
из qemu на пк подключиться к телефону?
Белибоба
И можно ли каким-то api (например из python) управлять пинами gpio? Знаю что в qemu можно, хочу что-то удобнее придумать
Белибоба
ok-home
Как?
Ща с телефона не найду. Qemu wiki ethernet support
ok-home
https://github.com/espressif/esp-toolchain-docs/blob/main/qemu%2Fesp32%2FREADME.md
Max
Air Lab Adds Sleek, Smart, and Open Source Air Quality Monitoring to Your Space Switzerland-based Networked Artifacts is preparing to launch its first product, Air Lab, an open source air quality monitoring device that measures environmental data and pollutants. The attractive device can hang on the wall, sit on a shelf, or use its integrated stand to sit on your desk, offering a clear view of the crisp ePaper display. Air Lab's hardware includes an ESP32-S3 system-on-chip (SoC), a 296 x 128-pixel ePaper Display, two air sensor types, and support electronics. The 155 x 65 x 10-millimeter unit weighs only 50 grams and has an estimated operation life from 7.5 days of active recording to 4.5 years while turned off. The gadget comes in a black anodized aluminum enclosure with an integrated stand to optimize the viewing angle. An Espressif ESP32-S3 provides a dual-core XTensa microcontroller running at 240 MHz with 2.4 GHz Wi-Fi and Bluetooth 5 (Low Energy) support. You charge, program, debug, and communicate with the board's MCU via a USB Type-C connector. Another option for getting environmental data out of Air Lab is via Wi-Fi using HTTP calls or publishing data to an MQTT broker. Air Lab's sensors include two air sensors, an NXP FXLS8974CF accelerometer, a capacitive touch controller, and a dedicated real-time clock. Both air sensors are Sensirion AG devices. An SCD41 measures CO2 content, temperature, and humidity. While an SGP41 measures volatile organic compound (VOC) and nitrogen oxide (NOx) levels. Networked Artifacts plans to publish the open source hardware under an MIT or Apache license. Air Lab's open source firmware can monitor the air quality of an environment, provide a sample history, let you mark specific events, and alert you when it detects high concentrations. Learn more about Air Lab by visiting its Crowd Supply page . There, you can also sign up for notifications to be notified when the campaign goes live. Air Lab components (📷: Networked Artifacts) https://www.hackster.io/news/air-lab-adds-sleek-smart-and-open-source-air-quality-monitoring-to-your-space-ab729df91f22
Max
UNIT Brings its DualMCU Raspberry Pi RP2040 and Espressif ESP32 Design to the UNO Form Factor Mexico City-based UNIT Electronics is taking orders for an Arduino UNO-format development board with a difference: it features both Raspberry Pi RP2040 and Espressif ESP32 microcontrollers, hoping to deliver the best of both worlds. "We designed the DualMCU One to address the challenges developers face when integrating wireless communication with precise hardware control," UNIT's Adrian Rabadan Ortiz explains. "By combining the [Espressif] ESP32 and [Raspberry Pi] RP2040, connected via SPI for fast and reliable communication, we created a board that simplifies complex system designs while unlocking more possibilities for innovation." If that sounds familiar, it should: UNIT has form here, having released the original DualMCU back in April 2023 . Like the DualMCU One, the original DualMCU paired an Espressif ESP32-WROOM-32 module and a Raspberry Pi RP2040 on a single board — but while the original used a long-and-thin gumstick style footprint, the new version opts for the iconic Arduino UNO form factor instead. The hardware in the new DualMCU One, brought to our attention by Linux Gizmos , is effectively unchanged from the original: the Raspberry Pi RP2040 delivers a pair of Arm Cortex-M0+ cores running at a stock 133MHz and 264kB of on-chip static RAM (SRAM), plus that always-handy programmable input/output (PIO) block for running state machines separately to the microcontroller cores, while the Espressif ESP32-WROOM-32 adds two Tensilica Xtensa LX7 cores running at up to 240MHz, 520kB of SRAM plus 16kB more in the real-time clock (RTC) module, and both Wi-Fi and Bluetooth Low Energy (BLE) connectivity. "The standout feature is the SPI-based communication between the two microcontrollers, enabling seamless data exchange for complex, real-time applications," Ortiz says. "With the ESP32 managing wireless communication and the RP2040 handling precision operations, this board offers unparalleled versatility and performance. Compact, robust, and designed for professionals, it's a tool that empowers your creativity." The UNIT DualMCU One is now available to order on the company's Tindie store , priced at $15 plus shipping. UNIT's DualMCU development board design is now available in an Arduino UNO-style form factor, as the DualMCU One. (📷: UNIT Electronics) The board includes a Raspberry Pi RP2040 (pictured) and an ESP32-WROOM-32 module. (📷: UNIT Electronics) https://www.hackster.io/news/unit-brings-its-dualmcu-raspberry-pi-rp2040-and-espressif-esp32-design-to-the-uno-form-factor-4511019b89ac
Alexey D.
А подкиньте пож идею. Arduino BLE. Нужно несколько BLE сервисов, хочу вынести в отдельные классы ( BLEBatteryService:BLEService, BLEStatusService:BLEService ) Но не могу найти каких-то методов у BLEServer для привязки BLEService, созданного снаружи типа BLEServer::attachService(BLEService) — есть только createService(uuid) Я хочу запихнуть все UUID сервиса и характеристик внутрь классов. Как бы вы сделали? Сделать цепочку вроде BLEBatteryService:IBLEServerService:BLEService и определить у IBLEServerService метод IBLEServerService::CreateOnServer(BLEServer) ? Сделать BLEBatteryService::CreateOn(BLEServer)?
Gotcha
Привет всем. Подскажите по регистрам пжлста: GPIO_ENABLE_W1TS_REG, GPIO_OUT1_W1TS_REG и по настройке GPIO. Делаю что-то вроде: volatile uint32_t relay_gpio_mask = (1ULL << RELAY3_GPIO) | (1ULL << RELAY4_GPIO); ESP_LOGI(pcTaskGetName(0), "Initializing GPIO mode and direction..."); // Установка GPIO в режим вывода REG_SET_BITS(GPIO_ENABLE_W1TS_REG, relay_gpio_mask, 0); // Установка GPIO в низкий уровень REG_SET_BITS(GPIO_OUT_W1TC_REG, 0, relay_gpio_mask); ESP_LOGI(pcTaskGetName(0), "GPIO initialization complete"); gpio_dump_io_configuration(stdout, relay_gpio_mask) Выдает ================IO DUMP Start================ IO[26] - Pullup: 0, Pulldown: 0, DriveCap: 2 InputEn: 0, OutputEn: 0, OpenDrain: 0 FuncSel: 0 (IOMUX) SleepSelEn: 0 IO[27] - Pullup: 0, Pulldown: 0, DriveCap: 2 InputEn: 0, OutputEn: 0, OpenDrain: 0 FuncSel: 0 (IOMUX) SleepSelEn: 0 =================IO DUMP End================== А, значит, порты на выход так и не настроились. Как правильно через регистры инициализировать порт GPIO на output? Нужно ли куда-то еще что-то писать?
Sergey
Привет всем. Подскажите по регистрам пжлста: GPIO_ENABLE_W1TS_REG, GPIO_OUT1_W1TS_REG и по настройке GPIO. Делаю что-то вроде: volatile uint32_t relay_gpio_mask = (1ULL << RELAY3_GPIO) | (1ULL << RELAY4_GPIO); ESP_LOGI(pcTaskGetName(0), "Initializing GPIO mode and direction..."); // Установка GPIO в режим вывода REG_SET_BITS(GPIO_ENABLE_W1TS_REG, relay_gpio_mask, 0); // Установка GPIO в низкий уровень REG_SET_BITS(GPIO_OUT_W1TC_REG, 0, relay_gpio_mask); ESP_LOGI(pcTaskGetName(0), "GPIO initialization complete"); gpio_dump_io_configuration(stdout, relay_gpio_mask) Выдает ================IO DUMP Start================ IO[26] - Pullup: 0, Pulldown: 0, DriveCap: 2 InputEn: 0, OutputEn: 0, OpenDrain: 0 FuncSel: 0 (IOMUX) SleepSelEn: 0 IO[27] - Pullup: 0, Pulldown: 0, DriveCap: 2 InputEn: 0, OutputEn: 0, OpenDrain: 0 FuncSel: 0 (IOMUX) SleepSelEn: 0 =================IO DUMP End================== А, значит, порты на выход так и не настроились. Как правильно через регистры инициализировать порт GPIO на output? Нужно ли куда-то еще что-то писать?
можешь попробовать вот так - то же самое но короче static void configure_led(void) { ESP_LOGI(TAG, "Example configured to blink GPIO LED!"); gpio_reset_pin(LED_GPIO_PIN); /* Set the GPIO as a push/pull output */ gpio_set_direction(LED_GPIO_PIN, GPIO_MODE_OUTPUT); gpio_set_level(LED_GPIO_PIN, 0) }
Gotcha
Вопрос именно про регистры. Нужно управлять сразу несколькими GPIO одновременно.
ㅤ
Вопрос именно про регистры. Нужно управлять сразу несколькими GPIO одновременно.
Так и через esp-idf шный хал тоже можно несколько регистров ставить. А так REG_WRITE, GPIO_ENABLE_W1TS_REG , GPIO_OUT_W1TC_REG в помощь. Ничего сложного нет, все есть внутри esp-idf. Одновременно всеравно не получится включать разные реле. Так что архитектура изначально говно
Gotcha
пишем маску, пишем ее в регистр. Применяется весь регистр. Чем не одновременность?
индзэец
мне кажется реле изначально для таких "точных" штук плохая затея
ㅤ
мне кажется реле изначально для таких "точных" штук плохая затея
Да я сразу сказал - архитектура говно. А он там на реле хочет микросекунды выиграть
Gotcha
пусть название пинов не пугает. Сейчас я ищу именно последовательность действий, которые нужно сделать, чтобы подготовить порты GPIO на output и установить их в LOW через регистры.
Gotcha
Не, ну как из-за названия пина обозвать все говном - раз плюнуть.
Gotcha
А как подсказать...
ㅤ
А как подсказать...
Так RM прочитай, тут на глаз никто не помнит названия всех регистров. Там от 0 до 31 один регистр и 32 - ххх другой. Один сет, другой клир, третий статус
Gotcha
Ваш совет похож на архитектуру с реле и "выигрышем микросекунд".
Gotcha
https://www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf Страница 52.
Gotcha
Я попросил пример кода, т.к. не в курсе про всякие "GPIO_FUNCx_OUT_SEL field in GPIO_FUNCx_OUT_SEL_CFG". Почему не в курсе? Потому что "новичок". Все что можно уже прочитал. Сюда пришел, т.к. думал, что помогут. А тут только специалист по архитектуре реле, который отправляет обратно в документацию.
Ibn Uthmān
Hello, please anyone with a good tutorial on programming esp32 with esp-idf?
Alexey D.
Hello, please anyone with a good tutorial on programming esp32 with esp-idf?
IMO: Don't. 1) ESP IDF is much harder to write and just a waste of time for beginner in comparison with Arduino. It's "must have" for individual components and unusual code, but nothing more, The best ESP IDF tutorial is Espressif docs and examples. 2) You will not find at least 3 significant open source projects made with ESP-IDF without Arduino. 3) Arduino for ESP32 is wrapper around ESP IDF, so you always can dive into ESP IDF code from Arduino code with CTRL+Click on Arduino function (in vscode) 4) While you are trying to achieve at least something with IDF, your opponent will already have MVP with arduino
Alexey D.
На тему зачем быть синьоро, когда можно быть успешным ебланитом?
Ну во-первых надо быть успешным - неважно как, а сеньористость со временем отрастет. Ну и во-вторых начинать учиться водить с перегонки нефти в бензин - путь к успеху
Mezzo Lab
Ну книгами по математическому обеспечению ЭВМ тебе себя грузить пока не стоит
Stanislav
Господа, никто не заводил es7210 на LILYGO T-Deck в idf? Если инициализировать в той же последовательности что в примере под ардуину на гите, то после включения самих ацп на линии i2c случается конфуз с подскоком нуля до ~половины питания Что интересно - при этом из 4 bias на одном остается ноль Было подозрение на живость платы (иначе объяснить не смог 🤣) но приехала вторая (уже новой ревизии) и те-же грабли 🙄
Mezzo Lab
Ну во-первых надо быть успешным - неважно как, а сеньористость со временем отрастет. Ну и во-вторых начинать учиться водить с перегонки нефти в бензин - путь к успеху
А разве начинать работу с МК (iot, встраиваемые системы) надо не с изучения теории электроники и языков программирования?
Mezzo Lab
Или типа взял девборду, присрал проводками светодиоды, насмотрелся гейвера и давай дискотеку устраивать А если что, можно тысячей тупых вопросов людей зaeбaть, они ведь знающие, пускай cyки такие и делятся знаниями
Alexey D.
А разве начинать работу с МК (iot, встраиваемые системы) надо не с изучения теории электроники и языков программирования?
1) А чем "Язык программирования Arduino" хуже "Языка программирования IDF" ? 2) Про теорию электроники - это от задачи сильно зависит. С таким жирным МК - возможно что электроники ты никогда и не коснешься.
Alexey D.
Будешь себе сидеть, делать очередную игрульку а-ля Fliper Zero или эмулятор NES. И в этом случае именно так - присрать пару кнопок и дисплей, а остальное софт
Alexey D.
Mezzo Lab
А ардуино и идф теперь языки программирования?
Скоро об этом будет в новом издании Таненбаума
ㅤ
Какой вопрос - такой и ответ.
А как ты из его вопрос пришел к такому умозаключению?
Mezzo Lab
А как ты из его вопрос пришел к такому умозаключению?
Чем жирнее МК, тем меньше надо знать электронику Это надо спринтерам передать с их альтерами?
Alexey D.
А как ты из его вопрос пришел к такому умозаключению?
очень просто - ТС спрашивал про IDF, а тут рассказывают про то, что надо с языков программирования начинать..
Mezzo Lab
@testtest133 ты видел как бот предупреждает о слитном написании разных раскладок? Типа не ошибся ли синьоро
Mezzo Lab
А с чего надо начинать?
Для начала надо бы посрать
Alexey D.
Так ты сам начал его в ранг дебилов загонять
Да вроде нет. Товарищ начал с IDF без указания конкретики - я ему сразу сказал что для новичка туда соваться не надо.
Mezzo Lab
Я вот считаю Ардуино не надо
Mezzo Lab
Вернее Ардуино можно, но уже если в финале, когда уже регистрами тасуешь на низах
Alexey D.
Я вот считаю Ардуино не надо
А я считаю что IDF не надо. Только если припрет. Я и написал сразу что это мое мнение первой строкой. И даже аргументировал - почему. в ESP ты регистрами не подергаешь эффективно - тебе все равно придется фреймворк использовать, а их тащемта 3 с половиной - дуня, IDF, кикропитон и что-то на go-embedded рожают
Alexey D.
Если бы речь про AVR или STM шла - другой разговор, там Arduino только мешает
Alexey D.
🦫 ембеде родили
Ну такое.. wifi нет, bt нет - нафиг тогда esp
ㅤ
@testtest133 нравится выражение?
Не очень. Но ясно о чем ты