Странная работа wi-fi модуля в опыте №7 Telegram-bot (Интернет вещей)

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем MAGIGHAR, 11 сен 2017.

  1. MAGIGHAR

    MAGIGHAR Нерд

    Здравствуйте!

    В опыте №7 во второй части Йода столкнулся со странной работой wi-fi модуля. После загрузки скрипта на искру все работает нормально screen.jpg в течении 2-6 минут, затем wi-fi отваливается. В консоли пишит:

    Uncaught Error: Unknown Timeout
    at line 1 col 107
    ...Timeout(this._updateTimeout),this._updateTimeout=void 0),thi...
    ^
    in function "disconnect" called from line 1 col 51
    process.memory(),f._event("error",a),f.disconnect()
    ^
    in function called from system

    Все остальные опыты работают нормально.

    Как с этим бороться?
     
    Последнее редактирование: 11 сен 2017
    arkadyf нравится это.
  2. Morgan

    Morgan Гик

    Привет!
    Придумываем решение.
    Спасибо, что сообщили
     
    arkadyf нравится это.
  3. MAGIGHAR

    MAGIGHAR Нерд

    ... и еще вопрос, как научить бота русскому? При замене TurnOff b TurnOn на русские аналоги выходит абракадабра.
     
  4. Rwxxik

    Rwxxik Нуб

    У меня так же. Пока решаю проблему регулярной перезагрузкой платы. Перезагрузка модуля не спасает.
     
  5. Morgan

    Morgan Гик

    неа, одно время было, но потом Гордон выпилил ( Что-то там не так пошло, на сколько я знаю
     
  6. Morgan

    Morgan Гик

    Попробуйте добавить в конце скрипта
    Код (Javascript):
    bot.on('disconnect', () => {
        setTimeout(() => {
            bot.connect();
        }, 2000);
    });
     
  7. MAGIGHAR

    MAGIGHAR Нерд

    screen.png Результат 0
     
  8. Cizif

    Cizif Нуб

    ____ __
    / _/_____ / /__ _____ ____ _
    / / / ___// //_// ___// __ `/
    _/ / (__ )/ ,< / / / /_/ /
    /___//____//_/|_|/_/ \__,_/
    Based on Espruino 1v92.194
    (c) 2016 G.Williams, Amperka LLC
    Support the work of core developers:
    http://espruino.com/Donate
    >Erasing Flash....
    Writing................
    Compressed 87200 bytes to 13392
    Checking...
    Done!
    Loading 13392 bytes from flash...
    =undefined
    I'm ready!
    Uncaught Error: Unknown Timeout
    at line 1 col 107
    ...Timeout(this._updateTimeout),this._updateTimeout=void 0),thi...
    ^
    in function "disconnect" called from line 1 col 51
    process.memory(),f._event("error",a),f.disconnect()
    ^
    in function called from system
    >
     
  9. alexs

    alexs Нуб

    У меня тоже такая проблема. Телеграмм бот совсем не запускается, такая ошибка падает сразу. Если добавить предложенный код с интервалом на 2 сек, то не падает иногда, но тоже не работает =)
     
  10. alexs

    alexs Нуб

    I'm ready!
    Uncaught Error: Unknown Timeout
    at line 1 col 107
    ...Timeout(this._updateTimeout),this._updateTimeout=void 0),thi...
    ^
    in function "disconnect" called from line 1 col 51
    process.memory(),f._event("error",a),f.disconnect()
    ^
    in function called from system
     
  11. DNA

    DNA Нерд

    Главное на форме что? Правильно, поиск!
    Похоже, что я наступил на те же грабли при попытке "прикрутить" telegram bot.

    Uncaught Error: Unknown Timeout
    at line 1 col 107
    ...Timeout(this._updateTimeout),this._updateTimeout=void 0),thi...
    ^
    in function "disconnect" called from line 1 col 51
    process.memory(),f._event("error",a),f.disconnect()
    ^
    in function called from system
     
  12. SAM_SAM

    SAM_SAM Нуб

    Такая же проблема при попытке запустить рингтон бузером через телеграм
     
  13. DNA

    DNA Нерд

    @Morgan, родной?! "Помоги себе сам" или вы уже трудитесь над решением?
     
  14. Yragan

    Yragan Нерд

    Доброго времени суток, у меня странная работа wifi модуля наблюдается даже в первом опыте!!! Заливаю код, получаю ссылку на dweet, после перехода пишет что "вещь не вещь" короче не видит ничего! после нескольких раз перезалива кода, всё же один раз заработал и начал выдавать показания! Решил округлить значение после запятой до (1) и перезалил код, в итоге так больше ни разу и не заработало( C telegram ботом такая же ситуация как и у всех! Ещё заметил интересную штуку, так как пали подозрения на то что модуль просто не подключается к роутеру, решил использовать iPhone в режиме модема(на нём легко отследить есть ли в данный момент подключения или нет). Так вот после очередного перезалива мне опять выдаёт ссылку на dweet, но к интернету модуль так и не подключился!!! Я то думал согласно коду контроллер шлёт мне ссылку в dweet только после того как прошло успешное подключение к сети!!! Помогите пожалуйста, или я не правильно понял код?)
     
  15. alexs

    alexs Нуб

    @Morgan
    Ребята, ну помоги с этой проблемой.
    Весь набор был куплен ради этого эксперимента. В основе его стоимости и добавленной ценности ведь не дешевые железки, а библиотеки и инструкции по работе с ними.
     
  16. SAM_SAM

    SAM_SAM Нуб

    Ну скинь код
     
  17. alexs

    alexs Нуб

    http://wiki.amperka.ru/iot
    Так не работает со штатным предложенным кодом, который в инструкции написан. И я разные вариаций попробовал. И перезагрузку модуля. Но иногда даже первый раз не подключается.Иногда одно сообщение обработает и снова зависает.
    Все ошибки и скрины приложены выше другими пользователями с аналогичной ошибкой. Полагаю она в библиотеке:
    http://wiki.amperka.ru/js:telegram
    https://github.com/amperka/espruino-modcat/blob/master/modules/@amperka/telegram.js


    Код (Javascript):

    var SSID = 'имя_твоего wi-fi';
    var PASSWORD = 'пароль_wi-fi';

    var bot = require('@amperka/telegram').create({
    token: 'здесь_будет_твой_токен',
    polling: { timeout: 10 }
    });
    var light = require('@amperka/led').connect(P3);

    bot.on('/start', function(msg) {
    var keyboard = bot.keyboard([
    ['/TurnOff', '/TurnOn'],
    ], { resize: true });
    bot.sendMessage(msg.from.id, 'Light control', {
    markup: keyboard
    });
    });

    bot.on('/TurnOff', function(msg) {
    light.turnOff();
    bot.sendMessage(msg.from.id, 'Light is off');
    });

    bot.on('/TurnOn', function(msg) {
    light.turnOn();
    bot.sendMessage(msg.from.id, 'Light is on');
    });

    var wifi = require('@amperka/wifi').setup(function(err) {
    wifi.connect(SSID, PASSWORD, function(err) {
    print('I\'m ready!');
    bot.connect();
    });
    });
     
     
  18. SAM_SAM

    SAM_SAM Нуб

    Ну не знаю, не у всех же так, у большинства получается работает эта библиотека, у меня в том числе. У меня такое вылазит только когда мелодию через бот запускаю, вероятно пока играет мелодия, не срабатывает обновление, но после нее он не реконектит даже с тем кодом выше и соответственно при перезапуске мелодия играет по новой , тк он отключился в самом начале и видимо не понял что уже отработал ее)
    В общем попробуй упростить код для начала. Оставь только вай вай и телеграм и событие старт
     
  19. Yragan

    Yragan Нерд

    А у меня вот тоже не работает и это печально( вообще все опыты с модулем wifi не работают( код копирую с сайта!
     
  20. SAM_SAM

    SAM_SAM Нуб

    Может соединил неправильно или модуль не рабочий