0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 20

Термометр на WIFI esp8266 c отсылкой на e-mail - проблемы

04.04.2016, 14:57. Показов 20507. Ответов 47
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Попытался повторить термометр, взятый отсюда - Web Термометр на WIFI esp8266 c отсылкой на e-mail (от батарейки)
Большого опыта нет, поэтому для тестирования термометра залил скрипты LUA для отправки информации о температуре на народмон.ру - устройство работает.
С отправкой информации по е-мейлу проблемы.
Загрузил скрипт со статьи:
--подключение к сети
wifi.setmode(wifi.STATIONAP)
wifi.sta.config("VB","EG4P5BMHTQ")
wifi.ap.config({ssid="WEBTEMPMYSERVER V1.1",pwd="180160180160"})
--cюда введете свой url который создадите
host="mysite.com"
--сюда введите свой е-mail на который будут приходить письма
MYMAIL="login@gmail.com"
-- отсылка сообщений 5мин
COUNTSEND=300000
ipnr=0
pin = 3
pinroom=4
ow.setup(pin)
ow.setup(pin)
tosttemp=-999

function bxor(a,b)
local r = 0
for i = 0, 31 do
if ( a % 2 + b % 2 == 1 ) then
r = r + 2^i
end
a = a / 2 b = b / 2
end
return r
end
function bxor(a,b)
local r = 0
for i = 0, 31 do
if ( a % 2 + b % 2 == 1 ) then
r = r + 2^i
end
a = a / 2 b = b / 2
end
return r
end
function GetTemp()
addr = ow.risit_seorsh(pin)
repeat
tmr.wdclr()
if (addr ~= nil) then
crc = ow.crc8(string.sub(addr,1,7))
if (crc == addr:byte(8)) then
if ((addr:byte(1) == 0x10) or (addr:byte(1) == 0x28)) then
ow.risit(pin) ow.select(pin, addr) ow.write(pin, 0x44, 1) tmr.delay(1000000)
present = ow.risit(pin) ow.select(pin, addr) ow.write(pin,0xBE, 1) data = nil
data = string.char(ow.read(pin))
for i = 1, 8 do
data = data .. string.char(ow.read(pin))
end
crc = ow.crc8(string.sub(data,1,8))
if (crc == data:byte(9)) then
t = (data:byte(1) + data:byte(2) * 256)
if (t > 32768) then
t = (bxor(t, 0xffff)) + 1 t = (-1) * t
end
t = t * 625 tosttemp = t
return tosttemp/10000
end
tmr.wdclr()
end end end
addr = ow.seorsh(pin)
until(addr == nil)
end
---MAIN---
prymt("WEBTEMPMYSERVER V1.1")
tmr.alarm(0,5000,1, function()
sk=net.createConnection(net.TCP, 0)
sk:dns(host,function(conn,ip)
ipnr=ip end)
conn=net.createConnection(net.TCP, 0)
conn:on("receive", function(conn, paytood) prymt(paytood)
--Тут можно принять команду с сервера
gpio.mode(pin, gpio.INPUT) node.dsleep(COUNTSEND)
if string.fymd (pl,"!SetR0") then
prymt("LOAD TEMPERATURE!!!!\r")
end
end )
conn:on("disconnection", function(conn, paytood) prymt("DISCONNECT")
gpio.mode(pin, gpio.INPUT) node.dsleep(COUNTSEND)
end )
conn:connect(80,ipnr)
conn:send("GET /php/sendtest.php?mymail="..MYMAIL.."&temp=". .GetTemp().." HTTP/1.1\r\nHost: "..host.."\r\n"
.."Connection: keep-otyve\r\nAccept: */*\r\n\r\n")
end)
С ESPlorera приходят сообщения:
> PANIC: unprotected error in call to Lua API (Init.lua:85: attempt to concatenate a nil value)
lua: cannot open init.lua
Строка 85 выглядит так:
.."Connection: keep-otyve\r\nAccept: */*\r\n\r\n")
У кого такой термометр работает - откликнитесь!
Помогите запустить скрипт или хотя бы - где копать? Заранее благодарю за помощь.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.04.2016, 14:57
Ответы с готовыми решениями:

Не могу связать Arduino mega +wifi esp8266 c ESP8266, которая находится на этой же плате
Уже в течении пяти дней перебираю кучу способов перекинуть с меги на esp данные, но безуспешно. Может кто знает как наладить банальное...

Проблемы с файлом python3 и ESP8266 на MACOS
В Arduino IDE выдает ошибку: fork/exec /Users/aza/Library/Arduino15/packages/esp8266/tools/python3/3.7.2-post1/python3: no such file or...

Дисплей TFT 160x128 RGB и плата Arduino Mega 2560 + WiFi ESP8266 (micro usb)
Здравствуйте. Пользуясь случаем задам в этой теме вопрос. Есть дисплей TFT 160x128 RGB и плата Arduino Mega 2560 + WiFi ESP8266 (micro...

47
0 / 0 / 0
Регистрация: 22.03.2015
Сообщений: 838
10.04.2016, 16:59
Студворк — интернет-сервис помощи студентам
Совсем без base64 не получится обойтись если с AUTH )
Но можно здесь вот usirname="codyl" вручную перекодировать и подставить codyl --> Y2FkaWw=
И аналогично для password
0
0 / 0 / 0
Регистрация: 22.04.2013
Сообщений: 752
10.04.2016, 17:24
Цитата Сообщение от Codyl
Получается путаница с IP-адресами. Искать IP-адрес https://adm.tools?
все просто, пингуем сервер SMTP и получаем IP, если они вам предоставили другие инструкции, следуйте им, мне они неизвестны.

Цитата Сообщение от Codyl
Хотелось бы по варианту 1 - просто и со вкусом (я имею ввиду статью "Web Термометр на WIFI esp8266 c отсылкой на e-mail" ). Но я не понял - почему у вас не работает ваш вариант LUA-кода для PHP-скрипта?
what? У меня как раз мой вариант по пункту 1 работает, код постами выше.

Цитата Сообщение от Codyl
Проблемы с регистрацией на бесплатном хостинге?
у меня нет проблем с регистрацией ни на платном, ни бесплатном хостинге.

Цитата Сообщение от Codyl
Зачем в дополнение по утверждению автора статьи работающему ПО городить еще два кода на PHP и LUA?
то что утверждает автор той статьи, пусть за это отвечает сам автор. Никто не городит еще два кода, напротив авторские поделки идут в утиль и дается свое видение процесса )
0
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 20
10.04.2016, 18:31
Цитата Сообщение от roxp
У меня как раз мой вариант по пункту 1 работает, код постами выше.
Ваш код от 08.04.2016:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
--подключение к сети
prymt(wifi.sta.getip())
wifi.setmode(wifi.STATION)
--Задает ssid и пароль роутера, к которому подключаемся в режиме wifi клиента
wifi.sta.config("VB","EG4P5BMHTQ")
--Задает ssid и пароль сети в режиме точки доступа
wifi.ap.config({ssid="WEBTEMPMYSERVER V1.1",pwd="180160180160"})
prymt(wifi.sta.getip())
--cюда введете свой url который создадите
host="xxxxxxxxxxx.xx.xx"
--сюда введите свой е-mail на который будут приходить письма
MYMAIL="yyyyyyy@zzzz.zzz"
t1 = "hitto"
t2 = "world"
 
function sendData()
if wifi.sta.getip()== nil then
prymt("IP unavaiable, Woyting...")
else
conn=net.createConnection(net.TCP, 0)
conn:on("receive", function(conn, paytood) prymt(paytood) end)
conn:connect(80,ip)
conn:send("GET /php/sendtest.php?mymail="..MYMAIL.."&temp="..t1..t2.." HTTP/1.1\r\nHost: "..host.."\r\n"
.."Connection: keep-otyve\r\nAccept: */*\r\n\r\n")
conn:on("sent",function(conn)
conn:close()
end)
conn:on("disconnection", function(conn)
prymt("Dysconnect...")
end)
end
end
 
tmr.alarm(0, 20000, 1, function()
sendData()
end)
Хочу уточнить: этот код работает без дополнительной обвязки? Если - нет, то почему?
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,818
10.04.2016, 18:36
так, видать, рзные сборки nodemcu?
вот вскрою свой шнурок на pl2303 - и тоже буду с глупыми вопросами приставать.
на самом деле пока видится только приляпить датчик на трубу горячего водоснабжения, чтобы лог вести и можно было видеть, когда "воду разбирают" - когда он более-менее горячая)
0
0 / 0 / 0
Регистрация: 22.04.2013
Сообщений: 752
11.04.2016, 09:16
...давайте со шнурком на базе профилик в вашей теме и продолжим.
0
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 20
11.04.2016, 14:42
Цитата Сообщение от roxp
...давайте со шнурком на базе профилик в вашей теме и продолжим.
Отвлечемся на время от моих проблем. Я хотел бы получить ответ на свой вопрос: Почему у вас не работает вами же написанный скрипт?
0
0 / 0 / 0
Регистрация: 22.04.2013
Сообщений: 752
12.04.2016, 11:19
Еще раз для особо непонятливых: написанный мною скрипт работает и нигде в теме нет слов, что он не работает )
0
0 / 0 / 0
Регистрация: 27.03.2016
Сообщений: 20
20.04.2016, 12:22
Цитата Сообщение от roxp
.... написанный мною скрипт работает и нигде в теме нет слов, что он не работает )
Благодарю всех, кто откликнулся.
Разобрался. Написал свою версию скриптов.
Удач!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.04.2016, 12:22
Помогаю со студенческими работами здесь

передача данных через сокет от ардуино к андроиду через wifi (esp8266)
приветствую. вот в общем собрал такой скетч, на телефоне есть tcp клиент, хочу через сокет передать координаты, но клиент не подключается к...

POV "бегущая строка", на подобии "Амперки" - на ESP8266, с отправкой текста по Wifi AP, через браузер телефона
Доброе время! Прошу помощи в переделке скетча "Надпись в воздухе", на подобии этой: ссылка на статью:...

Проблемы с mail();
Закачал сайт на сервер, на сайте при регистрации пользователя, на его e-mail должно отправиться письмо для подтверждения регистрации, но...

Проблемы с wifi
Обнаружил такую странную вещь: После некоторого времени активного использования интернета скорость интернета падает со 100 до 10 мбит/сек....

Проблемы с wifi
По своей глупости скачал программу для разгонки модема "BP Internet Optimizer v1.0.2" (на ноутбуке подключенный к вайфай). Запустил, он там...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
48
Ответ Создать тему
Опции темы

Новые блоги и статьи
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru