Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

Обсуждение Ваш локальный Blynk сервер

Тема в разделе "Blynk - облачный сервис и мобильное приложение", создана пользователем Victor, 22 июн 2015.

  1. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.224
    Симпатии:
    389
  2. Oakim

    Oakim Читатель

    Сообщения:
    34
    Симпатии:
    5
    Прочитал про установку локального сервера Blink и возник вопрос, а можно ли его поставить на роутер с OpenWRT при условии, что через этот роутер ходят только датчики на ESP8266 и пара клиентов для просмотра???
     
  3. 8toni8

    8toni8 Новичок

    Сообщения:
    5
    Симпатии:
    0
    Тема мертва? :(
     
  4. Victor

    Victor Administrator Команда форума

    Сообщения:
    2.224
    Симпатии:
    389
    да вроде нет
     
  5. 8toni8

    8toni8 Новичок

    Сообщения:
    5
    Симпатии:
    0
    В общем настроить blynk через облако и поморгать лампочками, проблемы не составило. А вот настроить локальный сервер что то не получается:(
    Делал так:
    1. Скачал исходник с гитхаба "server-0.11.2"
    2. Установил на джаву и запустил сервер через CMD "
    java -jar server-0.11.2.jar -dataFolder /path
    "
    3. Порадовался сообщению "Blynk Server successfully started."
    4. Далее в преложении на смарте настроил подключение к серверу по IP (ip адрес ПК на котором запустил сервер и порт 8443)
    5. Зашел на сервер, только почему то с логином и паролем с которыми регистрировался в облаке, не понимаю он что при заходе на локальный сервер подтягивает данные авторизации из облака?
    По карайней мере если отключить локальный сервер, то приложение уже не заходит или напротив заходит если обрубить интернет.
     
  6. Minatavrus

    Minatavrus Новичок

    Сообщения:
    13
    Симпатии:
    4
    А проблема то в чем?
     
  7. 8toni8

    8toni8 Новичок

    Сообщения:
    5
    Симпатии:
    0
    Не знаю как так получилось, что моё сообщение осталась не законченным:(
    Итак:
    6. Создаю новый проект? копирую токен в код в IDE, так же прописываю название своей Wi-Fi сети и пароль к ней. Прогружаю ESP.
    7. Запускаю приложение на смартфоне, при этом приложение не видит модуль ESP в сети (Your ESP8266 is not in network) хотя со смартфона модуль пингуется
    В этом то собственно и проблема:(
     
  8. 8toni8

    8toni8 Новичок

    Сообщения:
    5
    Симпатии:
    0
    Я так понимаю не у кого так и не удалось запустить локальный сервер Blynk, опять тухлая тема...
     
  9. Алхимик

    Алхимик Новичок

    Сообщения:
    5
    Симпатии:
    0
    Всё удалось.
    Всё работает.
    Даже на Orange PI удалось.
     
    Последнее редактирование: 28 окт 2016
  10. max506

    max506 Новичок

    Сообщения:
    66
    Симпатии:
    2
    У меня локальный сервер запустился, но при вводе пароля в приложении Blynk пишет, что не верное имя пользователя или пароль. К облачному серверу с этим паролем коннектится нормально.
    Подскажите, для локального сервера надо новый аккаунт создавать?
     
  11. Алхимик

    Алхимик Новичок

    Сообщения:
    5
    Симпатии:
    0
    Да. И в конфигах сервера прописывать имя и пароль.
     
  12. max506

    max506 Новичок

    Сообщения:
    66
    Симпатии:
    2
    А подскажите, плз, подробнее порядок действий, по шагам, к каких файлах и что прописывать надо для локального сервера.
    Ну, или подскажите, где про это можно почитать.
     
  13. safari

    safari Новичок

    Сообщения:
    104
    Симпатии:
    2
    На самом деле надо не login жать, а create account, а уже внизу указывать custom server ip:порт.
    Тогда всё работает. Мыло не обязательно, можно просто логин без @.
     
  14. mvn77

    mvn77 Новичок

    Сообщения:
    40
    Симпатии:
    4
    МОжет кто подскажет ошибку в скетче - не могу разобраться как указать правильно подключение к локальному серверу. Ругается на строку 67 И еще вопрос - только два виджета можно бесплатно вывести - остальное за деньги?
    Код (Text):
    1.  
    2. #define BLYNK_PRINT Serial    // Comment this out to disable prints and save space
    3. #include <ESP8266WiFi.h>
    4. #include <BlynkSimpleEsp8266.h>
    5. #include <BlynkSimpleUserDefined.h>
    6. #include <DHT.h>
    7. #include <SPI.h>
    8. #include <SimpleTimer.h>
    9. // You should get Auth Token in the Blynk App.
    10. // Go to the Project Settings (nut icon).
    11.  
    12. char auth[] = "9f6b50ad57894fe7b3fd07035c17f8b1";
    13. // Your WiFi credentials.
    14. // Set password to "" for open networks.
    15. char ssid[] = "mvn77_home";
    16. char pass[] = "";
    17.  
    18. IPAddress server_ip (192, 168, 0, 254);
    19. // Mac address should be different for each device in your LAN
    20. byte arduino_mac[] = { 0xDE, 0xED, 0xBA, 0xFE, 0xFE, 0xED };
    21. IPAddress device_ip  (192, 168,   0,  80);
    22. IPAddress dns_ip     (  8,   8,   8,   8);
    23. IPAddress gateway_ip (192, 168,   0,   1);
    24. IPAddress subnet_mask(255, 255, 255,   0);
    25.  
    26.  
    27. #define DHTPIN 2          // What digital pin we're connected to
    28.  
    29. // Uncomment whatever type you're using!
    30. #define DHTTYPE DHT11     // DHT 11
    31. //#define DHTTYPE DHT22   // DHT 22, AM2302, AM2321
    32. //#define DHTTYPE DHT21   // DHT 21, AM2301
    33.  
    34. DHT dht(DHTPIN, DHTTYPE);
    35. SimpleTimer timer;
    36.  
    37.  
    38.                                                                              
    39.  
    40. // This function sends Arduino's up time every second to Virtual Pin (5).
    41. // In the app, Widget's reading frequency should be set to PUSH. This means
    42. // that you define how often to send data to Blynk App.
    43. void sendSensor()
    44. {
    45.   float h = dht.readHumidity();
    46.   float t = dht.readTemperature(); // or dht.readTemperature(true) for Fahrenheit
    47.  
    48.   if (isnan(h) || isnan(t)) {
    49.     Serial.println("Failed to read from DHT sensor!");
    50.     return;
    51.   }
    52.   // You can send any value at any time.
    53.   // Please don't send more that 10 values per second.
    54.    Blynk.virtualWrite(V5, h);
    55. Blynk.virtualWrite(V6, t);
    56. }
    57.  
    58.  
    59. void setup()
    60. {
    61.   Serial.begin(9600);
    62.  
    63.   // Setup WiFi network
    64.   WiFi.config(device_ip, gateway_ip, subnet_mask);
    65.   WiFi.begin(ssid, pass);
    66.   dht.begin();
    67.   Blynk.begin(auth, server_ip, 8442 );
    68.    Blynk.connect();
    69.   // Setup a function to be called every second
    70.   timer.setInterval(1000L, sendSensor);
    71. }
    72.  
    73. void loop()
    74. {
    75.   Blynk.run(); // Initiates Blynk
    76.   timer.run(); // Initiates SimpleTimer
    77. }
     
  15. Алхимик

    Алхимик Новичок

    Сообщения:
    5
    Симпатии:
    0
    while(Blynk.connect() == false) {
    Blynk.begin(auth, "_ESSID_", "password_wifi", IPAddress(192,168,0,1));
    delay(3000);
    }
     
  16. mvn77

    mvn77 Новичок

    Сообщения:
    40
    Симпатии:
    4
    Код не работает. Неужели в природе не существует рабочего скетча для коннекта к локальному серверу с статическим iP клиента, везде либо урывками либо вообще не понять что. Смотришь часть примеров автора там инициализация идет через
    WiFi.config(device_ip, gateway_ip, subnet_mask); WiFi.begin(ssid, pass);
    В других примерах через через Blynk.begin в общем бардак полнейший. И не хрена не работает. зато после размещения 2х неработающих виджетов уже требует деньги.

    Код (Text):
    1. #define BLYNK_PRINT Serial    // Comment this out to disable prints and save space
    2. #include <ESP8266WiFi.h>
    3. #include <BlynkSimpleEsp8266.h>
    4. #include <BlynkSimpleUserDefined.h>
    5. #include <DHT.h>
    6. #include <SPI.h>
    7. #include <SimpleTimer.h>
    8. // You should get Auth Token in the Blynk App.
    9. // Go to the Project Settings (nut icon).
    10. char auth[] = "9f6b50ad57894fe7b3fd07035c17f8b1";
    11. // Your WiFi credentials.
    12. // Set password to "" for open networks.
    13. char ssid[] = "mvn77_home";
    14. char pass[] = "";
    15. IPAddress server_ip (192, 168, 0, 254);
    16. // Mac address should be different for each device in your LAN
    17. byte arduino_mac[] = { 0xDE, 0xED, 0xBA, 0xFE, 0xFE, 0xED };
    18. IPAddress device_ip  (192, 168,   0,  80);
    19. IPAddress dns_ip     (  8,   8,   8,   8);
    20. IPAddress gateway_ip (192, 168,   0,   1);
    21. IPAddress subnet_mask(255, 255, 255,   0);
    22. #define DHTPIN 2          // What digital pin we're connected to
    23. // Uncomment whatever type you're using!
    24. #define DHTTYPE DHT11     // DHT 11
    25. //#define DHTTYPE DHT22   // DHT 22, AM2302, AM2321
    26. //#define DHTTYPE DHT21   // DHT 21, AM2301
    27. DHT dht(DHTPIN, DHTTYPE);
    28. SimpleTimer timer;
    29.                                                                          
    30. // This function sends Arduino's up time every second to Virtual Pin (5).
    31. // In the app, Widget's reading frequency should be set to PUSH. This means
    32. // that you define how often to send data to Blynk App.
    33. void sendSensor()
    34. {
    35.   float h = dht.readHumidity();
    36.   float t = dht.readTemperature(); // or dht.readTemperature(true) for Fahrenheit
    37.   if (isnan(h) || isnan(t)) {
    38.     Serial.println("Failed to read from DHT sensor!");
    39.     return;
    40.   }
    41.   // You can send any value at any time.
    42.   // Please don't send more that 10 values per second.
    43.    Blynk.virtualWrite(V5, h);
    44. Blynk.virtualWrite(V6, t);
    45. }
    46. void setup()
    47. {
    48.   Serial.begin(9600);
    49.   // Setup WiFi network
    50. while(Blynk.connect() == false) {
    51. Blynk.begin(auth, "_ESSID_", "password_wifi", IPAddress(192,168,0,254));
    52. delay(3000);
    53. }
    54.    Blynk.connect();
    55.   // Setup a function to be called every second
    56.   timer.setInterval(1000L, sendSensor);
    57. }
    58. void loop()
    59. {
    60.   Blynk.run(); // Initiates Blynk
    61.   timer.run(); // Initiates SimpleTimer
    62. }
    Код (Text):
    1. In file included from D:\Temp\arduino_modified_sketch_919716\sketch_dec26a.ino:4:0:
    2.  
    3. C:\Users\mvn77\Documents\Arduino\libraries\Blynk\src/BlynkSimpleUserDefined.h:77:34: error: conflicting declaration 'BlynkTransportUserDefined _blynkTransport'
    4.  
    5. static BlynkTransportUserDefined _blynkTransport;
     
    Последнее редактирование: 26 дек 2016
  17. Алхимик

    Алхимик Новичок

    Сообщения:
    5
    Симпатии:
    0
    Не знаю, что ты там делаешь, но этот код у меня работает на 4-х устройствах исправно.
     
  18. mvn77

    mvn77 Новичок

    Сообщения:
    40
    Симпатии:
    4
    Если скетч не секретны скинь пожалуйста - а то уже мозг взорвался лопатить примеры что бы это чудо запустить.
     
  19. Алхимик

    Алхимик Новичок

    Сообщения:
    5
    Симпатии:
    0
    Код (Text):
    1. // DS18B20_1 - Arduino
    2. //
    3. // Continually measures temperatures at three points using the Dallas DS18B20 on three
    4. // separate Arduino pins.
    5. //
    6. // Uses the parasitic power mode
    7. //
    8. // Displays to a serial LCD operating at 9600 baud.
    9. //
    10. // Arduino Board            DS18B20
    11. //
    12. //                    +5 VDC
    13. //                    |
    14. //                   4.7K
    15. // 8 ---------------- |----- 2 (DQ)  Note that terms 1 and 3 are grounded.
    16. //
    17. // 7 ---- same as above
    18. // 6 ---- same as above
    19. //
    20. // Tx ---------------------------- To Serial LCD (LCD #117)
    21. //
    22. // copyright, Peter H Anderson, Baltimore, MD, May 5, '07
    23. #include <ESP8266WiFi.h>
    24. #include <BlynkSimpleEsp8266.h>
    25. #define BLYNK_PRINT Serial    // Comment this out to disable prints and save space
    26.  
    27.   int n, dev_channel[2] = {0, 2}, _1W_Pin;
    28. char auth[] = "00000000000000000000000000000000"; //
    29. IPAddress myip;
    30. char myIpString[24];
    31.  
    32. void setup()
    33. {
    34. //  int n, dev_channel[2] = {0, 2}, _1W_Pin;
    35.   Serial.begin(250000);
    36.   while(Blynk.connect() == false) {
    37.       Blynk.begin(auth, "ESSID", "password", IPAddress(192,168,0,1));
    38.     delay(3000);
    39.     Serial.print(".");
    40.   }
    41.  
    42.   myip = WiFi.localIP();
    43.   sprintf(myIpString, "%d.%d.%d.%d", myip[0], myip[1], myip[2], myip[3]);
    44.  
    45.   for (n=0; n<2; n++)
    46.   {
    47.     _1W_Pin = dev_channel[n];
    48.     digitalWrite(_1W_Pin, LOW);
    49.     pinMode(_1W_Pin, INPUT);  
    50.   }
    51. }
    52.  
    53. BLYNK_WRITE(V2) // There is a Widget that WRITEs data to V1
    54. {
    55. //  r = param[0].asInt(); // get a RED channel value
    56. //  Serial.print("\nSLIDER 1: ");
    57. //  Serial.println(r);
    58. //  lcd.setCursor(14,1);
    59. //  lcd.print("     ");
    60. //  lcd.print(r);
    61. //  lcd.print("     ");
    62.  
    63. }
    64.  
    65. void loop()
    66. {
    67.   int HighByte, LowByte, TReading, SignBit, Tc_100, Whole, Fract;
    68.  
    69.   Blynk.run(); // Initiates Blynk
    70.  
    71.   for (n=0; n<2; n++)
    72.   {
    73.      _1W_Pin = dev_channel[n];
    74.      OneWireReset(_1W_Pin);
    75.      OneWireOutByte(_1W_Pin, 0xcc, 0);
    76.      OneWireOutByte(_1W_Pin, 0x44, 1);
    77.  
    78.      OneWireReset(_1W_Pin);
    79.      OneWireOutByte(_1W_Pin, 0xcc, 0);
    80.      OneWireOutByte(_1W_Pin, 0xbe, 0);
    81.  
    82.      LowByte = OneWireInByte(_1W_Pin);
    83.      HighByte = OneWireInByte(_1W_Pin);
    84.      TReading = (HighByte << 8) + LowByte;
    85.      SignBit = TReading & 0x8000;
    86.      if (SignBit)
    87.      {
    88.          TReading = (TReading ^ 0xffff) + 1;
    89.      }
    90.      Tc_100 = (6 * TReading) + TReading / 4;
    91.  
    92.      Whole = Tc_100 / 100;
    93.      Fract = Tc_100 % 100;
    94.  
    95.      if(n)Blynk.virtualWrite(V0, Whole);
    96.      else Blynk.virtualWrite(V1, Whole);
    97.    
    98.      Serial.print(Whole);
    99.      Serial.print(".");
    100.      if (Fract < 10)
    101.      {
    102.         Serial.print("0");
    103.      }
    104.      Serial.println(Fract);
    105.      delay(1000);
    106.   }
    107.  
    108. }
    109.  
    110. void OneWireReset(int _1W_Pin)
    111. {
    112.      digitalWrite(_1W_Pin, LOW);
    113.      pinMode(_1W_Pin, OUTPUT);
    114.      delayMicroseconds(500);
    115.      pinMode(_1W_Pin, INPUT);
    116.      delayMicroseconds(500);
    117. }
    118.  
    119. void OneWireOutByte(int _1W_Pin, byte d, byte strong)
    120. {
    121.    byte n;
    122.  
    123.    for(n=8; n!=0; n--)
    124.    {
    125.       if ((d & 0x01) == 1)
    126.       {
    127.          digitalWrite(_1W_Pin, LOW);
    128.          pinMode(_1W_Pin, OUTPUT);
    129.          delayMicroseconds(5);
    130.          pinMode(_1W_Pin, INPUT);
    131.          delayMicroseconds(60);
    132.       }
    133.       else
    134.       {
    135.          digitalWrite(_1W_Pin, LOW);
    136.          pinMode(_1W_Pin, OUTPUT);
    137.          delayMicroseconds(60);
    138.          pinMode(_1W_Pin, INPUT);
    139.       }
    140.  
    141.       d=d>>1;
    142.    }
    143.    if(strong)
    144.    {
    145.        digitalWrite(_1W_Pin, HIGH);
    146.        pinMode(_1W_Pin, OUTPUT);
    147.        //delay(1000);
    148.        pinMode(_1W_Pin, INPUT);
    149.        digitalWrite(_1W_Pin, LOW);
    150.    }
    151. }
    152.  
    153. byte OneWireInByte(int _1W_Pin)
    154. {
    155.     byte d, n, b;
    156.  
    157.     for (n=0; n<8; n++)
    158.     {
    159.         digitalWrite(_1W_Pin, LOW);
    160.         pinMode(_1W_Pin, OUTPUT);
    161.         delayMicroseconds(5);
    162.         pinMode(_1W_Pin, INPUT);
    163.         delayMicroseconds(5);
    164.         b = digitalRead(_1W_Pin);
    165.         delayMicroseconds(50);
    166.         d = (d >> 1) | (b<<7);
    167.     }
    168.     return(d);
    169. }
    170.  
     
  20. Shrotnet

    Shrotnet Новичок

    Сообщения:
    64
    Симпатии:
    3
    люди добрые ! подскажите мне один вопрос. Пишут что код тут ОПЕН ... для локального пользования. Если BLYNK развернуть у себя в локалке, то она будет полноценной для работы и через интернет ? или уже сегодня бесплатно ёё не поюзать ? разработчики берут порядка 10 долларов за средний объём виджетов.
     

Поделиться этой страницей