Сервер blynk на роутере

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Platform with iOs and Android apps to control Arduino, Raspberry Pi and similar microcontroller boards over the Internet.

License

HenrikDA/blynk-server

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

Blynk is a platform with iOS and Android apps to control Arduino, Raspberry Pi and the likes over the Internet.
You can easily build graphic interfaces for all your projects by simply dragging and dropping widgets. If you need more information, please follow these links:

Blynk Server is an Open-Source Netty based Java server, responsible for forwarding messages between Blynk mobile application and various microcontroller boards (i.e. Arduino, Raspberry Pi. etc). Take latest build here.

Java 8 required. (OpenJDK, Oracle)

Right now Blynk server uses 2 ports. 1 port is used for hardware and second one is used for the mobile apps. This is done due to the lack of security mechanism and low resources on microcontroller boards (e.g. Arduino UNO). By default, mobile application uses 8443 port and is based on SSL/TLS sockets. Default hardware port is 8442 and is based on plain TCP/IP sockets.

 java -version Output: java version "1.8.0_40" 
 java -jar server-.jar -hardPort 8442 -appPort 8443 

Advanced local server setup

If you need more flexibility, you can extend server with more options by creating server.properties file in same folder as server.jar. Example could be found here. server.properties options:

 user.message.quota.limit.exceeded.warning.period=60000 
 user.in.memory.storage.limit=1000 
 profile.save.worker.period=60000 

If you want to run Blynk server behind WiFi-router and want it to be accessible from the Internet, you have to add port-forwarding rule on your router. This is required in order to forward all of the requests that come to the router within the local network to Blynk server.

Читайте также:  Настройка роутера asus rt n11

Currently server easly handles 40k req/sec hardware messages on VM with 2-cores of Intel(R) Xeon(R) CPU E5-2660 @ 2.20GHz. With high load — memory consumption could be up to 1 GB of RAM.

App Client (emulates Smartphone App)

 java -jar client-$.jar -mode app -host localhost -port 8443 
 register username@example.com UserPassword login username@example.com UserPassword 
 00:05:18.100 TRACE - Incomming : GetTokenMessage

Where 33bcbe756b994a6768494d55d1543c74 is your Auth Token.

Hardware Client (emulates Hardware)

 java -jar client-$.jar -mode hardware -host localhost -port 8442 login 33bcbe756b994a6768494d55d1543c74 

You can run as many clients as you want.

Clients with the same credentials and Auth Token are grouped into one Session and can send messages to each other. All client’s commands are human-friendly, so you don’t have to remember the codes.

Before sending any read/write commands to hardware, application must first send “init” command. «Init» command is a ‘hardware’ command which sets all the Pin Modes(pm). Here is an example of «init» command:

 hardware pm 1 in 13 out 9 out 8 in 

// TODO: take description about pin modes from Blynk Arduino library readme // TODO Describe separation with Zeroes in pinmode command

In this example you set pin 1 and pin 8 to ‘input’ PIN_MODE. This means this pins will read values from hardware (graph, display, etc). Pins 13 and 9 have ‘output’ PIN_MODE. This means that these pins will we writable (button, slider).

List of hardware commands:

 hardware dw 9 1 hardware dw 9 0 
 hardware dr 9 You should receive response: dw 9
 hardware ar 14 You should receive response: aw 14
 hardware vw 9 1234 hardware vw 9 string hardware vw 9 item1 item2 item3 hardware vw 9 key1 val1 key2 val2 
 hardware vr 9 You should receive response: vw 9

Registered users are stored locally in TMP dir of your system in «user.db» file. So, after the restart you won’t need to re-register.

About

Platform with iOs and Android apps to control Arduino, Raspberry Pi and similar microcontroller boards over the Internet.

Источник

Blynk сервер

Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно.
Вам необходимо обновить браузер или попробовать использовать другой.

bdpcvit

Можно начать с этого https://ipc2u.ru/articles/prostye-resheniya/chto-takoe-mqtt/
Брокеров пруд пруди. Хотите свой сервер поднимайте, или используйте открытый. Только вот с панелями под смартфон немного разношерстно и как по мне недоделано, но использовать можно. Я пробую освоить homeassistant. Вроде как позволяет каждому пользователю свою панель, и с MQTT умеет работать.

_Vasilij_

Расшифруйте, пожалуйста, что означает «50.000 запросов API в месяц» допустим контролю 2 величины температура и влажность, отправляю раз в минуту эти величины на 2 разных виртуальных пина — это будет 2 запроса или один ? И блинк апп оно же тоже что там опрашивает, + хартбит(или как его там, которое следит за связью раз в сколько-то секунд) ?
Может кто знает, где найти посмотреть текущие/оставшиеся запросы к халявному оракловскому серверу ?

Un_ka

Это лимит обращение к API oracle, а не к вашему серверу. Можете не беспокоиться. Трафик у oracle cloud free tier безлимитный. Надеюсь вы карту привязывали не с кучей денег? Вдруг по незнанию запустите лишнюю машину, выйдите за лимиты, а они всё спишут и не подавятся.
А как вам удалось зарегистрироваться?

Читайте также:  Не работает dsl на роутере

_Vasilij_

Как и положено чайнику, просто нашел пошаговую инструкцию, правда там mqtt брокера ставят, но это не важно, просто на последнем шаге вместо брокера устанавливаем блинк-сервер, хотя и то, и это не помешает.
Карту первую попавшуюся взял сберовскую, дебетовую вроде, имя, цвв — все как всегда, как на любом платёжном сайте. Поскольку я уже терял карту с бесконтактной оплатой, то конечно же денег там много не держу, оракл действительно без спросу снимает и возвращает 0.86$. уже пару раз, не знаю с чем связано. Вообще есть виза виртуалка, но в этот раз что-то лень было за ее данными тянуться, а так наверное лучше к виртуалке привязывать. В общем с привязкой карты сложностей не возникло.

bdpcvit

Благодарю за наводку на Оракл. Регистрация простая. Оракл действытельно снял 0,86евро для проверки и тут же вернул. Пока создал две виртуалки — одну на AMD і одну на ARM. Буду тестить.

Un_ka

bdpcvit

@Un_ka, Две виртуалки х86 точно можно. Сейчас еще разрешают виртуалку на АРМ — но там хитро 4 ядра и 24Г оперативки. Можно создавать 4 машини по 1 АРМ ядру, или 2 машини по два ядра. Только надо учесть что дискового пространства всего 200Г, а на одну машину можно минимум 50Г. Тоест максимум на один аккаунт это 4 машины. Пока АРМ машина не имеет пометки бесплатно, хотя народ пишет что служба техподдержки сказала что скоро пометка будет.. Жду когда кончиться 30 дневний пробний период и посмотрю что будет.

Un_ka

Бекапы рабочей директории blynk сервера делайте, вынеся логи в какую-нибудь другую папку, благо это можно сделать в настройках сервера. Либо периодически с использованием rclone в gdrive например, либо с постоянной синхронизацией, что позволяет сделать MEGAcmd например. А то ходят слухи, что oracle уж очень такие непостоянные.

Evgeny465

Добрый день! Перебросил свой проект по контроллеру эл котла на ваш сервер. Не работает одна штука — WidgetRTC rtc;. Не выдает ни дату, ни время. Как можно вылечить?

Добрый день! Перебросил свой проект по контроллеру эл котла на ваш сервер. Не работает одна штука — WidgetRTC rtc;. Не выдает ни дату, ни время. Как можно вылечить?

Un_ka

Evgeny465

А где тут может быть опасно? Проект был на одном сервере, сейчас на другом. Через опцию clone и другой токен. Все работает

Un_ka

Для начала: соединение устройства с сервером не зашифровано. Меня это смущает, но я продолжаю пользоваться blynk.
У вас контроллер котла самодельный?

Evgeny465

Да, управление 3хфазным контроллером на 6кВт, насосом. Ну и заоодно прилепил управление водонагревателем. Силовая часть в двух вариантах: через родные релюшки NT90 и через симисторы BTA20-800. Второй вариант конечно тихий и вечный, но громоздкий из за теплоотвовда

Да, управление 3хфазным контроллером на 6кВт, насосом. Ну и заоодно прилепил управление водонагревателем. Силовая часть в двух вариантах: через родные релюшки NT90 и через симисторы BTA20-800. Второй вариант конечно тихий и вечный, но громоздкий из за теплоотвовда

Un_ka

Evgeny465

Нет, логика во первых: насос отключится после достижения установленной минимальной т-ры котла — в моем случае 35 градусов, во вторых если если контроллер не работает, то все отключено. В третьих стоит KSD-шка на 75 градусов, которая вообще рвет все питание при превышении. И кстати, что вы вкладываете в слово «сбой»?

Читайте также:  Выключается роутер tp link archer

Нет, логика во первых: насос отключится после достижения установленной минимальной т-ры котла — в моем случае 35 градусов, во вторых если если контроллер не работает, то все отключено. В третьих стоит KSD-шка на 75 градусов, которая вообще рвет все питание при превышении. И кстати, что вы вкладываете в слово «сбой»?

Или вы про отсутствие интернета?

Вложения

Screenshot_20211029-200100_Blynk.jpg

Screenshot_20211029-200108_Blynk.jpg

Evgeny465

bdpcvit

По облачным серверам Оракл — по истечении пробного периода тихо заблокировали аккаунт. О чем уведомили письмом, в котором кстати написали что я по прежнему могу использовать фрее машины но не сказали как. Разблокировать аккаунт не могу потому что в службу техподдержки могут обращаться только с активного аккаунта. Круг замкнулся. Хорошо что не поспешил перенести свой сервер на их облачный сервис.
П.С. Все виртуальные машины после блокировки не отвечают.

Un_ka

Сколько времени «счастья» вам дали?
Я считаю, что можно размещать серверы blynk даже на таких ненадёжных облаках, если автоматически каждый день делать резервные копии в google диск и куда-нибудь ещё, например Мега, имеющие консольный клиент для фоновой синхронизации. На смену IP на DNS сервере может уйти от часа до дня. Если хотите кого-то более предсказуемого попробуйте amazon web cloud. О миграции на новую машину ну можно будет озаботиться лишь через год, зато будет хороший опыт миграции. Ну и не забывайте поднимать на на серверах ufw, потом в логах увидите как много к вам стучатся в разные порты.

bdpcvit

@Un_ka, Пробный период 30 дней. Особо не обживетесь. Проще уже использовать динамический DNS и одноплатный компьютер в качестве сервера. тот же duckdns.org.

Илдар

@D_Jackas,
Дело в том что нет теперь кнопочки» Сreate new account» (Создание нового аккаунта)! Что делать то?

Un_ka

Илдар

По началу загорелся облачным сервером Оракл, но после того как у меня при очередном посещении Оракла исчез сервер! то я туда больше ни ногой!
Вот теперь развернул mosquitto на роутере Keenetic и есть огромное желание развернуть на нём же blynk, т.к. mosquitto надо ещё изучить что бы в полной мере его использовать да ещё и дашборд нормальный подобрать (которыми я к стати так и не научился методом тыка в отличии от blynk). Так вот на Kinetic стоит как я понял Linux 4.9-ndm-4 mips библиотека ()репозиторий) для него здесь http://bin.entware.net/mipselsf-k3.4/Packages.html, а в дополнение к ней разрабы keenetic добавили ещё репозиторий — http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.html.
В общем проблема в том что blyn требует наличие Java, а в Linux 4.9-ndm-4 он отсутствует, нет его и в репозиториях. Может кто подскажет что делать? И думаю я бы тоже мог раздавать со временем токены, не думаю что это сильно нагрузит роутер.

Un_ka

Если есть gcc, то можно попробовать собрать OpenJDK 11. А так купить Raspberry pi zero w, и пробросить порты. Этого должно хватить на вас и несколько устройств. Java потребляет очень много памяти. У меня blynk server занимает 254.9M ОЗУ.
Вы же для получения доступа к роутеру из интернета пользуетесь сервисом Keenetic?

Источник

Оцените статью
Adblock
detector