Ключевое ?лово

vk

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Железо для умного дома

ТЕМА: Текущая версия прошивки esp8266 0.1.1

Текущая версия прошивки esp8266 0.1.1 20 Март 2017 09:46 #17728

  • motomax
  • motomax аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 66
  • Спасибо получено: 8
  • Репутация: 0
Т.е. для того чтобы мне использовать модуль совместно с Arduino IDE,нужно прошить какую-то стоковую прошивку для esp8266?
А на про версии можно выполнить ардуиновский скетч,например в конструкторе кода?
Администратор запретил публиковать записи гостям.

Текущая версия прошивки esp8266 0.1.1 20 Март 2017 09:56 #17730

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
код в прошивке wifi-iot.com выполнить можно, на Си, но это не скетч в таком понятии как на ардуино. На ардуино вообще С++ - немного отличается от Си.
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

Текущая версия прошивки esp8266 0.1.1 20 Март 2017 12:05 #17732

  • motomax
  • motomax аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 66
  • Спасибо получено: 8
  • Репутация: 0
Я спрашиваю,потому что нашёл интересную стаью про дублирование домофонных ключей с помощью esp, но через Arduino IDE
сдесь

Вот такой код можно выполнить напрошивке ПРО?
#include <OneWire.h>

#define pin 0
OneWire ibutton (pin); // Пин D0 для подлючения iButton (Data)
byte addr[8];
byte ReadID[8] = { 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2F }; // "Универсальный" ключ. Прошивается последовательность 01:FF:FF:FF:FF:FF:FF:2F

const int buttonPin = 5;
const int ledPin = 2;
int buttonState = 0;
int writeflag = 0;
int readflag = 0;
int val = 0;

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(buttonPin, INPUT);
  Serial.begin(115200);
}

void loop() {

  buttonState = digitalRead(buttonPin);
  if (buttonState == HIGH) {
    readflag = 1;
    writeflag = 1;
    digitalWrite(ledPin, HIGH);
    val++;
    if (val > 6) val = 6;
    Serial.print(val);
    delay(500);
  }
  else {
    val = 0;
  }


  if (!ibutton.search (addr)) {
    ibutton.reset_search();
    delay(50);
    if (val <= 5) return;
    val = 0;
  }

  digitalWrite(ledPin, HIGH);
  delay(50);

  for (byte x = 0; x < 8; x++) {
    Serial.print(addr[x], HEX);
    if (readflag == 0) {
      ReadID[x] = (addr[x]);
    }
    Serial.print(":");
  }

  byte crc; // Проверка контрольной суммы
  crc = ibutton.crc8(addr, 7);
  Serial.print("CRC: ");
  Serial.println(crc, HEX);
  digitalWrite(ledPin, LOW);

  if ((writeflag == 1) or (Serial.read() == 'w')) {
    ibutton.skip(); ibutton.reset(); ibutton.write(0x33);
    Serial.print("  ID before write:");
    for (byte x = 0; x < 8; x++) {
      Serial.print(' ');
      Serial.print(ibutton.read(), HEX);
    }
    // send reset
    ibutton.skip();
    ibutton.reset();
    // send 0xD1
    ibutton.write(0xD1);
    // send logical 0
    digitalWrite(pin, LOW); pinMode(pin, OUTPUT); delayMicroseconds(60);
    pinMode(pin, INPUT); digitalWrite(pin, HIGH); delay(10);

    Serial.print('\n');
    Serial.print("  Writing iButton ID:\n    ");
    byte newID[8] = { (ReadID[0]), (ReadID[1]), (ReadID[2]), (ReadID[3]), (ReadID[4]), (ReadID[5]), (ReadID[6]), (ReadID[7]) };
    ibutton.skip();
    ibutton.reset();
    ibutton.write(0xD5);
    for (byte x = 0; x < 8; x++) {
      writeByte(newID[x]);
      Serial.print('*');
    }
    Serial.print('\n');
    ibutton.reset();
    // send 0xD1
    ibutton.write(0xD1);
    //send logical 1
    digitalWrite(pin, LOW); pinMode(pin, OUTPUT); delayMicroseconds(10);
    pinMode(pin, INPUT); digitalWrite(pin, HIGH); delay(10);
    writeflag = 0;
    readflag = 0;
    digitalWrite(ledPin, LOW);
  }
}

int writeByte(byte data) {
  int data_bit;
  for (data_bit = 0; data_bit < 8; data_bit++) {
    if (data & 1) {
      digitalWrite(pin, LOW); pinMode(pin, OUTPUT);
      delayMicroseconds(60);
      pinMode(pin, INPUT); digitalWrite(pin, HIGH);
      delay(10);
    } else {
      digitalWrite(pin, LOW); pinMode(pin, OUTPUT);
      pinMode(pin, INPUT); digitalWrite(pin, HIGH);
      delay(10);
    }
    data = data >> 1;
  }
  return 0;
}
Администратор запретил публиковать записи гостям.

Текущая версия прошивки esp8266 0.1.1 20 Март 2017 12:17 #17733

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
Нет, не будет работать, повторю -тут не C++.

И вообще ,в проекте есть поддержка ibutton , хотя конечно записи ключа нет, но было в планах
Основной канал проекта в Telegram t.me/wifi_iot
Последнее редактирование: 20 Март 2017 12:21 от Adminhs.
Администратор запретил публиковать записи гостям.

Текущая версия прошивки esp8266 0.1.1 27 Март 2017 08:25 #17899

  • Goerg
  • Goerg аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 79
  • Спасибо получено: 5
  • Репутация: 1
Добрый день! Подскажите по Logic2 - если настроил предел какого-то датчика и настроил уведомление по email, с какой периодичностью будет проверяться данное задание?
А то все настроил, приходит единожды уведомление на email и все. По ссылке скрины всех настроек, что делаю не так? Значение вольтажа постоянно пересекает данный предел и вверх и вниз на 5-7v.
Последнее редактирование: 27 Март 2017 08:27 от Goerg.
Администратор запретил публиковать записи гостям.

Текущая версия прошивки esp8266 0.1.1 27 Март 2017 08:29 #17900

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
когда обратно вернется в норму и снова снизится - тогда и придет сообщение снова
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.
Модераторы: FlyRouter
Время создания страницы: 0.153 секунд

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.