С такими портами для проводов (внутрь какую-нибудь вязкую замазку водонепроницаемую)
http://homedevice.pr...t/port-for-box/
и с такими коробочками устройство можно установить на палубе.
Отправлено 27 марта 2015 - 14:54
С такими портами для проводов (внутрь какую-нибудь вязкую замазку водонепроницаемую)
http://homedevice.pr...t/port-for-box/
и с такими коробочками устройство можно установить на палубе.
Отправлено 01 апреля 2015 - 11:37
https://olimex.wordp...th-arduino-ide/
Теперь можно использовать библиотеки и скетчи от Arduino для ESP8266-EVB.
Прямо из Arduino 1.6.1 IDE.
Сообщение отредактировал ignat99: 01 апреля 2015 - 11:38
Отправлено 02 апреля 2015 - 12:31
Ядро поддержки ESP8266, ESP8266WiFi, Ticker, ESP8266WebServer библиотеки были написаны Иваном Grokhotkov.
англоязычный форум:
http://www.esp8266.com/arduino
русскоязычный форум:
http://esp8266.ru/ar...266/#fast-start
Пытаюсь разобратья с подключением к роутеру и сенсорами. Так же для гик-клиентов подойдёт Arduino IDE.
Для нормальных людей - нужна готовая прошивка с web-конфигуратором подключенных устройств и шин
IMHO
Отправлено 02 апреля 2015 - 14:22
Попробуем поставить навороченный веб-сервер:
Для этого я сделал на MakBook Pro новый образ для виртуальной машины:
https://github.com/m...sky/esp8266-dev
Вначаел нужен новый автоконф:
http://ftp.gnu.org/g...f-latest.tar.gz
tar -xzf autoconf-latest.tar.gz
cd autoconf-2.69
./configure --prefix=/usr
make
make install
Затем необходим esp-Open-SDK:
https://github.com/p...on/esp-open-sdk
Далее делаем по инструкции (код для веб сервера надо брать с оригинального репозитория git clone http://git.spritesse.../esphttpd.git/):
http://www.esp8266.c...a11a00a33#p1629
Сообщение отредактировал ignat99: 02 апреля 2015 - 14:39
Отправлено 02 апреля 2015 - 18:58
#include <stdbool.h>#if 0typedef unsigned char uint8_t;заменить на #if 1
#include <stdbool.h> #if 1 typedef unsigned char uint8_t;export PATH=${PWD}/xtensa-lx106-elf/bin:$PATH export XTENSA_TOOLS_ROOT=${PWD}/xtensa-lx106-elf/bin/ export SDK_BASE=${PWD}/esp_iot_sdk_v1.0.0/ export ESPTOOL=${PWD}/esptool/esptool.py export ESPPORT=/dev/ttyUSB0 git clone http://git.spritesse...l/esphttpd.git/ cd esphttpd git submodule init git submodule update
Сообщение отредактировал ignat99: 02 апреля 2015 - 19:27
Отправлено 02 апреля 2015 - 20:29
На официальном сайте модуля в инструкции:
https://nurdspace.nl...266/First_setup
Находим ссылку на родные esptool
http://filez.zoobab....ptool-0.0.2.zip
Скачиваем в каталог esp-open-sdk и распаковываем. В новом каталоге esptool в файле Makefile в первой строчке меняем WINDOWS на LINUX.
в каталоге esptool делаем:
make
cd ..
export ESPTOOL=${PWD}/esptool/esptool
cd esphttpd
make
Отправлено 05 апреля 2015 - 13:40
Прошил код:
sudo make flash
[color=rgb(40,40,40);font-family:verdana, arial, tahoma, sans-serif;font-size:12px;background-color:rgb(238,242,247);]sudo make htmlflash[/color]
Использовал те же инструменты прошивки что примере для Olimex веб-сервера (у которого нет возможности переключаться из режима AP) , так как инструменты из esp-open-sdk не прошивают. Через роутер всё работает быстрее.
Теперь можно совместить управление реле и потоковую видеокамеру в одном приложении для Android.
Отправлено 05 апреля 2015 - 16:23
Заказал на работе ESP-7 и ESP-12 модули(ESP8266) (нам только с FCC). http://l0l.org.uk/20...a-catch-em-all/
Будем щупать их в паре с PIC12/PIC32.Судя по форуму очень сырые устройствам, Нет таких простых опций как постоянный IP и ...
Сообщение отредактировал Vlad_il: 05 апреля 2015 - 16:24
Отправлено 05 апреля 2015 - 18:28
http://homedevice.pro/product/mod-io2/ Вот есть такое устройство с PIC16F1503 И даже вот такое: http://homedevice.pro/product/mod-io/ c ATMega16L-8AU. В теории к нему можно подключить сам модуль ESP8266: http://homedevice.pr...d-wifi-esp8266/ но видимо потребуется дополнять программу ESP8266 для взаимодействия с PIC. Такую задачу нужно будет решать в будущем, для подключения этих устройств к ESP8266. Так что очень ждём ваших результатов @Vlad_il :-)
Сообщение отредактировал ignat99: 05 апреля 2015 - 18:34
Отправлено 05 апреля 2015 - 21:53
Модули метров на 25 берут через 1 бетонную стену. Если 2 устройство в одно и то же время обращаются к 1 модулю с кодом, который использован выше (esphttpd) наблюдается небольшой лаг. Но по цене и габаритам альтернатив не видно кроме одного модуля MOD-RTL8188CU:
https://www.olimex.c.../MOD-RTL8188CU/
Сообщение отредактировал ignat99: 05 апреля 2015 - 21:54
Отправлено 14 апреля 2015 - 20:06
Вот приложение для Android:
https://github.com/Ignat99/MjpegDemo
Умеет показывать потоково видео с WiFi камеры и одновременно через меню (кнопка Android слева) включать и выключать свет через ESP8266. Все конфигурации (IP адреса) в Исходном коде.
Можно добавить сканирование IP через виде-потоковый сервер, если он в вашей подсети.
Можно прописать все модули намертво по MAC на статические IP.
Можно добавить внутренний DNS сервер или даже через внешний DDNS.
Можно сделать всё через MQTT или любой другой протокол.
Какие желательно использовать для определения устройств протоколы?
Сообщение отредактировал ignat99: 14 апреля 2015 - 20:11
Отправлено 19 апреля 2015 - 12:41
Вот ещё целая серия альтернативных Duino плат и компонентов[color=rgb(0,0,0);font-family:Arial, sans-serif;]. Только вот нужны опытные кодо-писатели чтоб все расширения работали, да же при наличии стандартной шины UEXT.[/color]
Выше я давал демо приложение для видео стриминга с выключателем света через ESP8266. А сейчас приведу ссылки на наиболее не дорогие камеры. А так же на камеры с хорошим качеством.
[color=rgb(0,0,0);font-family:Arial, sans-serif;]Китайцы тоже не дремлют, у них есть намётки на стандартные шины расширения для многих модулей. Вот например [/color]интересный модуль для видеокамеры со «стандартными» китайскими шинами[color=rgb(0,0,0);font-family:Arial, sans-serif;], можно купить аналогичное устройство [/color]дешевле[color=rgb(0,0,0);font-family:Arial, sans-serif;]. Ниже в коментариях я дал сылки на SDK для этой камеры. [/color]
Корпус и ещё один и ещё от дождя за 6 и 5 и 4 евро соответственно.
Но для яхты лучше подходит вот эта качественная CCTV камера c 20 или 50 метрами кабеля. Можно включать свет и видеть как рыба подходит к крючку. Для наружного наблюдения я использую 2MP камеры на USB 2.0 с углом обзора 170 градусов.
Сообщение отредактировал ignat99: 19 апреля 2015 - 13:16
Отправлено 14 мая 2015 - 19:35
https://github.com/m...266_Relay_Board
Этот код интересен множеством новых возможностей:
MQTT, DDNS, NTP, Температурные сенсоры, Графики в облаке, встроенное расписание работы с хорошим веб интерфейсом и другие возможности.
Собирается аналогично примеру выше для esphttpd.
Отправлено 14 мая 2015 - 19:41
По поводу видеонаблюдения и удалённого контроля:
Законченное решение тут:
http://homedevice.pr...r-video-stream/
Скрипты для конфигурации через командную оболочку mc тут:
https://github.com/I...ture/mc/mc.menu
Отправлено 16 мая 2015 - 14:11
IDE ESP8266 с диаграммами. Так называемое "Визуальное программирование".
https://github.com/m...lo/tree/esp8266
А собственно пример предельного по возможностям и опциям исходного кода (Пока без визуального программирования но с проработанными интерфейсами, фактически с любой марины при наличии WiFi, без настроек роутера по поводу проброса портов можно посылать данные и контролировать их удалённо):
http://harizanov.com...ermostat-board/
Как вам такой интерфейс управления устройствами (реализованный прямо в ESP8266)?
Проверил этот код, работает на ESP8266-EVB. Мои изменения для ESP8266-EVB выложил на ГитХаб:
https://github.com/I...rd/tree/feature
Там же документация по инсталяции и прошивке модуля.
https://github.com/I...ree/feature/doc
Осталось только разбить этот код на крупные блоки и дать возможность использовать его через microflo (пока там только простой пример). В итоге получается более продвинутая IDE, чем родная Arduino IDE 1.6.1. Хотя скетчи всё рабно потребуются под все случаи и разнообразные сенсоры.
Сообщение отредактировал ignat99: 16 мая 2015 - 14:15
Отправлено 27 мая 2015 - 14:46
Попробую описать шаг за шагом установку Arduino IDE и сборку программ для ESP8266-EVB и подключение сенсора давления.
Можно взять Arduino IDE с родного Arduino website. Но там, для получения прямой ссылки требуют не то регистрацию, не то денежные пожертвования.
[color=#000000;][font="Arial, sans-serif;"]По [/color][/font]этой ссылке[color=#000000;][font="Arial, sans-serif;"] можно взять Arduino IDE под любую платформу.[/color][/font]
[color=rgb(0,0,0);font-family:Arial, sans-serif;]Я п[/color][color=rgb(0,0,0);font-family:Arial, sans-serif;]рошиваю модули под GNU/Linux Ubuntu. Но можно делать это под Windows или X OS.[/color]
Нужно распаковать архив, например, в домашней директории. Зайти в каталог arduino-1.6.4 и запустить через судо:
cd ~/arduino-1.6.4sudo ./arduino
Будет создан каталог ~/Arduino и ~/Arduino/libraries для установки локальных библиотек и скетчей пользователя.
Установка пакета для компиляции скетчей под ESP8266-EVB.
[color=rgb(0,0,0);font-family:Arial, sans-serif;]В меню Arduino IDE открыть Preferences и в поле Additional Board Manager URLs ввести:[/color]
arduino.esp8266.com/package_esp8266com_index.json
[color=rgb(0,0,0);font-family:Arial, sans-serif;]Далее пойти в Tools -> Boards Manager -> Board[/color]
[color=rgb(0,0,0);font-family:Arial, sans-serif;]Подождать пока обновятся ссылки, и где то в конце появиться библиотека для ESP8266.[/color]
[color=rgb(0,0,0);font-family:Arial, sans-serif;]Нажать на ссылку Install для этой библиотеки.[/color]
[color=rgb(0,0,0);font-family:Arial, sans-serif;]Далее снова Tools -> Board и выбрать уже из установленных либо ESP8266 генерик либо MOD-WIFI-ESP8266(-DEV)[/color][color=rgb(0,0,0);font-family:Arial, sans-serif;] [/color]
После установки все библиотеки для ESP8266 и настройки будут размещены в каталоге ~/.arduino15
https://github.com/s...llo-porting.zip
И распаковать его в каталог: ~/Arduino/libraries
Получиться директория:
~/Arduino/libraries/souliss-friarello-porting
Вероятно в новой версии библиотеки все изменения внесены в основную ветку - friariello. Поэтому название директории может отличаться для свежих версий репозитория Souliss.
Компиляция первого скетча
Для платформы ESP8266-EVB я предлагаю начать с этого примера, который делает из ESP8266-EVB управляемый через WiFi и обычную кнопку выключатель, причём состояние выключателя отображается в Souliss Android App:
https://github.com/s...mex_ESP8266-EVB
Просто откроем этот пример в Arduino IDE.
Подключим ESP8266-EVB и USB кабель для прошивки.
Если вы работаете на GNU/Linux системе надо сметить порт в меню Tools -> Port на что то похожее на :
/dev/ttyUSB0
Далее достаточно переключить устройство в режим прошивки. Для этого удерживая кнопку надо включить питание устройства и нажать кнопку Upload в среде Android IDE.
Скетч для сенсора давления MOD-BMP085
Для ESP8266-EVB - [color=rgb(0,0,0);font-size:13px;background-color:rgb(250,250,250);]SDA и SCL соответствуют [/color][color=rgb(0,0,0);font-family:arial, sans-serif;font-size:12.8000001907349px;background-color:rgb(240,244,247);]GPIO2/[/color][color=rgb(0,0,0);font-family:arial, sans-serif;font-size:12.8000001907349px;]SDA[/color][color=rgb(0,0,0);font-family:arial, sans-serif;font-size:12.8000001907349px;background-color:rgb(240,244,247);], GPIO4/[/color][color=rgb(0,0,0);font-family:arial, sans-serif;font-size:12.8000001907349px;]SCL [/color][color=rgb(0,0,0);font-family:Arial, sans-serif;]([/color] 6 и 5 UEXT I2C на ESP8266-EVB[color=rgb(0,0,0);font-family:Arial, sans-serif;]).[/color][color=rgb(0,0,0);font-family:arial, sans-serif;font-size:12.8000001907349px;] Для использованной в нашем случае библиотеки можно писать Wire.begin(2,4). IMHO. Я не проверял. Библиотеки прилагаю атачем.[/color]
Заработал ли у вас сенсор? Напишите, если сделаете тест.
// Configure the framework#include "bconf/MCU_ESP8266.h" // Load the code directlyon the ESP8266#include "conf/Gateway.h" // The main node is theGateway, we have just one node#include "conf/DynamicAddressing.h" // Use dynamic addressing// Define the WiFi name and password#define WIFICONF_INSKETCH#define WiFi_SSID "SSID"#define WiFi_Password "PASSWORD"// Include framework code and libraries#include <ESP8266WiFi.h>#include <EEPROM.h>#include "Souliss.h"// This identify the number of the LED logic#define PRESSURE0 0#define BMP180TEMP 2// SDA and SCL pins can be configured, you need to editSFE_BMP180/SFE_BMP180.cpp line 38. Preconfigured at 14, 12.#include <SFE_BMP180.h>#include <Wire.h>#define ALTITUDE 20.0 // Altitude of reading location in meters// You will need to create an SFE_BMP180 object, here called "pressure":SFE_BMP180 pressure;void setup(){ Initialize(); Serial1.begin(115200); // Connect to the WiFi network and get an address from DHCP GetIPAddress(); SetAsGateway(myvNet_dhcp); // Set this node as gateway forSoulissApp if (pressure.begin()) Serial1.println("BMP180 init success"); else { // Oops, something went wrong, this is usually aconnection problem, // see the comments at the top of this sketch for theproper connections. Serial1.println("BMP180 init failnn"); }}void loop(){ EXECUTEFAST() { UPDATEFAST(); // Here we handle here the communication with Android FAST_GatewayComms(); } EXECUTESLOW() { UPDATESLOW(); SLOW_10s() { // Read temperature and humidity from DHTevery 110 seconds Souliss_GetPressure_BMP180(PRESSURE0,BMP180TEMP); } }}/***************************************************************************//* BMP180 I2C READING FUNCTION *//***************************************************************************/float Souliss_GetPressure_BMP180(uint8_t SLOT_PRESSURE, uint8_tSLOT_TEMPERATURE){ boolean DEBUG_PRESSURE = 0; char status; double T,P,p0,a; // Loop here getting pressure readings every 10 seconds. // If you want sea-level-compensated pressure, as used in weather reports, // you will need to know the altitude at which your measurements are taken. // We're using a constant called ALTITUDE in this sketch: if(DEBUG_PRESSURE){ Serial1.println(); Serial1.print("provided altitude: "); Serial1.print(ALTITUDE,0); Serial1.print(" meters, "); Serial1.print(ALTITUDE*3.28084,0); Serial1.println(" feet"); } // If you want to measure altitude, and not pressure, you will instead need // to provide a known baseline pressure. This is shown at the end ofthe sketch. // You must first get a temperature measurement to perform a pressure reading. // Start a temperature measurement: // If request is successful, the number of ms to wait is returned. // If request is unsuccessful, 0 is returned. status = pressure.startTemperature(); if (status != 0) { // Wait for the measurement to complete: delay(status); // Retrieve the completed temperature measurement: // Note that the measurement is stored in the variable T. // Function returns 1 if successful, 0 if failure. status = pressure.getTemperature(T); if (status != 0) { if(DEBUG_PRESSURE){ // Print out the measurement: Serial1.print("temperature: "); Serial1.print(T,2); Serial1.print(" deg C, "); Serial1.print((9.0/5.0)*T+32.0,2); Serial1.println(" deg F"); } // Start a pressure measurement: // The parameter is the oversampling setting, from 0 to 3(highest res, longest wait). // If request is successful, the number of ms to wait is returned. // If request is unsuccessful, 0 is returned. status = pressure.startPressure(3); if (status != 0) { // Wait for the measurement to complete: delay(status); // Retrieve the completed pressure measurement: // Note that the measurement is stored in the variable P. // Note also that the function requires the previoustemperature measurement (T). // (If temperature is stable, you can do one temperaturemeasurement for a number of pressure measurements.) // Function returns 1 if successful, 0 if failure. status = pressure.getPressure(P,T); if (status != 0) { if(DEBUG_PRESSURE){ // Print out the measurement: Serial1.print("absolute pressure: "); Serial1.print(P,2); Serial1.print(" mb, "); Serial1.print(P*0.0295333727,2); Serial1.println(" inHg"); } // The pressure sensor returns abolute pressure, whichvaries with altitude. // To remove the effects of altitude, use the sealevelfunction and your current altitude. // This number is commonly used in weather reports. // Parameters: P = absolute pressure in mb, ALTITUDE =current altitude in m. // Result: p0 = sea-level compensated pressure in mb p0 = pressure.sealevel(P,ALTITUDE); // we're at 1655 meters(Boulder, CO) if(DEBUG_PRESSURE){ Serial1.print("relative (sea-level) pressure: "); Serial1.print(p0,2); Serial1.print(" mb, "); Serial1.print(p0*0.0295333727,2); Serial1.println(" inHg"); } // On the other hand, if you want to determine your altitudefrom the pressure reading, // use the altitude function along with a baseline pressure(sea-level or other). // Parameters: P = absolute pressure in mb, p0 = baselinepressure in mb. // Result: a = altitude in m. a = pressure.altitude(P,p0); if(DEBUG_PRESSURE){ Serial1.print("computed altitude: "); Serial1.print(a,0); Serial1.print(" meters, "); Serial1.print(a*3.28084,0); Serial1.println(" feet"); } float pressure = p0; float temperature = T; Souliss_ImportAnalog(memory_map, SLOT_PRESSURE, &pressure); Souliss_ImportAnalog(memory_map, SLOT_TEMPERATURE, &temperature); return p0; } else if(DEBUG_PRESSURE) Serial1.println("error retrievingpressure measurementn"); } else if(DEBUG_PRESSURE) Serial1.println("error starting pressuremeasurementn"); } else if(DEBUG_PRESSURE) Serial1.println("error retrievingtemperature measurementn"); } else if(DEBUG_PRESSURE) Serial1.println("error starting temperaturemeasurementn");}
Сообщение отредактировал ignat99: 27 мая 2015 - 15:44
Отправлено 29 мая 2015 - 16:54
https://github.com/O...o/arduino_i2c.h
#[color=#a71d5d;]define[/color] [color=#795da3;]I2C_MASTER_SDA_GPIO[/color] [color=#0086b3;]2[/color]
#[color=#a71d5d;]define[/color] [color=#795da3;]I2C_MASTER_SCL_GPIO[/color] [color=#0086b3;]4[/color]
Да всё точно, надо использовать именно эти GPIO.
Так же можно использовать возможности уже сделанной библиотеки Olimex по ссылке выше.
Отправлено 01 июня 2015 - 01:04
Гироскоп с акселерометром работаю прямо на ESP8266-EVB. Завтра тут постараюсь опубликовать скетч для MOD-MPU6050.
Отправлено 01 июня 2015 - 18:25
https://github.com/s...EVB_MOD-MPU6050
Положить предмет под сенсор (в качестве предмета охраны например мобильный - хотя там есть собственный гироскоп), который как мормышка на кабеле. Если кто то только дотронется до предмета сразу включается свет или сирена.
Скетч просто рабочий пример для теста сенсора и не является конечным продуктом.
Желательно иметь UEXTx5 чтоб подключить более 1 сеснора или сделать вывод в консоль.
Сообщение отредактировал ignat99: 01 июня 2015 - 18:27
Отправлено 11 июня 2015 - 12:11
В качестве источника питания можно использовать вот такую солнечную панель за 15 долларов.
И вот такой преобразователь 16 В -> 5 В.
Сообщение отредактировал ignat99: 11 июня 2015 - 12:13
Отправлено 12 июня 2015 - 15:42
Так же со склада в Европе. Или модель для зарядки мобильника или любого другого устройства через USB. Цены очень хорошие 15 - 18 Евро за 5 Вт устройство. Цена зависит от количества заказанных устройств.
Отправлено 29 июня 2015 - 23:02
Сделан код для основных сенсоровадапторов для UEXT ESP8266.
https://github.com/O...er/IoT Firmware
Supported Devices
Отправлено 30 июня 2015 - 19:26
Появился новый замечательный дизайн ESP8266. Теперь можно подключать устройство напрямую к солнечной панели, как и батарею.
Так же добавился [color=rgb(69,51,32);font-family:Georgia, 'Times New Roman', Times, serif;font-size:14.8800001144409px;background-color:rgb(244,208,168);]Wago two part connector.[/color]
Другая новость: Это устройство можно программировать на JS только. И как я написал выше доступны готовые драйвера для различных подключаемых модулей для управления устройствами, светом, матрицей LED, дополнительными реле, дополнительными сенсорами температуры, отпечатков пальцев, и вообще аналоговых датчиков.
Сообщение отредактировал ignat99: 30 июня 2015 - 19:27
Отправлено 23 июля 2015 - 15:45
Добрый день,
на катере есть wifi сеть с точкой доступа. Хочется чтобы навигатор (планшет без GPS) ,который имеет также wifi и подключен к этой сети мог получать данные со стационарного GPS приемника ,который имеет выход RS232 на скорости 4800 бод.Через программу GPSbridge
Т.е.небходимо устройство,которое после включения будет подключаться к wifi сети, открывать у себя входящий порт TCP и всем устройствам ,которые будут подключаться к ним передавать данные с своего ком порта ( к которому подключён GPS. По сути это беспроводный аналог конверторов интерфейсов Tibbo. Насколько я понимаю на ES P8266 это должно реализавываться очень просто и наверное кем то реализовано.Не мог ли кто нибудь подсказать где найти готовое решение.
Тематические форумы →
Связь, навигация и картография →
4G -> Wi-FiАвтор GStager , 18 сен 2015 4g GSM, wifi |
|
|
0 пользователей, 0 гостей, 0 скрытых пользователей