Sid
коллега оба девайса разбирал
romanetz
подзюбить можно беспалева ))
Sid
а в мини на выключателе вроде съэкономили
romanetz
А самому стать "майором" можно? ))
romanetz
Обновить, так сказать, прошивку
Anton
Благодарю
для общего развития можно это почитать: https://isocpp.org/wiki/faq/pointers-to-members
Anton
ну и т п, литературы масса. в отличии от Трампа, нас в гугле пока не банят
Anton
ну кроме некоторых иных прав доступа к членам класса, возможно
Anton
с точки зрения указателей и вызовов — не отличаются
Anton
ппл, такой вопрос. я пакую номер gpio побитово в определённом значении. сколько битов разумно отвести на номер gpio? если я просто возьму 6 (0-63), то не получится ли, что в будущих чипах номера gpio могут вылезти за этот диапазон? то есть вопрос о возможных будущих схемах нумерования gpio
Anton
гы гы. Это ты зря на русском канале спрашиваешь. Надо сразу вендору писать :)
тоже сомнительно что получу ответ :) вопрос касается SPI: в поле "user", как в примере, я храню 1/0 для пина DC перед началом транзакции, но номер пина так же безусловно помещается в этом поле. и теперь я задумался, можно ли туда ещё флажок-другой пихнуть... :)
WerdnaZX
На наш век хватит. Флажок-другой, думаю, можно
Andrew
Все это херня
Alex
Спасибо
Sid
Rainmaker прикольный конечно
Daniil
Кто нибудь налаживал общение есп с компом по вифи(по сокетам) Как это сделать лучше? Мб статья есть? Или видос... Искал в инете, и инфы не много
Daniil
(по сокетам) - это как?
Ну типо без доступа в инет
Slava
http get post
Daniil
http get post
И все? Все так просто?
Daniil
http get post
Ни каких танцев?
Slava
да, вэб сервера поднимаешь на всех есп
Denisio
либо ищешь MQTT брокер, ставишь его на комп и цепляешь на него все еспшки
Daniil
да, вэб сервера поднимаешь на всех есп
Не, у нас есть роутер, и все общение через него должно быть. И мэш было б не плохо туда прикрутить
Daniil
чё? естественно через роутер трафик пойдет
Понял, спасибо, пойду гуглить
Slava
Понял, спасибо, пойду гуглить
//--------------------------------------------------------- void handle_input_post(){ //Serialprintln("handle_input_post start"); server.send ( 200, "text/plain", "ok" ); String chat_id = server.arg("chat_id"); String msg = server.arg("plain"); String bot_ip = server.arg("bot_ip"); String minion_name = server.arg("minion"); String sek = server.arg("sek"); input_post( chat_id, msg, bot_ip, minion_name, sek); }
Юрий
Смотря какие задачи, можно и mqtt
Daniil
Задача такая, что несколько есп надо связать в сеть, для общения с компом
Denisio
Понял, спасибо, пойду гуглить
https://randomnerdtutorials.com/esp8266-web-server/
Daniil
Спасибо всем за инфу
Denisio
там прямо первый же исходник - это твоё
Slava
Спасибо всем за инфу
не забудь сделать счетчик сообщений, для пропуска уже полученных и паузы и повторы в случае не коннекта. 😜
Максим
Есть ребята, которые в Питере могут запрограммировать на блок управления m5stack basic core?
Максим
Задача следующая: У нас есть лазерные датчики, которые считывают нахождение человека. Если человек есть, то идет звуковое оповещение, если нет, то тишина
Максим
Slava
сижу, читаю, никого не трогаю и вдруг...
Slava
Sid
Курит много)
Slava
Slava
???
Sid
Мариваны
Sid
Крапивы
Sid
Лечебное марихуаны
Slava
пиши канабис, всё равно никто латынь не знает
Вітьок
Вітьок
Вітьок
Привет, загружаю вот этот код на wemos1d mini: #include <OneWire.h> //////////////////////TEMP SENSOR SECTION #include <DallasTemperature.h> #include <Adafruit_GFX.h>//////////////////////OLED SECTION #include <Adafruit_SSD1306.h> #define OLED_RESET 0//////////////////////////////OLED #define WIDTH 128//////// the lower right corner is (X=128, Y=63) #define HEIGHT 64 #define NUM_PAGE 8 #define NUMFLAKES 10 #define XPOS 0/////////////////Every pixel on the display has a coordinate that is specified with a X and //Y. ///////////////////The X increases from left to right and Y increases from top to the bottom. and #define YPOS 0//////////////////The upper left corner of the screen is (X=0, Y=0) #define DELTAY 2 #define LOGO16_GLCD_HEIGHT 16 #define LOGO16_GLCD_WIDTH 16 Adafruit_SSD1306 display(OLED_RESET); #define ONE_WIRE_BUS 10////////////////////temp signal wire coonected to 8 D/PIN OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); float Celcius = 0; int touchPin = 2;// connect output from TTP223 to this int val = 0; int relayPin = 8;// Connected to relay void setup(void) { display.begin(SSD1306_SWITCHCAPVCC, 0x3C);///// Call the begin function of the display object by passing our I2C address 0x3C Serial.begin(9600); sensors.begin(); display.clearDisplay();/////////////clears the display completely. display.setTextSize(2);/////////accepts an integer number as a size. The greater the number, the bigger the text would be. Smallest size is 1 which is the default size //of texts. display.setTextColor(WHITE);///////////////specify the color using display.setTextColor() WHITE/BLACK display.setCursor(15, 8);//////////////////specify where on the display we're going to display the text. display.println("SREEKANTH");////////////We draw something on by calling on our (display) object, display.display();//////////////////Call the display.display() function to make the actual drawing happen on the hardware level. delay(2000); Serial.begin(9600); pinMode(touchPin, INPUT); pinMode(relayPin, OUTPUT); } void loop() { sensors.requestTemperatures();///////////////getting the actual temperature value. Celcius = sensors.getTempCByIndex(0);//////////get the temperature in Celsius.we’re using just one sensor its index is 0. //////////////////////////////////////////////If you have more than one sensor, you use index 0 for the ///first sensor, index 1 for the second sensor, and so on. Serial.print(" C "); Serial.println(Celcius); display.clearDisplay(); display.setTextColor(WHITE); display.setCursor(30, 0); display.setTextSize(1); display.println("TEMPERATURE:"); display.setTextSize(2); display.setTextColor(WHITE, BLACK); display.setCursor(34, 14); display.println(Celcius); display.drawLine(0, 8, 128, 8, WHITE); display.drawLine (110, 10, 110, 22, WHITE); display.drawLine (114, 10, 114, 22, WHITE); display.drawLine (110, 10, 114, 10, WHITE); display.drawCircle (112, 25, 3, WHITE); display.drawCircle (112, 25, 4, WHITE); display.drawPixel (112, 12, WHITE); display.drawPixel (112, 14, WHITE); display.drawPixel (112, 16, WHITE); display.drawPixel (112, 18, WHITE); display.drawPixel (112, 20, WHITE); display.display(); digitalWrite(relayPin, HIGH); val = digitalRead(touchPin); if(val ==1){ Serial.println("Touched"); digitalWrite(relayPin, LOW); } delay(100); Serial.println(); } И получается:(смотрите фото 2), на ардуино uno всё работает(Смотрите фото 1). При загрузке тестового скетча от adafruit для проверки графики, на wemos1d mini всё отображается без ошибок. Что делать?
Andy
Привет, загружаю вот этот код на wemos1d mini: #include <OneWire.h> //////////////////////TEMP SENSOR SECTION #include <DallasTemperature.h> #include <Adafruit_GFX.h>//////////////////////OLED SECTION #include <Adafruit_SSD1306.h> #define OLED_RESET 0//////////////////////////////OLED #define WIDTH 128//////// the lower right corner is (X=128, Y=63) #define HEIGHT 64 #define NUM_PAGE 8 #define NUMFLAKES 10 #define XPOS 0/////////////////Every pixel on the display has a coordinate that is specified with a X and //Y. ///////////////////The X increases from left to right and Y increases from top to the bottom. and #define YPOS 0//////////////////The upper left corner of the screen is (X=0, Y=0) #define DELTAY 2 #define LOGO16_GLCD_HEIGHT 16 #define LOGO16_GLCD_WIDTH 16 Adafruit_SSD1306 display(OLED_RESET); #define ONE_WIRE_BUS 10////////////////////temp signal wire coonected to 8 D/PIN OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); float Celcius = 0; int touchPin = 2;// connect output from TTP223 to this int val = 0; int relayPin = 8;// Connected to relay void setup(void) { display.begin(SSD1306_SWITCHCAPVCC, 0x3C);///// Call the begin function of the display object by passing our I2C address 0x3C Serial.begin(9600); sensors.begin(); display.clearDisplay();/////////////clears the display completely. display.setTextSize(2);/////////accepts an integer number as a size. The greater the number, the bigger the text would be. Smallest size is 1 which is the default size //of texts. display.setTextColor(WHITE);///////////////specify the color using display.setTextColor() WHITE/BLACK display.setCursor(15, 8);//////////////////specify where on the display we're going to display the text. display.println("SREEKANTH");////////////We draw something on by calling on our (display) object, display.display();//////////////////Call the display.display() function to make the actual drawing happen on the hardware level. delay(2000); Serial.begin(9600); pinMode(touchPin, INPUT); pinMode(relayPin, OUTPUT); } void loop() { sensors.requestTemperatures();///////////////getting the actual temperature value. Celcius = sensors.getTempCByIndex(0);//////////get the temperature in Celsius.we’re using just one sensor its index is 0. //////////////////////////////////////////////If you have more than one sensor, you use index 0 for the ///first sensor, index 1 for the second sensor, and so on. Serial.print(" C "); Serial.println(Celcius); display.clearDisplay(); display.setTextColor(WHITE); display.setCursor(30, 0); display.setTextSize(1); display.println("TEMPERATURE:"); display.setTextSize(2); display.setTextColor(WHITE, BLACK); display.setCursor(34, 14); display.println(Celcius); display.drawLine(0, 8, 128, 8, WHITE); display.drawLine (110, 10, 110, 22, WHITE); display.drawLine (114, 10, 114, 22, WHITE); display.drawLine (110, 10, 114, 10, WHITE); display.drawCircle (112, 25, 3, WHITE); display.drawCircle (112, 25, 4, WHITE); display.drawPixel (112, 12, WHITE); display.drawPixel (112, 14, WHITE); display.drawPixel (112, 16, WHITE); display.drawPixel (112, 18, WHITE); display.drawPixel (112, 20, WHITE); display.display(); digitalWrite(relayPin, HIGH); val = digitalRead(touchPin); if(val ==1){ Serial.println("Touched"); digitalWrite(relayPin, LOW); } delay(100); Serial.println(); } И получается:(смотрите фото 2), на ардуино uno всё работает(Смотрите фото 1). При загрузке тестового скетча от adafruit для проверки графики, на wemos1d mini всё отображается без ошибок. Что делать?
Лезть в код библиотеки драйвера и разбираться чего ардуинщики накрутили
Вітьок
Лезть в код библиотеки драйвера и разбираться чего ардуинщики накрутили
Тестовый скетч работает, а загружаемый почему-то, не работает. Может в самом скетче что-то добавить или убрать?
romanetz
Задача такая, что несколько есп надо связать в сеть, для общения с компом
Ну так там обычные сокеты Беркли из lwip, либо их обёртки цппшные
Юрий
Нахер мбтцп там?
Данные брать проще и быстрее чем c mqtt, + быстрая визуализация.
R.Maks
Привет. Только только вступив в эту сферу. Вопрос: Я же могу залить прошивку в esp01 через USB-UART спомощью программы "ARDUINO IDE"(канешно же с добавлением библиотек и ядра)
R.Maks
Любой USB - ttl подойдет
Понял. Спасибо.
Daniil
Понял. Спасибо.
ты только шей 3v
Daniil
НЕ 5!!!!
R.Maks
ты только шей 3v
Пасиба. Я шарю)
Andrew
В итоге получилось у меня соединить внешний I2S поток с BT A2DP на ESP32. Но возникла проблемка следующего плана: частоты звука едут, вместо 1кГц колонка играет 914Гц. И почему-то UNDERFLOW ошибки вылетают, якобы I2S-поток не полностью загружает BT-стрим.
Andrew
Кто-нибудь ловил нечто похожее?
Slava
Хоть пропустить. Только как?
Словил вчера кривое сообщение и это не помогло, сделал по другому в коде. Интересно?
Денис
Всем привет. Как очистить содержимое файла SPIFFS, без удаления самого файла? file.println?