Virtuino HMI на Андроид
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Virtuino HMI на Андроид
Здравствуйте уважаемые форумчане!
Тоже пробывал приложение Virtuino, удалось подключиться и по модбасу, включать и выключать светодиоды или реле все ок, но как только использую шим, сразу пропадает связь с ESP8266, не могу разобраться в чем проблема?
Кто в курсе подскажите, пожалуйста!
Тоже пробывал приложение Virtuino, удалось подключиться и по модбасу, включать и выключать светодиоды или реле все ок, но как только использую шим, сразу пропадает связь с ESP8266, не могу разобраться в чем проблема?
Кто в курсе подскажите, пожалуйста!
- ingener
- Лейтенант
- Сообщения: 580
- Зарегистрирован: 14 окт 2018, 00:26
- Имя: Андрей
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
Virtuino HMI на Андроид
Подскажите, как правильно собрать программу для NodeMCU v.3?
В FLprog слева раскрываются настройки самого контроллера (имя сети, клиент или точка, IP и прочее)
Это нужно заполнять? Или нужно заполнять эти данные в блоке Virtuino?
В FLprog слева раскрываются настройки самого контроллера (имя сети, клиент или точка, IP и прочее)
Это нужно заполнять? Или нужно заполнять эти данные в блоке Virtuino?

-
- Капитан
- Сообщения: 860
- Зарегистрирован: 17 ноя 2015, 20:36
- Имя: Сергей
- Благодарил (а): 41 раз
- Поблагодарили: 8 раз
Virtuino HMI на Андроид
Не для кого не секрет что кроме virtuino, есть ещё и virtuino modbus и virtuino MQTT. Я тут прикупил обычную версию и написал автору по поводу того что в простой версии виджетов меньше чем в версии с modbus и MQTT. В общем в марте выйдет новая версия которая будет поддерживать и modbus и MQTT и обычную работу через esp. В новой версии не будет только bluetooth . Новое приложение не будет совместимо с старыми, будут новые библиотеки. Так что если кто решил покупать есть смысл немного подождать. Кстати и каскада должна обновиться. Это связано с новыми требованием googl. Так что ждемс.
- Kotafey
- Лейтенант
- Сообщения: 311
- Зарегистрирован: 18 июл 2018, 15:03
- Откуда: Геленджик
- Имя: Константин
Virtuino HMI на Андроид
Я не заполняю. Только в блоке.ingener писал(а): 27 фев 2019, 14:38 Подскажите, как правильно собрать программу для NodeMCU v.3?
В FLprog слева раскрываются настройки самого контроллера (имя сети, клиент или точка, IP и прочее)
Это нужно заполнять? Или нужно заполнять эти данные в блоке Virtuino?![]()
- ingener
- Лейтенант
- Сообщения: 580
- Зарегистрирован: 14 окт 2018, 00:26
- Имя: Андрей
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
Virtuino HMI на Андроид
Пытаюсь настроить Nano + ESP-01 для работы с Виртуино по Hardware serial.
Может, будет более надежно и быстро работать. Надоело, что постоянно отваливается и подвисает.
Сделал все как указано в блоках и скетче (отключить строки Software, в библиотеке строку #define ESP8266_USE_SOFTWARE_SERIAL)
НО при компиляции ругается.
Неужели правда для Nano и UNO в принципе нельзя использовать Hardware serial?
Может, будет более надежно и быстро работать. Надоело, что постоянно отваливается и подвисает.
Сделал все как указано в блоках и скетче (отключить строки Software, в библиотеке строку #define ESP8266_USE_SOFTWARE_SERIAL)
НО при компиляции ругается.
Неужели правда для Nano и UNO в принципе нельзя использовать Hardware serial?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- ingener
- Лейтенант
- Сообщения: 580
- Зарегистрирован: 14 окт 2018, 00:26
- Имя: Андрей
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
Virtuino HMI на Андроид
Все, понятно. Надо в скетче везде где слово "Serial1" убрать единицу и все скомпилировалось и работает
- ingener
- Лейтенант
- Сообщения: 580
- Зарегистрирован: 14 окт 2018, 00:26
- Имя: Андрей
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
Virtuino HMI на Андроид
А как наcтраиваете в блоке? По software или hardware serial?
Не сложно скинуть ваш проект или только блок virtuino ESP, настроенный под Node mCU?
- Kotafey
- Лейтенант
- Сообщения: 311
- Зарегистрирован: 18 июл 2018, 15:03
- Откуда: Геленджик
- Имя: Константин
Virtuino HMI на Андроид
Se версия вышла поддерживающая все вместе .пытаюсь сделать пользовательский блок для нее пока все печально ошибки компиляции нужно чтобы кто то более просвещенный тыкнул носом где я косо еду блоки прилагаюfsergei70 писал(а): 28 фев 2019, 03:53Не для кого не секрет что кроме virtuino, есть ещё и virtuino modbus и virtuino MQTT. Я тут прикупил обычную версию и написал автору по поводу того что в простой версии виджетов меньше чем в версии с modbus и MQTT. В общем в марте выйдет новая версия которая будет поддерживать и modbus и MQTT и обычную работу через esp. В новой версии не будет только bluetooth . Новое приложение не будет совместимо с старыми, будут новые библиотеки. Так что если кто решил покупать есть смысл немного подождать. Кстати и каскада должна обновиться. Это связано с новыми требованием googl. Так что ждемс.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Virtuino HMI на Андроид
вечером попробую сделать
когда мастерю обычно подсматриваю,
не рыли ли окоп в том же направлении,
не изобретали ли велосипед с такими-же квадратными как у меня колёсами,
а уже потом - не торопясь, торю свою лыжню
не рыли ли окоп в том же направлении,
не изобретали ли велосипед с такими-же квадратными как у меня колёсами,
а уже потом - не торопясь, торю свою лыжню
Virtuino HMI на Андроид
По примеру создания блока компаса пытался разобраться , но толком ничего чего путного не получалилось , не компилируется сыплет ошибки тоннами , пробовал про примеру блока коннекта с есп для виртуино ( обычной версии ) , такая же история , видимо не да но )
-
- Капитан
- Сообщения: 860
- Зарегистрирован: 17 ноя 2015, 20:36
- Имя: Сергей
- Благодарил (а): 41 раз
- Поблагодарили: 8 раз
Virtuino HMI на Андроид
Посмотрел я эту virtuino se версию, в общем виджетов новых нет. MQTT и modbus из коробки не работают. Если кто не покупал старую версию имеет смысл попробовать новую. В общей сложности в 4 вкладках бесплатной версии можно использовать 19 виджетов. Из плюшек понравилось только то что можно из готового проекта заказать apk файл, правда это опять за отдельную плату. Написал автору по поводу обновления ранее выпущеных версий программы, но скорей всего старые обновлять уже не будет. Надо же чтоб новую покупали.
Отправлено спустя 15 минут 35 секунд:
Для себя решил с покупкой новой версии не спешить. Купленная ранее virtuino пока устраивает. Присматриваюсь сейчас к easy builder. Отличная бесплатная прога для сенсорных панелей, есть эмулятор.
Отправлено спустя 15 минут 35 секунд:
Для себя решил с покупкой новой версии не спешить. Купленная ранее virtuino пока устраивает. Присматриваюсь сейчас к easy builder. Отличная бесплатная прога для сенсорных панелей, есть эмулятор.
Virtuino HMI на Андроид
Эмулятор работает ограниченное время, если правильно помню, то минут 30, потом автоматом закрывается.
Но это только для ПК ведь. Панели weintek тоже планируете закупать?
-
- Капитан
- Сообщения: 860
- Зарегистрирован: 17 ноя 2015, 20:36
- Имя: Сергей
- Благодарил (а): 41 раз
- Поблагодарили: 8 раз
Virtuino HMI на Андроид
Нет, закупать не планирую для дома дорого а для работы не надо, есть уже скада от dep. Да программа эта работает толькко на компе, но ведь скада и должна быть на компе чтоб все помещалось на большом экране. Кстати к этой проге, прям у них на сайте есть огромная библиотека графических элементов. Кнопки, переключатели всякие задвижки. Перетащили бы вы в свою каскаду десяток другой этих компонентов. Выглядела бы она гораздо красивей.
- Rovki
- Полковник
- Сообщения: 5744
- Зарегистрирован: 22 апр 2016, 17:25
- Откуда: Чехов
- Имя: Анатолий
- Благодарил (а): 69 раз
- Поблагодарили: 223 раза
- Контактная информация:
Virtuino HMI на Андроид
Красота понятие субьективное - что хорошо для УД ,не всегда хорошо для промышленного применения ...Каждый пользователь сам может установить ту картинку кнопки ,которая лично ему нравиться ...имхо.- это принципиальный подход в универсальном приложении .fsergei70 писал(а): 06 мар 2019, 05:17Нет, закупать не планирую для дома дорого а для работы не надо, есть уже скада от dep. Да программа эта работает толькко на компе, но ведь скада и должна быть на компе чтоб все помещалось на большом экране. Кстати к этой проге, прям у них на сайте есть огромная библиотека графических элементов. Кнопки, переключатели всякие задвижки. Перетащили бы вы в свою каскаду десяток другой этих компонентов. Выглядела бы она гораздо красивей.KaScada писал(а): 05 мар 2019, 21:49
Эмулятор работает ограниченное время, если правильно помню, то минут 30, потом автоматом закрывается.
Но это только для ПК ведь. Панели weintek тоже планируете закупать?

Но что бы не было вопросов ,что я влез в тему аналога ,скажу - вертуино мне понравился

Электронщик до мозга костей и не только
Virtuino HMI на Андроид
Помогите пожалуйста собрать блок для инициализации virtuino se [spoiler]/* VirtuinoSE example: Turn On-Off the onboard led
* Supported boards: ESP8266 & ESP32
* Created by Ilias Lamprou
* Updated Oct 27 2018
* More examples: http://virtuino.com/index.php/virtuino- ... e-examples
*/
// ------ VirtuinoSE V Memory Table
// V1 memory -> PIN = LED_BUILTIN onboard led
#ifdef ESP8266
#include <ESP8266WiFi.h>
#else
#include <WiFi.h>
#endif
//------------------- USER SETTINGS ---------------------------------
const char* ssid = "WIFI NETWORK"; // WIFI network SSID
const char* password = "PASSWORD"; // WIFI network PASSWORD
WiFiServer wifiServer(8000); // Server port
#define VIRTUINO_KEY "1234" // Virtuino KEY, only the requests that include this key will be acceptable
//============================================================== connectToWiFiNetwork
void connectToWiFiNetwork(){
Serial.println("Connecting to "+String(ssid));
// If you don't want to config IP manually disable the next four lines
IPAddress ip(192, 168, 1, 150); // where 150 is the desired IP Address
IPAddress gateway(192, 168, 1, 1); // set gateway to match your network
IPAddress subnet(255, 255, 255, 0); // set subnet mask to match your network
WiFi.config(ip, gateway, subnet); // If you don't want to config IP manually disable this line
WiFi.mode(WIFI_STA); // Configure the module as station only.
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.println(WiFi.localIP());
}
//============================================================== setup
//==============================================================
void setup() {
Serial.begin(9600);
while (!Serial) {;}
connectToWiFiNetwork(); //enable this line to connect the module your wifi network
wifiServer.begin();
pinMode(LED_BUILTIN, OUTPUT);
}
//============================================================== по команде получено
//==============================================================
/ * Эта функция вызывается каждый раз, когда приложение Virtuino отправляет запрос на сервер
* «VariableIndex» - это V-память приложения Virtuino
* 'ValueAsText' - это значение, отправленное из приложения.
* Если 'valueAsText' равен?, Вы должны вернуть значение, которое вы хотите отобразить на панели Virtuino.
* /
String onCommandReceived(int variableIndex, String valueAsText){
Serial.println("=== onCommandReceived variableIndex="+String(variableIndex)+" valueAsText="+valueAsText);
// --- код для включения или выключения встроенного светодиода
if (variableIndex==1){ // Virtuino V1 memory -> бортовой свет
if (valueAsText=="?") return String(digitalRead(LED_BUILTIN)); // вернуть состояние LED_BUILTIN как текст
int v=valueAsText.toInt();
if (v==1) digitalWrite(LED_BUILTIN,HIGH); // change the state of pin LED_BUILTIN
else if (v==0) digitalWrite(LED_BUILTIN,LOW);
}
return "";ф
}
//============================================================== loop
//==============================================================
void loop() {
virtuinoRun();
}
//================== Virtuino Library (included) ===============
//==============================================================
//==============================================================
/* Для связи с Virtuino необходимы только следующие две функции * Избегайте внесения изменений в приведенный ниже код
*/
#define WRONG_KEY_MESSAGE "Wrong Key"
#define WELLCOME_MESSAGE "Hello Virtuino"
boolean debug=true;
//============================================================== virtuinoRun
//==============================================================
void virtuinoRun(){
WiFiClient client = wifiServer.available(); // Check if a client has connected
if (client) {
if (debug) Serial.println("New client");
while(!client.available())delay(1); // Wait until the client sends some data
String req = client.readStringUntil('\r'); // Read the first line of the request
if (debug) Serial.println(req);
//-- check request
int pos = req.indexOf("GET /");
if (pos!=-1){ // We have a GET message
req.remove(0,pos+5); // Clear the characters GET /
int k= req.indexOf(" HTTP/");
if (k>0) req.remove(k); // Clear the tail of the line
//---the variable req contains the Virtuino command string.
String commandResponse = prepareResponse(&req); //Prepare the text that the server has to return to app
String responseHttp= "HTTP/1.1 200 OK\r\n Content-Type: text/html\r\nConnection: close\r\n\r\n";
responseHttp+=commandResponse; // add the commandResponse to request response
responseHttp+="\r\n\r\n";
if (debug) Serial.println("ResponseHttp="+responseHttp);
client.print(responseHttp);
client.print("status:0");
delay(1);
if (debug) Serial.println("Client disonnected");
client.flush();
}
else {
Serial.println("invalid request");
client.stop();
}
}
}
//============================================================== prepareResponse
//==============================================================
String prepareResponse(String* commands){
//---check the KEY
#ifdef VIRTUINO_KEY
String virtuinoKey="";
int keyPosStart = commands->indexOf("&KEY=");
if (keyPosStart!=-1) {
int keyPosEnd = commands->indexOf('&',keyPosStart+5);
if (keyPosEnd!=-1) virtuinoKey= commands->substring(keyPosStart+5,keyPosEnd);
else virtuinoKey= commands->substring(keyPosStart);
}
if (!virtuinoKey.equals(VIRTUINO_KEY)) return WRONG_KEY_MESSAGE;
#endif
//--- read all virtuino commands from request
String commandResponse="";
boolean checkNext=true;
int cStart=-1;
while (checkNext){
cStart=commands->indexOf('&',cStart+1);
if (cStart!=-1) {
int cEnd=commands->indexOf('&',cStart+1);
String oneCommand="";
if (cEnd<0) oneCommand=commands->substring(cStart+1);
else oneCommand=commands->substring(cStart+1,cEnd);
if (debug) Serial.println("cmd: "+oneCommand);
char commandType = oneCommand.charAt(0);
if (commandType=='C') return "&CNT="+String(WELLCOME_MESSAGE); // Virtuino sends the command &C=? to check the connection status
if ((commandType=='V') || (commandType=='T')) {
int equalCharPosition = oneCommand.indexOf('=');
int variableIndex = oneCommand.substring(1,equalCharPosition).toInt();
String valueString = oneCommand.substring(equalCharPosition+1);
String returnedValue = onCommandReceived(variableIndex,valueString);
if (returnedValue.length()>0) {
commandResponse+='&';
commandResponse+=commandType;
commandResponse+=String(variableIndex);
commandResponse+='=';
commandResponse+=returnedValue;
}
}
}
else checkNext=false; // the last command has checked
}
if (debug) Serial.println("Response="+commandResponse );
if (commandResponse.length()==0) commandResponse="OK";
return commandResponse;
}
[/spoiler]
* Supported boards: ESP8266 & ESP32
* Created by Ilias Lamprou
* Updated Oct 27 2018
* More examples: http://virtuino.com/index.php/virtuino- ... e-examples
*/
// ------ VirtuinoSE V Memory Table
// V1 memory -> PIN = LED_BUILTIN onboard led
#ifdef ESP8266
#include <ESP8266WiFi.h>
#else
#include <WiFi.h>
#endif
//------------------- USER SETTINGS ---------------------------------
const char* ssid = "WIFI NETWORK"; // WIFI network SSID
const char* password = "PASSWORD"; // WIFI network PASSWORD
WiFiServer wifiServer(8000); // Server port
#define VIRTUINO_KEY "1234" // Virtuino KEY, only the requests that include this key will be acceptable
//============================================================== connectToWiFiNetwork
void connectToWiFiNetwork(){
Serial.println("Connecting to "+String(ssid));
// If you don't want to config IP manually disable the next four lines
IPAddress ip(192, 168, 1, 150); // where 150 is the desired IP Address
IPAddress gateway(192, 168, 1, 1); // set gateway to match your network
IPAddress subnet(255, 255, 255, 0); // set subnet mask to match your network
WiFi.config(ip, gateway, subnet); // If you don't want to config IP manually disable this line
WiFi.mode(WIFI_STA); // Configure the module as station only.
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.println(WiFi.localIP());
}
//============================================================== setup
//==============================================================
void setup() {
Serial.begin(9600);
while (!Serial) {;}
connectToWiFiNetwork(); //enable this line to connect the module your wifi network
wifiServer.begin();
pinMode(LED_BUILTIN, OUTPUT);
}
//============================================================== по команде получено
//==============================================================
/ * Эта функция вызывается каждый раз, когда приложение Virtuino отправляет запрос на сервер
* «VariableIndex» - это V-память приложения Virtuino
* 'ValueAsText' - это значение, отправленное из приложения.
* Если 'valueAsText' равен?, Вы должны вернуть значение, которое вы хотите отобразить на панели Virtuino.
* /
String onCommandReceived(int variableIndex, String valueAsText){
Serial.println("=== onCommandReceived variableIndex="+String(variableIndex)+" valueAsText="+valueAsText);
// --- код для включения или выключения встроенного светодиода
if (variableIndex==1){ // Virtuino V1 memory -> бортовой свет
if (valueAsText=="?") return String(digitalRead(LED_BUILTIN)); // вернуть состояние LED_BUILTIN как текст
int v=valueAsText.toInt();
if (v==1) digitalWrite(LED_BUILTIN,HIGH); // change the state of pin LED_BUILTIN
else if (v==0) digitalWrite(LED_BUILTIN,LOW);
}
return "";ф
}
//============================================================== loop
//==============================================================
void loop() {
virtuinoRun();
}
//================== Virtuino Library (included) ===============
//==============================================================
//==============================================================
/* Для связи с Virtuino необходимы только следующие две функции * Избегайте внесения изменений в приведенный ниже код
*/
#define WRONG_KEY_MESSAGE "Wrong Key"
#define WELLCOME_MESSAGE "Hello Virtuino"
boolean debug=true;
//============================================================== virtuinoRun
//==============================================================
void virtuinoRun(){
WiFiClient client = wifiServer.available(); // Check if a client has connected
if (client) {
if (debug) Serial.println("New client");
while(!client.available())delay(1); // Wait until the client sends some data
String req = client.readStringUntil('\r'); // Read the first line of the request
if (debug) Serial.println(req);
//-- check request
int pos = req.indexOf("GET /");
if (pos!=-1){ // We have a GET message
req.remove(0,pos+5); // Clear the characters GET /
int k= req.indexOf(" HTTP/");
if (k>0) req.remove(k); // Clear the tail of the line
//---the variable req contains the Virtuino command string.
String commandResponse = prepareResponse(&req); //Prepare the text that the server has to return to app
String responseHttp= "HTTP/1.1 200 OK\r\n Content-Type: text/html\r\nConnection: close\r\n\r\n";
responseHttp+=commandResponse; // add the commandResponse to request response
responseHttp+="\r\n\r\n";
if (debug) Serial.println("ResponseHttp="+responseHttp);
client.print(responseHttp);
client.print("status:0");
delay(1);
if (debug) Serial.println("Client disonnected");
client.flush();
}
else {
Serial.println("invalid request");
client.stop();
}
}
}
//============================================================== prepareResponse
//==============================================================
String prepareResponse(String* commands){
//---check the KEY
#ifdef VIRTUINO_KEY
String virtuinoKey="";
int keyPosStart = commands->indexOf("&KEY=");
if (keyPosStart!=-1) {
int keyPosEnd = commands->indexOf('&',keyPosStart+5);
if (keyPosEnd!=-1) virtuinoKey= commands->substring(keyPosStart+5,keyPosEnd);
else virtuinoKey= commands->substring(keyPosStart);
}
if (!virtuinoKey.equals(VIRTUINO_KEY)) return WRONG_KEY_MESSAGE;
#endif
//--- read all virtuino commands from request
String commandResponse="";
boolean checkNext=true;
int cStart=-1;
while (checkNext){
cStart=commands->indexOf('&',cStart+1);
if (cStart!=-1) {
int cEnd=commands->indexOf('&',cStart+1);
String oneCommand="";
if (cEnd<0) oneCommand=commands->substring(cStart+1);
else oneCommand=commands->substring(cStart+1,cEnd);
if (debug) Serial.println("cmd: "+oneCommand);
char commandType = oneCommand.charAt(0);
if (commandType=='C') return "&CNT="+String(WELLCOME_MESSAGE); // Virtuino sends the command &C=? to check the connection status
if ((commandType=='V') || (commandType=='T')) {
int equalCharPosition = oneCommand.indexOf('=');
int variableIndex = oneCommand.substring(1,equalCharPosition).toInt();
String valueString = oneCommand.substring(equalCharPosition+1);
String returnedValue = onCommandReceived(variableIndex,valueString);
if (returnedValue.length()>0) {
commandResponse+='&';
commandResponse+=commandType;
commandResponse+=String(variableIndex);
commandResponse+='=';
commandResponse+=returnedValue;
}
}
}
else checkNext=false; // the last command has checked
}
if (debug) Serial.println("Response="+commandResponse );
if (commandResponse.length()==0) commandResponse="OK";
return commandResponse;
}
[/spoiler]
-
- Капитан
- Сообщения: 860
- Зарегистрирован: 17 ноя 2015, 20:36
- Имя: Сергей
- Благодарил (а): 41 раз
- Поблагодарили: 8 раз
Virtuino HMI на Андроид
Простая viruino работает нормально а вот с modbus версией нестыковочки выходят типы данных в flprog не соответствуют тем что в программе. Отправляешь с flprog long integer а в программу оно приходит как Integer 32.
Почему я выбрал virtuino? да это пожалуй единственное приложение которое может работать локально без интернета. Есть конечно еще blynk с его локальным сервером ну и ваша программа конечно. Но без обид, пока вы будете продавать ключи на каждое устройство я ей пользоваться не буду, потому что у меня три устройства телефон планшет и эмулятор, и платить три раза за одну и туже программу я чего то не хочу. Да и что из себя представляет сейчас ваша прога я если честно не знаю, быть может она мне не понравится а может наоборот. Конечно я пробовал пару лет назад древнюю демо версию, но с тех пор много воды утекло.
Отправлено спустя 37 минут 35 секунд:
Сделал пробный блок из пример, все вроде компилируется. Это просто весь исходный код в блоке. для своих нужд надо копать функцию String onCommandReceived(int variableIndex, String valueAsText) . Примеры в основном отличаются содержимым именно этой функции
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось fsergei70 06 мар 2019, 13:09, всего редактировалось 2 раза.
Virtuino HMI на Андроид
Они там как то закодированы, просто вытащить изображение не получится.fsergei70 писал(а): 06 мар 2019, 05:17 Перетащили бы вы в свою каскаду десяток другой этих компонентов. Выглядела бы она гораздо красивей.
- brig62
- Лейтенант
- Сообщения: 469
- Зарегистрирован: 13 май 2016, 16:37
- Откуда: Казань
- Имя: Игорь
- Благодарил (а): 1 раз
Virtuino HMI на Андроид
5 мин вместе с установкой Виртуино на Нокс
[spoiler] [/spoiler]
Дальше по совету Ровки открываете в фотошопе и делаете черный фон бесцветным.
Но это кривой путь. Лучше найдите студента владеющего фотошопом. И за стоимость 5 лицензий он вам кнопочек и индикаторов нарисует огромное количество. Но только надо не просто кучу рисовать , а продумать несколько тем. И что бы в каждой были все элементы. Их у вас не так уж и много. Например темная тема, стальная, неоновая и тп.
Отправлено спустя 11 минут 2 секунды:
Как пример https://www.colourbox.com/vector/volume ... or-9477527 Есть российские сайты по продаже графики.
Отправлено спустя 5 минут 29 секунд:
Вот один из авторов, москвич https://www.colourbox.com/supplier/petr-105802?page=4 Он вам этих кнопуличек наваяет за пол дня девать некуда будет.
Отправлено спустя 5 минут 58 секунд:
Заходите на сайт фрилансеров. Размещаете описание заказа. Получаете пару сотен откликов. И выбираете с кем работать за смешные деньги
https://www.fl.ru/freelancers/
Отправлено спустя 26 минут 33 секунды:
Можете сделать в программе встроенные покупки графики. И отдать эти деньги дизайнеру. По 100р к примеру за тему. Кому надо, тот купит. И именно то, что ему нравится.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость