Size: a a a

ESP8266 & ESP32 [RU]

2020 November 27

DS

Dmitriy Soloshenko in ESP8266 & ESP32 [RU]
я знаю для чего он мне нужен. более того, у меня есть необходимый код, который будет с ним работать. Но в идеале, я хотел бы его воткнуть в вемос, с гарантией того, что он будет работать. а в случае покупки HC-05  высока вероятность того, что пользоваться блютузом можно будет только при нажатой кнопке. Что, мягко говоря, не входит в мои планы. Поэтому и спрашиваю у тех кто знаком с Wemos / Lolin D1 mini - есть ли такой шилд под него.
источник

DS

Dmitriy Soloshenko in ESP8266 & ESP32 [RU]
Код ничего не знает о электронной платформе. Он испозует конфигурацию Espressif. Именно по этой причине, я говорю про шилд - чтоб не заморачиваться с тем, что именно может тот или иной чип. Это не моя сфера. Вы же навязываете мне способ решения через ковыряния в радиоэлектронике. может вам это и интересно, но мне - совсем нет.
источник

R

Resident in ESP8266 & ESP32 [RU]
Dmitriy Soloshenko
Код ничего не знает о электронной платформе. Он испозует конфигурацию Espressif. Именно по этой причине, я говорю про шилд - чтоб не заморачиваться с тем, что именно может тот или иной чип. Это не моя сфера. Вы же навязываете мне способ решения через ковыряния в радиоэлектронике. может вам это и интересно, но мне - совсем нет.
1 в 1 4ре проводка соединить думаю сложностей у вас не возникнет
источник

DS

Dmitriy Soloshenko in ESP8266 & ESP32 [RU]
Resident
1 в 1 4ре проводка соединить думаю сложностей у вас не возникнет
нет. с этим не возникнет. а вот с библиотекой - SerialBluetooth  - вероятнее всего. Во всяком случае на esp32  DOIT она не коннектится с iOS. А вот будут ли поддерживаться другие библиотеки - вопрос. Соотвественно, придется экспериментировать.
источник

DS

Dmitriy Soloshenko in ESP8266 & ESP32 [RU]
Вы рассуждаете как электронщик, а не как разработчик, который вынужден работать с тем, что сделали электронщики. Ни один из сканеров не видит то, блютуз ядро BluetoothSerial, которое запущено на esp32  сервере. Какова причина? Может быть то, что библиотека опирается на стандарт 4.0, а не 4.1. Но это только гипотеза. Факт в том, что iOS не видит DOIT.  Мне нет дела до технических причин этого. Другие библиотеки - прекрасно справляются с этой задачей. Работоспособность HC-05 рекомендуют проверять именно через BluetoothSerial. Еще раз говорю - меня интересует надежное решение из коробки, а не «собери сам».
источник

KK

Konstantin Kozyrev in ESP8266 & ESP32 [RU]
Доброго дня. Есть железка Nodemcu. Задача - отправить HTTPS-запрос в APIшку. Проблема в том, что ESP8266HTTPClient в заголовок Host подставляет значение с https://, что не является валидным заголовком для API. Если в строке host'a убрать https://, тогда метод begin() (перегрузка, принимающая первым аргументом WiFiClient) не работает по HTTPS и на порт для HTTPS отправляет Plain-HTTP, что так же не является корректным поведением. И всё это не смотря на то, что у данной перегрузки begin() есть параметр https, который определяет протокол работы.

Сталкивался ли кто-нибудь с похожей проблемой? Если да, как фиксили? Мне в голову приходят три варианта:
1.) Использовать deprecated-методы, которые принимают SSL-Fingerprint. Не хотелось бы: deprecated всё-таки;
2.) Исправить код библиотеки, чтобы заголовок формировался правильно. Потом задолбаюсь обновляться;
3.) Проксировать запросы к API. Лишняя прослойка и явный костыль.
источник

DS

Dmitriy Soloshenko in ESP8266 & ESP32 [RU]
Konstantin Kozyrev
Доброго дня. Есть железка Nodemcu. Задача - отправить HTTPS-запрос в APIшку. Проблема в том, что ESP8266HTTPClient в заголовок Host подставляет значение с https://, что не является валидным заголовком для API. Если в строке host'a убрать https://, тогда метод begin() (перегрузка, принимающая первым аргументом WiFiClient) не работает по HTTPS и на порт для HTTPS отправляет Plain-HTTP, что так же не является корректным поведением. И всё это не смотря на то, что у данной перегрузки begin() есть параметр https, который определяет протокол работы.

Сталкивался ли кто-нибудь с похожей проблемой? Если да, как фиксили? Мне в голову приходят три варианта:
1.) Использовать deprecated-методы, которые принимают SSL-Fingerprint. Не хотелось бы: deprecated всё-таки;
2.) Исправить код библиотеки, чтобы заголовок формировался правильно. Потом задолбаюсь обновляться;
3.) Проксировать запросы к API. Лишняя прослойка и явный костыль.
Спасибо, тебе, добрый человек. То-то я не мог понять почему у меня http клиент с https  сервером не работает.
источник

KK

Konstantin Kozyrev in ESP8266 & ESP32 [RU]
Dmitriy Soloshenko
Спасибо, тебе, добрый человек. То-то я не мог понять почему у меня http клиент с https  сервером не работает.
Есть подозрение, что мой ход мыслей не верен. Первые два варианта в итоге не помогли. Исправленный запрос с Host без https:// так же сервисом воспринимается как Plain-HTTP. Deprecated-метод с SHA-1-fingerprint'ом валится с Error: SSL error 40.  

Подозреваю, что первым аргументом в HTTPClient::begin() можно передать WiFiClientSecure вместо простого WiFiClient, но с этим так и не получилось разобраться ):

В итоге сделал проксю через питонячий Flask.
источник

R

Resident in ESP8266 & ESP32 [RU]
Konstantin Kozyrev
Есть подозрение, что мой ход мыслей не верен. Первые два варианта в итоге не помогли. Исправленный запрос с Host без https:// так же сервисом воспринимается как Plain-HTTP. Deprecated-метод с SHA-1-fingerprint'ом валится с Error: SSL error 40.  

Подозреваю, что первым аргументом в HTTPClient::begin() можно передать WiFiClientSecure вместо простого WiFiClient, но с этим так и не получилось разобраться ):

В итоге сделал проксю через питонячий Flask.
Жуть через фласк
источник

R

Resident in ESP8266 & ESP32 [RU]
Не проще уж тогда было через requests
источник

R

Resident in ESP8266 & ESP32 [RU]
Konstantin Kozyrev
Есть подозрение, что мой ход мыслей не верен. Первые два варианта в итоге не помогли. Исправленный запрос с Host без https:// так же сервисом воспринимается как Plain-HTTP. Deprecated-метод с SHA-1-fingerprint'ом валится с Error: SSL error 40.  

Подозреваю, что первым аргументом в HTTPClient::begin() можно передать WiFiClientSecure вместо простого WiFiClient, но с этим так и не получилось разобраться ):

В итоге сделал проксю через питонячий Flask.
А в есп за это отвечает bearssl найтиье примеры
источник

R

Resident in ESP8266 & ESP32 [RU]
Это класс из либы wifi
источник

KK

Konstantin Kozyrev in ESP8266 & ESP32 [RU]
Resident
А в есп за это отвечает bearssl найтиье примеры
Ну, примеры в репозитории ESP8266 только с deprecated-методами. И с ними тоже не получилось.
источник

KK

Konstantin Kozyrev in ESP8266 & ESP32 [RU]
Resident
Не проще уж тогда было через requests
Т.е?
источник

R

Resident in ESP8266 & ESP32 [RU]
Либа питонячья
источник

R

Resident in ESP8266 & ESP32 [RU]
Запросы делать
источник

R

Resident in ESP8266 & ESP32 [RU]
Стандарта а фласк целый веб фреймворк
источник

R

Resident in ESP8266 & ESP32 [RU]
источник

KK

Konstantin Kozyrev in ESP8266 & ESP32 [RU]
Resident
Запросы делать
Окей. А принимать их она тоже позволит? Т.е, запустить веб-сервис, который будет запросы принимать.
источник

R

Resident in ESP8266 & ESP32 [RU]
Konstantin Kozyrev
Окей. А принимать их она тоже позволит? Т.е, запустить веб-сервис, который будет запросы принимать.
А зачем тут уже сервер http
источник