Немноко больше чем просто блинк. блинк с поддержкой ТСР сокета. После запуска ждет входящего соединения на порт 5000 и мигает светодиодом на GPIO1. Прием соединений не блокирующий. После соединения принимает с него данные и завершается. Пишет чтото в файл.
/*
* server_TCP:
* Standard "blink" program in wiringPi. Blinks an LED connected
* to the first GPIO pin.
*
***********************************************************************
*/
#include <fcntl.h>
#include <stdio.h>
#include <wiringPi.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
// LED Pin - wiringPi pin 0 is BCM_GPIO 1.
#define LED 1
#define TEST_FILE_NAME "testfl"
void blink(int t)
{
static int time;
static unsigned char flag;
int fd;
if(t-time>100)
{
time=t;
fd=open(TEST_FILE_NAME, O_WRONLY | O_APPEND);
write(fd, &t, sizeof(t));
close(fd);
if(flag)
{
flag=0;
digitalWrite (LED, HIGH) ;
}
else
{
flag=1;
digitalWrite (LED, LOW) ;
}
}
}
int IsNoReadable(int sock)
{
fd_set readfds;
struct timeval timeout;
socklen_t size = sizeof(struct sockaddr_in);
struct sockaddr_in their_addr;
FD_ZERO(&readfds);
FD_SET(sock, &readfds);
timeout.tv_sec = 0; // wait not more than 1 millisecond
timeout.tv_usec = 1000;
int sel = select(sock + 1 , &readfds , NULL , NULL , &timeout);
if(sel < 0)
{
return -4;
}
if((FD_ISSET(sock, &readfds))) return 0;//готовы данные
return 1;
}
int main (void)
{
printf ("Raspberry Pi TCP server and blink\n") ;
wiringPiSetup () ;
pinMode (LED, OUTPUT) ;
int fd = creat(TEST_FILE_NAME, 0006);
if(fd)
{
close(fd);
}
#define BUF_SIZE 256
int sock;
int newsock;
int client;
int port=5000;
char buf[BUF_SIZE];
struct sockaddr_in serv_addr;
struct sockaddr_in cli_addr;
sock = socket(PF_INET, SOCK_STREAM, 0);
if (socket < 0)
{
return -2;
}
fcntl(sock, F_SETFL, O_NONBLOCK);
memset((char *) &serv_addr, 0, sizeof(serv_addr));
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = INADDR_ANY;
serv_addr.sin_port = htons(port);
if (bind(sock, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0)
{
return -3;
}
listen(sock, 1);
for (;;)
{
int t=millis();
blink(t);
if(!IsNoReadable(sock))
break;
}
client = sizeof(cli_addr);
newsock = accept(sock, (struct sockaddr *) &cli_addr, &client);
if (newsock < 0)
{
return -5;
}
memset(buf, 0, BUF_SIZE);
read(newsock, buf, BUF_SIZE-1);
buf[BUF_SIZE] = 0;
fd=open(TEST_FILE_NAME, O_WRONLY | O_APPEND);
write(fd, buf, BUF_SIZE);
close(fd);
write(newsock, "OK", 2);
close(newsock);
close(sock);
return 0 ;
}
Мой старт на оранже закончен. Сделал на нем сервер WebSocket-а для управления и контроля GPIO. Выбрал WebSocket потому как хорошая поддержка броузеров, чистый JS без левых либок и лишнего трафика, асинхронный, быстрый. Без проблемы заработало на опере на ПК и мобилке. Правда весь протокол (бинарные данные, длинные пакеты, пинг-понг и.т.д) делать не стал, хотяб потому, что запросто тестировать не получается, писать клиент для тестов не охота. "Склейку" фреймов думал делать но понял что не смогу тоже ни отладить ни проверить, осталась как есть. После того как спрятал протокол в либу даже лаконичный код вышел.
/*
* server_WinSoc:
* Not standard "blink" program in wiringPi. Blinks an LED connected
* to the first GPIO pin.
*
***********************************************************************
*/
#include <fcntl.h>
#include <stdlib.h>
#include <unistd.h>
#include <cstring>
#include <stdio.h>
#include <wiringPi.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <poll.h>
#include "BaseNetwork.h"
#include "itoa.h"
// LED Pin - wiringPi pin 0 is BCM_GPIO 1.
#define LED 1
/* Команды нашего протокола*/
#define CMD_LCD_0 "LCD_0"
#define CMD_LCD_1 "LCD_1"
#define CMD_LCD_BLINK "LCD_Blink"
#define CMD_EXIT "Stop server LCD"
bool BlinkEnable; //разрешить мигание
/* Процесс мигания */
void blink(int t, unsigned int d)
{
static int time;
static unsigned char flag;
if(t-time>d)
{
time=t;
if(flag)
{
flag=0;
digitalWrite (LED, HIGH) ;
}
else
{
flag=1;
digitalWrite (LED, LOW) ;
}
}
}
int Speed; //для демонстрации динамической передачи клиенту
int TimeSendSpeed; //время последней отправки Speed
int Timer; // таймер отправляемый клиенту
int main (void)
{
printf ("Raspberry Pi WebSocket server and blink\n") ;
setenv("WIRINGPI_GPIOMEM", "1", 1); //заклинание чтоб wiringPi не требовал ребута
wiringPiSetup () ;
pinMode (LED, OUTPUT) ;
/* Очистим файл, потом в него что-то запишем */
int fd = creat("testfl", 0006);
if(fd)
{
close(fd);
}
Socket sock; // Наш серверный сокет
if(sock.Run(5000)<0) // Открываем порт и ждем когда постучится клиент
return -1;
WebSocket ws; // Наш веб сокет, т.к. ждем только одного клиента то статический
// ОСНОВНОЙ ЦИКЛ ПРИЛОЖЕНИЯ.
for (;;)
{
int t=millis();
switch(ws.Process()) // состояние обмена с клиентом
{
case WebSocket::NOINIT: // пока никого нет
blink(t, 100);
if(!sock.WaitIncom()) // если ктото пришел принимаем соединяемся пока по TCP
{
if(ws.Init(sock.Accept())<0)
return -2;
}
break;
case WebSocket::NOCONECT: // клиент зашел по TCP но не присоединился по WebSocket
break;
case WebSocket::ND: // от клиента нет данных делаем что хотим при простое
delay(1);
if(BlinkEnable)
blink(t, 40);
/* Плавно уменщаем Speed до 0 и передаем её клиенту */
if(Speed)
{
if(t-TimeSendSpeed>30)
{
Speed--;
TimeSendSpeed=t;
char s[20];
itoa(Speed, s+1, 10);
s[0]='s';
ws.SendFrameText(s);
}
}
if(t-Timer>1000)
{
Timer=t;
char s[20];
itoa(t/1000, s+1, 10);
s[0]='t';
ws.SendFrameText(s);
}
break;
case WebSocket::CONECT: // клиент присоединился по WebSocket
printf ("WebSocket conect\n") ;
break;
case WebSocket::FRAME_TEXT: // клиент прислал текст
{
char* buf=ws.GetText(); // получаем текст
int fd=open("testfl", O_WRONLY | O_APPEND);
write(fd, buf, strlen(buf));
write(fd, "\n", 1);
close(fd);
/* Обрабатываем текст и выполняем требуемое действие */
if(!strcmp(buf,CMD_LCD_0))
{
digitalWrite (LED, LOW);
BlinkEnable=false;
Speed+=100;
}
else if(!strcmp(buf,CMD_LCD_1))
{
digitalWrite (LED, HIGH);
BlinkEnable=false;
Speed+=100;
}
else if(!strcmp(buf,CMD_LCD_BLINK))
{
BlinkEnable=true;
ws.SendFrameText("sOK!");
}
else if(!strcmp(buf,CMD_EXIT)) // клиент прислал команду на отсоединение
{
digitalWrite (LED, LOW);
ws.Close();
sock.Stop();
printf ("Exit\n") ;
return 0;
}
break;
}
/* Клиент прислал чтото не интересное */
case WebSocket::FRAME_BIN :printf ("bin frame\n");break;
case WebSocket::FRAME_CONT :printf ("long frame\n");break;
case WebSocket::FRAME_PING :printf ("ping frame\n");break;
case WebSocket::FRAME_PONG :printf ("pong frame\n");break;
case WebSocket::FRAME_UNDEF:printf ("undef frame\n");break;
case WebSocket::FRAME_CLOSE: // клиент закрыл соединение по WebSocket
ws.Close();
printf ("Close\n") ;
}
}
}
Теперь имею платформу для дистанционного, через инет, управления и контроля чего угодно. Либы - можна, но позже.
Погонял сервер, обнаружил нагрев проца. Если без присоединенного клиента температура 53С и проц загружен порядка 1% и частоте 0,46ГГц, то при длительном соединении прогрелся до 77С при нагрузке около 26% и частоте 1,53ГГц-1,2ГГц. Т.е. загрузили ровно одно ядро. Радиатор небольшой, на липучке. Наблюдал снижение частоты при прогреве свыше 70 градусов с 1,53ГГц до 1,2ГГц, он себя защищает от моей проги )).
Поправил код выше, добавил делей и все вернулось как было - 53С и 1%.
А вот по 54 посту, в какой среде пишется это с под вайринга? И как начать, подключить HDMI-монитор к расспберри и в установленную систему поставить среду для писания программ под вайринг? И куда потом сохранять скетч в память расспбери или на микро сд? И можно ли с компа писать в какой-то среде, а потом кидать на расспбери? И как удобнее?
Пишу C/С++, без ИДЕ компиляция gcc. Ставился по https://geektimes.ru/post/269444/ развивался дальше по разным источникам, все не припомню. Единственное добавлю - не спешите увеличивать диск до размера флешки (можно увеличить мегабайт на 300 для начала, там всегда легко еще добавить, а обратно - сложно), и вот почему. После каждого удачного этапа установки полезно "сохранится" сбросить образ SD в комп. Пока он 3 гиги с ним быстрей все чем когда он 8-16 гигов.
Вайринг подключается библиотекой. Все необходимое сразу в образе присутствовало (хотя не уверен про вайринг, я сразу не глянул, начал ставить, оно ругается, начал разбиратся - стоит и работает, наверно был изначально). В общем работать можна двумя путями: 1. как с нормальной ОС - подключить клаву+мыш+монитор и в графической убунтовской оболочке делать все 2. как с удаленным сервером - заходим с ПК через putty.exe и в консоле работаем. Я опробывал первый вариант, нормально все включая HDMI, но повседневно работаю вторым, а в нем HDMI не актуален пока и не подключен к монитору, но по идее он включен и пытается выводить запрос пароля. Причем первый вариант пропустить не выйдет! Надо настроить сеть. Сразу устройству задан какойто статический IP, который вероятно подходит только автору сборки :)
Учитывая что нам доступны все линуксовые библиотеки, то сложностей с HDMI особых не должно быть. Разве что HD может неподдержать, пишут что в некоторых сборках это проблема.
Общая технология старта и разработки у меня так (заходим всегда с ПК через putty.exe и в консоле работаем): проверил собираемость примеров варинга, подпаял светодиод, поморгал, попробовал править скетч в родном редакторе нано, получилось но понял что неудобно, настроил убунтовские сетевые службы (самбу вроде ставил) заработали расшары - стало веселей, файл легко перебрасывается с ПК на девайс и обратно. В результате счас крупные правки кода на ПК т.к. редактор удобней, а мелочи прямо в девайсе тем же нано т.к. быстрей. Сборка понятно прямо в девайсе. Хранение кода тамже, на SD, но учитывая легкость доступа по сети - это не так и важно, где.
Всё правильно, я на cubietruck ставил, точно так же, без проблем работает. Собственно, для openhab и ставил, прежде всего. Аналогично ставлю для Synology, там тоже АРМ, только качаю дистрибутивы вручную, у них свой линукс. Беру дистрибутивы там же, где и для других камней/ОС: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Вот, например, JDK for ARM:
Linux ARM 32 Hard Float ABI 77.78 MB jdk-8u111-linux-arm32-vfp-hflt.tar.gz
Linux ARM 64 Hard Float ABI 74.73 MB jdk-8u111-linux-arm64-vfp-hflt.tar.gz
Это да, Synology они такие :) У меня DS414 + 4 red терабайтника. У меня к ARM отдельная любовь :)
Второй openhab я ставил, но мне он сначала не сильно понравился тем, что при разных запусках выдает виджеты в разных местах экрана. А вцелом он, на мой взгляд лучше, там больше информации в исходниках можно найти :) Я его даже собирал, правда криво он собирался, кракозябрами выводил информацию.
У меня openhab вообще сейчас в интернет смотрит :) Но урл не буду светить и так в день по несколько IP в бан уходят, за попытку взлома мейлера.
Во втором openhab появились things, плюс все конфиги нужно напрочь переделывать, плюс не всё работает (в т.ч. в режиме совместимости с 1.9). В общем пока бросил, других дел много.
Работает и хорошо, главное, что я многие параметры в т.ч. входное напряжение сети (из UPS), температуры (WUnderground, моя Netatmo) тоже всё валится в mariadb (типа mysql), т.е. я это могу и через год посмотреть ;) Графики смотрю иногда, интересная статистика. Знаю как и когда у меня напряжение сети плавает, в будни и в выходные, утром и в течении дня. Насколько помню, в среднем около 227В.
Хотя всё это планировалось ставить на cubietruck, возможно туда и переедет потом. Время покажет.
То куда данные сливаются это то, что называется persistance? Еще не разбирался
а ups какие? Apc? Видел сегодня настройку в конфиге где можно указать IP, но еще не разбирался что это и зачем. Так то у меня на резервировании стоят три 3000ва apc smart с платами ethernet
это потом, у меня насущное по быстрому сделать адаптивное отопление в доме путем управления сервоприводами на этажных коллекторах. Коллекторы уже давно поставил, дело за малым - открывать закрывать по температуре
networkupstools:refresh=60000
# UPS device name
networkupstools:ups.device=ups
# UPS server hostname (optional)
networkupstools:ups.host=localhost
# UPS server port (optional)
networkupstools:ups.port=3493
# UPS server login (optional)
#networkupstools:ups1.login=
# UPS server pass (optional)
#networkupstools:ups1.pass=
Upsка легко прописывается в конфиги, все параметры примерно такие (зависит от Ups).
Кто настроил openhab? Сайтмап получается настраивать, но там где идет ссылка на определенные в отдельном файле item в логах идет ругать, что нет таких
где то кроме файла .item надо что то описывать, чтобы айтемы заработали?
Если oh1, то достаточно, если oh2, то еще, возможно, things нужно прописывать. На oh2 я только автомат пробовал (paperui), потому не скажу что и как.
UPD: я могу тебе в личку (на ее или коте) дать урл моего oh1, там есть возможность скачать мои конфиги. Не все, конечно, но items, sitemaps, rules точно. Причем живые, а не копии. Плюс можно сразу видеть, как это работает.
Так и не понял почему описания item из моего файла не работают. Делаю тоже самое в файле demo.items - работает
пкреименовал все демо файлы и начал править под себя. С документацией конечно плохо у openhab
Собственно, можно сразу сделать много конфигураций, для каждой свои items, sitemap, rules и т.п. Имена должны совпадать с именем конфигурации. К примеру, demo - это файлы demo.items, demo.rules, demo.sitemap, для work - work.items, work.rules, work.sitemap и т.п. Соответственно при входе можно указать нужуню конфигурацию, типа:
myopenhab.ru:8080/sitemopenhab.app?sitemap=demo
myopenhab.ru:8080/sitemopenhab.app?sitemap=work
будут отображать соответственно demo или work конфигурацию соответственно.
Ну не знаю, доки у них основные вполне нормальные, вот доки на модули - там приходтся по исходникам рыскать, хотя тоже многое описано у них в wiki https://github.com/openhab/openhab/wiki
Можно указать по умолчанию, на какую конфигурацию будет заруливать автоматом при входе на myopenhab.ru:8080.
PS У меня НЕ демо конфигурация, она полностью рабочая (разве что кроме телика), но она на openhab 1.8 или 1.9.
По ups у тебя он через usb? В конфиге у тебя licalhost, это какой то демон униксовый который через usb (com) общается с ибп?
У меня через USB, но, в линуксе есть специальный Network UPS Tools (NUT), которому, я думаю, пофигу, по сетке твой UPS подключен или по USB. Просто попробуй запустить в командной строке:
upsc -l
В общем это общий интерфейс для доступа к информации от любой доступной UPS. После -l можно указать имя сервера и порт. (вот ссылка на мануал http://networkupstools.org/docs/man/upsc.html)
Вот здесь какая то информация есть на эту тему: http://samag.ru/archive/article/471 это я как пример настройки, у меня то всё автоматом подцепилось, кто знает, что там у тебя.
то, что файлы должны одинаково называться мне ясно, именно так и делал. Почему не заработало не понимаю. Причем начал настраивать на 1.8 не работало, потом на 2.0 не заработало, а демо работает и переименованное демо тоже работает
Да, там не без проблем. Я тоже по началу долбился немало, пока въехал. Особенно rules тяжко даются, там преобразований море, чтобы какую то величину получить, жесть какая то. Потом раскопал лямбда функции (всё есть в доках и примерах) и стал использовать их при форматировании текста (я делал так, чтобы в одной строке было несколько разных значений), например:
опять же для иконок (у меня они разные при разных значениях величины, например, влажность, шум), тоже удобно, типа:
/* Собственно функция: */
val org.eclipse.xtext.xbase.lib.Functions$Function2 calcIconIndex = [
org.openhab.core.library.items.NumberItem mainItem,
org.openhab.core.library.items.NumberItem iconItem |
if (mainItem != null && iconItem != null) {
var iconNum = ((mainItem.state as DecimalType) / 10).intValue
iconItem.postUpdate(Math::round(iconNum))
}
]
/* Примеры использования */
rule Netatmo_Indoor_Humidity_Icon
when
Item Netatmo_Indoor_Humidity changed or Item Netatmo_Indoor_Humidity received update or System started
then
calcIconIndex.apply(Netatmo_Indoor_Humidity, Netatmo_Indoor_Humidity_icon)
end
rule Netatmo_Outdoor_Humidity_Icon
when
Item Netatmo_Outdoor_Humidity changed or Item Netatmo_Outdoor_Humidity received update or System started
then
calcIconIndex.apply(Netatmo_Outdoor_Humidity, Netatmo_Outdoor_Humidity_icon)
end
Осваиваю openhab. Поставил вторую версию может и зря, глюки есть. Но в целом здорово. Прикрутил датчики температуры на esp8266. Прекрасно работает
кстати в позновательных целях вывел на страничке openhab uptime, cpu load и температуру cpu. В общем то можно строить графики)
Openhab грузит заметно, если раньше с asterisks было 52-53 градуса, то сейчас местами поднимается почти до 70. С моим активным охлаждением больше надеюсь не поднимется, а 70 это нормально
130 дней кстати life time без перезагрузок. Уже с десяток отключений электричества пережили с ибп
Без ИБП. 12 дней. Как забыл его включеным так и работает )) По стабильности вобще к ним вопросов нет. Чето этот Openhab меня не впечатлил, почитал о нем на хабре - замудро слишком. Может оно конечно, если чел программу сам не напишет - то пусть учит чужую ;)
Читать об openhab.. Да он работает, что о нем читать. Замудренный.. хмм.. Хардкор, что ли, нужен? Да нфига надо. Ну не нравится, и досвидос. Лично меня устраивает. Возможность добавить свои фишки, множество существуюших устройств. Хрен ли еще надо?
специально изменил термин, чтобы не было путаницы с юниксовой uptime ибо там не один показатель, а несколько
но главное все поняли о чем это
сама эта информация выводится через exec binding. Почему то не заработал планин SystemInfo. То ли я что то упустил толи он на апельсинке не работает. Впрочем и exec хорошо работает, пришлось правда вспоминать комманду sed и регулярные выражения с помощью которых извлекаю нужные цифры. Позже сделаю графики и уведомления по перегреву
Без ИБП. 12 дней. Как забыл его включеным так и работает )) По стабильности вобще к ним вопросов нет. Чето этот Openhab меня не впечатлил, почитал о нем на хабре - замудро слишком. Может оно конечно, если чел программу сам не напишет - то пусть учит чужую ;)
у нас за городом электричество отрубают регулярно, ИБП очень полезно с моем случае, тем более это позволяет работать телефонии в доме которая висит на апельсинке пока нет сети
насчет openhab - есть входной барьер, когда читаешь-читаешь и нифига не понимаешь что к чему, но после преодоления барьера дальше все очень понятно и просто. Весьма гибкая и развитая система. Писать свое это изобретать велосипед ИМХО
там ведь не просто управление настраивается, а еще и целая система управлениями событиями. Например легко настроить визуальный контроль работоспособности датчиков температуры и настроить оповещение если они перестали работать. И это буквально несколько строк в конфигах, а не десятки строк кодирования
после настройки интерфейса без дополнительных телодвижений начинает работать мобильный интерфейс
насчет openhab - есть входной барьер, когда читаешь-читаешь и нифига не понимаешь что к чему..
Это и есть заумное. Как правило непонятное, нарочито усложненное описание с свежепридуманой терминологией характерно для посредственных продуктов. Когда все логично в коде это легко описать в доке.
Для себя я в таких случаях пытаюсь оценить что проще, самому писать или изучать. Если нет уверености что изучить и запустит существенно проще, то пишу сам, что сокращает риск нарватся на глюки и архитектурные лажи чужого кода.
axill пишет:
Писать свое это изобретать велосипед ИМХО
Дак форум как раз велоизобретательский ))
axill пишет:
там ведь не просто управление настраивается, а еще и целая система управлениями событиями. Например легко настроить визуальный контроль работоспособности датчиков температуры и настроить оповещение если они перестали работать. И это буквально несколько строк в конфигах, а не десятки строк кодирования
Так а что тех десять строк, 5 минут писать (ну понятно если либа есть, но это эквивалентно вопросу есть ли поддержка датчика в openhab)
axill пишет:
после настройки интерфейса без дополнительных телодвижений начинает работать мобильный интерфейс
Делается веб-интерфейс, HTML+JS. Он и на мобилке и на телевизоре, да хоть на утюге - был бы браузер :) Там я выше ссылку на видео давал, до чего я доигрался при старте.
специально изменил термин, чтобы не было путаницы с юниксовой uptime ибо там не один показатель, а несколько
Вот и не надо было ничего менять. "Аптайм" -- характеристика непрерывной работы чего-либо: оборудования, автоматики, машины, системы. Не обязательно лишь юникса.
"Uptime is a metric that represents the percentage of time that hardware, an IT system or device is successfully operational. It refers to when a system is working, versus downtime, which refers to when a system is not working."
для меня это не термин, а просто английское слово. Имею право так как я любитель
Java под openhab конечно памяти сьедает очень много, а у pi PC всего один гиг. Хватит ли? Планов на развитие openhab громадье.
опять же по умолчанию если правильно понял debian работает без свопинга. Имеет ли смысл делать свопинг на SD карту или будет слишком медленно? Линуксом активно пользовался давно, в эпоху жестких дисков. Как это с флэшками работает не представляю
Гига должно хватить. У меня на Synology DS414 (NAS) - 1Гиг, а он не только openhabом рулит, понятно. У меня примерно 75% RAM свободно, а там еще и Tomcat запущен, Майл сервер и еще много всего, так что хватит.
Кому не нравится openhab, ищите себе подходящее решение, как будто кто-то заставляет.
ага. Глядя на вайфай в нем и цену на ESPхх задаюсь вопросом, скокож стоит чип вайфая, 5 центов?
ИМХО оно потянет на любой контроллер для управления: контроллер теплицы, аквариума, котла и т.д В нем все шикарно. Бонус - удаленное управление через инет и телевизор вместо экрана. А не пойдет опенхаб - ну так ему и хуже, на Си все напищется и летать будет.
Может еще и цена немного опустится, если будет по 5 баксов - остальные (STM, AVR, PIC...) могут закрывать лавочки )) А пока нет прошивки и сильно новый - "будем ждать, сдавай" :)
ПС. Для оранжа приехала платка АЦП ADS1115. Грызу пока.
у вас зуб на openhab)) это зря. Я про него написал для примера, что все таки для более менее серьъезных серверных приложений 256мб сегодня мало, даже для голого apache маловато
но эта крошка и не для них.
Для контроллер теплицы как из пушки по воробьям, имхо. Хотя если делать на UNO + ethernet shield по цене выйдет чуть ли не дороже.
А если пушка стоит как рогатка, то воробьям может и не понравиться)
Но в принципе конечно в контексте "больших" серверов так конечно да. Но мы ж не оракл разворачиваем и на нашу апачу одновременно больше трех не прийдет.
axill пишет:
Для контроллер теплицы как из пушки по воробьям, имхо. Хотя если делать на UNO + ethernet shield по цене выйдет чуть ли не дороже.
А если пушка стоит как рогатка, то воробьям может и не понравиться)
Ну да. Есть психологический барер)) Но такой расклад получается. К нему надо привыкнуть, но впринципе все отлично. Наличие файловой системы, сетевых служб и кучи других плюшек ИМХО в споре UNO + ethernet shield vs OrangPI решающее. Только представте сколько надо написать, чтоб с UNO + ethernet shield выгрузить, к примеру, лог на сервер по сети. А у оранжа - скопировать файл на сетевой ресурс средствами ОС. Пару строк!
В таком случае твой комментарий "Может еще и цена немного опустится, если будет по 5 баксов - остальные (STM, AVR, PIC...) могут закрывать лавочки ))" выглядит странно, ты говоришь, что когда цена снизится, остальные идут лесом. Заметь, главный критерий здесь цена, а не задача у тебя. Ладно, пустое.
Вопрос вот в чем. С линуксом не дружу, так по мелочи.
Сейчас решил прикупить себе одну из этих приблуд, но так денег жалко... потому смотрю на оранж. С чем будет проще? Я про превращение данных девайсов в мини ПК (не андроид) с приличным интерфейсом + возможностью () написания полноэкранных приложений с автозапуском (типа лаунчера в андроид, или режима киоска под windows)..
Какие грабли на пути экономии? Дрова не найду или еще что??
с raspberry проще, она очень давно активно развивается, community больше, проще найти готовый пакет нужной программы и проще найти ответ на свой вопрос
кроме того у апельсинки значительно более нагруженный режим работы платы (по простому говоря - больше жрет и сильнее греется). если это не учитывать то будут проблемы
кроме того много негативных отзывов про стабильность работы. Это может быть связано как с нестабильным качеством так и с криворукостью тех кто написал негативный отзыв (см. выше про нагруженность)
насчет драйверов.... в линуксе это вообще тема почти отсутствует. т.е. по основному железу в ядре уже все есть. по графике в тех сборках что можно скачать тоже все есть, там X сервер. Если конечно вы не собираетесь что то ну очень специфичное использовать
На Си писать и там и там стоит примерно одинаковых усилий. Нюансы зависят от конкретной задачи
Сам полгода эксплуатирую orange pi pc. Без перезагрузки 135 дней. До этого поигрался с raspberry model B, но так как у малинки больше памяти решил дальше двигаться с ней
Зы. старшие версии orange по моему стоят столько же сколько малинка. На алиэкспресс raspberry 3 стоит порядка 2400р
Сейчас всё чуток поменялось. Orange 512 оперативы около 700руб, а 1024 около 1200руб ... + доставка 200 р.
А вот малина от 2500.
Вот и смотрю: 2400 против ~1000.
Специфического ничего, только управление пинами, подключение HDD, USB, UART + свой типа лаунчер (интерфейс свой, и на заставку и т.п.) - чтобы не было ни одной кракозяблы что это ubuntu или чтото вроде того.
Вы сравниваете дешевые апельсинки. По их части ничего не менялось. Я писал про дорогие апельсинки типа pi plus 2, стоит 3700. Она конечно круче чем raspberry 3, но и raspberry 3 круче pi pc с которой вы сравниваете
В юниксе то, что вы называете лунчером называется x11 window manager. Их разных с десяток если не больше, почти все opensource. Чтобы убрать оттуда ненужные надписи достаточно прямыми рученками в конфиги залезть
Вы сравниваете дешевые апельсинки. По их части ничего не менялось. Я писал про дорогие апельсинки типа pi plus 2, стоит 3700. Она конечно круче чем raspberry 3, но и raspberry 3 круче pi pc с которой вы сравниваете
В юниксе то, что вы называете лунчером называется x11 window manager. Их разных с десяток если не больше, почти все opensource. Чтобы убрать оттуда ненужные надписи достаточно прямыми рученками в конфиги залезть
Спасибо. Тот ответ что и искал. В общем можно заказывать апельсинку и городить веб наблюдение.
Похоже в этой теме не хватает исходников.
Исправляю. Проба пера для OrangePi.
Немноко больше чем просто блинк. блинк с поддержкой ТСР сокета. После запуска ждет входящего соединения на порт 5000 и мигает светодиодом на GPIO1. Прием соединений не блокирующий. После соединения принимает с него данные и завершается. Пишет чтото в файл.
А кому поиграть хочется?
http://znoxx.me/2016/07/30/orange-pi-pc-kak-ighrovoi-avtomat-i-miediatsientr/
и что из него делают
http://mysku.ru/blog/aliexpress/45602.html
Мой старт на оранже закончен. Сделал на нем сервер WebSocket-а для управления и контроля GPIO. Выбрал WebSocket потому как хорошая поддержка броузеров, чистый JS без левых либок и лишнего трафика, асинхронный, быстрый. Без проблемы заработало на опере на ПК и мобилке. Правда весь протокол (бинарные данные, длинные пакеты, пинг-понг и.т.д) делать не стал, хотяб потому, что запросто тестировать не получается, писать клиент для тестов не охота. "Склейку" фреймов думал делать но понял что не смогу тоже ни отладить ни проверить, осталась как есть. После того как спрятал протокол в либу даже лаконичный код вышел.
Теперь имею платформу для дистанционного, через инет, управления и контроля чего угодно. Либы - можна, но позже.
Погонял сервер, обнаружил нагрев проца. Если без присоединенного клиента температура 53С и проц загружен порядка 1% и частоте 0,46ГГц, то при длительном соединении прогрелся до 77С при нагрузке около 26% и частоте 1,53ГГц-1,2ГГц. Т.е. загрузили ровно одно ядро. Радиатор небольшой, на липучке. Наблюдал снижение частоты при прогреве свыше 70 градусов с 1,53ГГц до 1,2ГГц, он себя защищает от моей проги )).
Поправил код выше, добавил делей и все вернулось как было - 53С и 1%.
Видево - https://youtu.be/5-Y1tt14xsA
Про старт на оранж - http://arduino.ru/forum/otvlechennye-temy/orange-pi-one-nuzhen-start , там и мой есть.
А вот по 54 посту, в какой среде пишется это с под вайринга? И как начать, подключить HDMI-монитор к расспберри и в установленную систему поставить среду для писания программ под вайринг? И куда потом сохранять скетч в память расспбери или на микро сд? И можно ли с компа писать в какой-то среде, а потом кидать на расспбери? И как удобнее?
Пишу C/С++, без ИДЕ компиляция gcc. Ставился по https://geektimes.ru/post/269444/ развивался дальше по разным источникам, все не припомню. Единственное добавлю - не спешите увеличивать диск до размера флешки (можно увеличить мегабайт на 300 для начала, там всегда легко еще добавить, а обратно - сложно), и вот почему. После каждого удачного этапа установки полезно "сохранится" сбросить образ SD в комп. Пока он 3 гиги с ним быстрей все чем когда он 8-16 гигов.
Вайринг подключается библиотекой. Все необходимое сразу в образе присутствовало (хотя не уверен про вайринг, я сразу не глянул, начал ставить, оно ругается, начал разбиратся - стоит и работает, наверно был изначально). В общем работать можна двумя путями: 1. как с нормальной ОС - подключить клаву+мыш+монитор и в графической убунтовской оболочке делать все 2. как с удаленным сервером - заходим с ПК через putty.exe и в консоле работаем. Я опробывал первый вариант, нормально все включая HDMI, но повседневно работаю вторым, а в нем HDMI не актуален пока и не подключен к монитору, но по идее он включен и пытается выводить запрос пароля. Причем первый вариант пропустить не выйдет! Надо настроить сеть. Сразу устройству задан какойто статический IP, который вероятно подходит только автору сборки :)
Учитывая что нам доступны все линуксовые библиотеки, то сложностей с HDMI особых не должно быть. Разве что HD может неподдержать, пишут что в некоторых сборках это проблема.
Общая технология старта и разработки у меня так (заходим всегда с ПК через putty.exe и в консоле работаем): проверил собираемость примеров варинга, подпаял светодиод, поморгал, попробовал править скетч в родном редакторе нано, получилось но понял что неудобно, настроил убунтовские сетевые службы (самбу вроде ставил) заработали расшары - стало веселей, файл легко перебрасывается с ПК на девайс и обратно. В результате счас крупные правки кода на ПК т.к. редактор удобней, а мелочи прямо в девайсе тем же нано т.к. быстрей. Сборка понятно прямо в девайсе. Хранение кода тамже, на SD, но учитывая легкость доступа по сети - это не так и важно, где.
не могу понять, оракловый JDK можно на апельсинку найти или только OpenJDK?
поставил openhab с openjdk, смнения терзают насчет глюков
сам спросил сам отвечу ) http://orange314.com/Installing_Oracle_Java_SDK_on_Ubuntu_/_Debian
Всё правильно, я на cubietruck ставил, точно так же, без проблем работает. Собственно, для openhab и ставил, прежде всего. Аналогично ставлю для Synology, там тоже АРМ, только качаю дистрибутивы вручную, у них свой линукс. Беру дистрибутивы там же, где и для других камней/ОС: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
synology разный) у меня на интеловском атоме x86
поставил второй опенхаб и теперь заново пытаюсь понять как его настраивать) новые интерфейсы появились
Кто настроил openhab? Сайтмап получается настраивать, но там где идет ссылка на определенные в отдельном файле item в логах идет ругать, что нет таких
где то кроме файла .item надо что то описывать, чтобы айтемы заработали?
И еще может есть у кого ссылка для чайника пошагово как запустить на esp8266 термометр с отсылкой температуры на openhab через mqtt
Это да, Synology они такие :) У меня DS414 + 4 red терабайтника. У меня к ARM отдельная любовь :)
Второй openhab я ставил, но мне он сначала не сильно понравился тем, что при разных запусках выдает виджеты в разных местах экрана. А вцелом он, на мой взгляд лучше, там больше информации в исходниках можно найти :) Я его даже собирал, правда криво он собирался, кракозябрами выводил информацию.
У меня openhab вообще сейчас в интернет смотрит :) Но урл не буду светить и так в день по несколько IP в бан уходят, за попытку взлома мейлера.
Во втором openhab появились things, плюс все конфиги нужно напрочь переделывать, плюс не всё работает (в т.ч. в режиме совместимости с 1.9). В общем пока бросил, других дел много.
Работает и хорошо, главное, что я многие параметры в т.ч. входное напряжение сети (из UPS), температуры (WUnderground, моя Netatmo) тоже всё валится в mariadb (типа mysql), т.е. я это могу и через год посмотреть ;) Графики смотрю иногда, интересная статистика. Знаю как и когда у меня напряжение сети плавает, в будни и в выходные, утром и в течении дня. Насколько помню, в среднем около 227В.
Хотя всё это планировалось ставить на cubietruck, возможно туда и переедет потом. Время покажет.
То куда данные сливаются это то, что называется persistance? Еще не разбирался
а ups какие? Apc? Видел сегодня настройку в конфиге где можно указать IP, но еще не разбирался что это и зачем. Так то у меня на резервировании стоят три 3000ва apc smart с платами ethernet
это потом, у меня насущное по быстрому сделать адаптивное отопление в доме путем управления сервоприводами на этажных коллекторах. Коллекторы уже давно поставил, дело за малым - открывать закрывать по температуре
Ага, persistence. У меня BackUP ES 550G.
items: Number Ups_Input_Voltage "Входное напряжение [%.1f В]" <energy> (Ups) {networkupstools="ups:input.voltage"}
sitemap (с графиком):
.cfg:
Upsка легко прописывается в конфиги, все параметры примерно такие (зависит от Ups).
Кто настроил openhab? Сайтмап получается настраивать, но там где идет ссылка на определенные в отдельном файле item в логах идет ругать, что нет таких
где то кроме файла .item надо что то описывать, чтобы айтемы заработали?
Если oh1, то достаточно, если oh2, то еще, возможно, things нужно прописывать. На oh2 я только автомат пробовал (paperui), потому не скажу что и как.
UPD: я могу тебе в личку (на ее или коте) дать урл моего oh1, там есть возможность скачать мои конфиги. Не все, конечно, но items, sitemaps, rules точно. Причем живые, а не копии. Плюс можно сразу видеть, как это работает.
Спасибо за предложение. Demo у меня работает, делаю свое - ругается
проблвал сначала на 1.8, сейчас в 2.0. Одинаково. Не понимаю. Things не при чем судя по настройке Demo
По ups у тебя он через usb? В конфиге у тебя licalhost, это какой то демон униксовый который через usb (com) общается с ибп?
Так и не понял почему описания item из моего файла не работают. Делаю тоже самое в файле demo.items - работает
пкреименовал все демо файлы и начал править под себя. С документацией конечно плохо у openhab
Так и не понял почему описания item из моего файла не работают. Делаю тоже самое в файле demo.items - работает
пкреименовал все демо файлы и начал править под себя. С документацией конечно плохо у openhab
Собственно, можно сразу сделать много конфигураций, для каждой свои items, sitemap, rules и т.п. Имена должны совпадать с именем конфигурации. К примеру, demo - это файлы demo.items, demo.rules, demo.sitemap, для work - work.items, work.rules, work.sitemap и т.п. Соответственно при входе можно указать нужуню конфигурацию, типа:
myopenhab.ru:8080/sitemopenhab.app?sitemap=demo
myopenhab.ru:8080/sitemopenhab.app?sitemap=work
будут отображать соответственно demo или work конфигурацию соответственно.
Ну не знаю, доки у них основные вполне нормальные, вот доки на модули - там приходтся по исходникам рыскать, хотя тоже многое описано у них в wiki https://github.com/openhab/openhab/wiki
Можно указать по умолчанию, на какую конфигурацию будет заруливать автоматом при входе на myopenhab.ru:8080.
PS У меня НЕ демо конфигурация, она полностью рабочая (разве что кроме телика), но она на openhab 1.8 или 1.9.
По ups у тебя он через usb? В конфиге у тебя licalhost, это какой то демон униксовый который через usb (com) общается с ибп?
У меня через USB, но, в линуксе есть специальный Network UPS Tools (NUT), которому, я думаю, пофигу, по сетке твой UPS подключен или по USB. Просто попробуй запустить в командной строке:
В общем это общий интерфейс для доступа к информации от любой доступной UPS. После -l можно указать имя сервера и порт. (вот ссылка на мануал http://networkupstools.org/docs/man/upsc.html)
Вот здесь какая то информация есть на эту тему: http://samag.ru/archive/article/471 это я как пример настройки, у меня то всё автоматом подцепилось, кто знает, что там у тебя.
Спасибо, проверю вернусь
то, что файлы должны одинаково называться мне ясно, именно так и делал. Почему не заработало не понимаю. Причем начал настраивать на 1.8 не работало, потом на 2.0 не заработало, а демо работает и переименованное демо тоже работает
Да, там не без проблем. Я тоже по началу долбился немало, пока въехал. Особенно rules тяжко даются, там преобразований море, чтобы какую то величину получить, жесть какая то. Потом раскопал лямбда функции (всё есть в доках и примерах) и стал использовать их при форматировании текста (я делал так, чтобы в одной строке было несколько разных значений), например:
опять же для иконок (у меня они разные при разных значениях величины, например, влажность, шум), тоже удобно, типа:
Осваиваю openhab. Поставил вторую версию может и зря, глюки есть. Но в целом здорово. Прикрутил датчики температуры на esp8266. Прекрасно работает
кстати в позновательных целях вывел на страничке openhab uptime, cpu load и температуру cpu. В общем то можно строить графики)
Openhab грузит заметно, если раньше с asterisks было 52-53 градуса, то сейчас местами поднимается почти до 70. С моим активным охлаждением больше надеюсь не поднимется, а 70 это нормально
130 дней кстати life time без перезагрузок. Уже с десяток отключений электричества пережили с ибп
только не "life time", a "uptime".
Без ИБП. 12 дней. Как забыл его включеным так и работает )) По стабильности вобще к ним вопросов нет. Чето этот Openhab меня не впечатлил, почитал о нем на хабре - замудро слишком. Может оно конечно, если чел программу сам не напишет - то пусть учит чужую ;)
Читать об openhab.. Да он работает, что о нем читать. Замудренный.. хмм.. Хардкор, что ли, нужен? Да нфига надо. Ну не нравится, и досвидос. Лично меня устраивает. Возможность добавить свои фишки, множество существуюших устройств. Хрен ли еще надо?
только не "life time", a "uptime".
главному придире сайта привет)
специально изменил термин, чтобы не было путаницы с юниксовой uptime ибо там не один показатель, а несколько
но главное все поняли о чем это
сама эта информация выводится через exec binding. Почему то не заработал планин SystemInfo. То ли я что то упустил толи он на апельсинке не работает. Впрочем и exec хорошо работает, пришлось правда вспоминать комманду sed и регулярные выражения с помощью которых извлекаю нужные цифры. Позже сделаю графики и уведомления по перегреву
Без ИБП. 12 дней. Как забыл его включеным так и работает )) По стабильности вобще к ним вопросов нет. Чето этот Openhab меня не впечатлил, почитал о нем на хабре - замудро слишком. Может оно конечно, если чел программу сам не напишет - то пусть учит чужую ;)
у нас за городом электричество отрубают регулярно, ИБП очень полезно с моем случае, тем более это позволяет работать телефонии в доме которая висит на апельсинке пока нет сети
насчет openhab - есть входной барьер, когда читаешь-читаешь и нифига не понимаешь что к чему, но после преодоления барьера дальше все очень понятно и просто. Весьма гибкая и развитая система. Писать свое это изобретать велосипед ИМХО
там ведь не просто управление настраивается, а еще и целая система управлениями событиями. Например легко настроить визуальный контроль работоспособности датчиков температуры и настроить оповещение если они перестали работать. И это буквально несколько строк в конфигах, а не десятки строк кодирования
после настройки интерфейса без дополнительных телодвижений начинает работать мобильный интерфейс
и масса готовых плагинов
в общем меня устраивает
насчет openhab - есть входной барьер, когда читаешь-читаешь и нифига не понимаешь что к чему..
Для себя я в таких случаях пытаюсь оценить что проще, самому писать или изучать. Если нет уверености что изучить и запустит существенно проще, то пишу сам, что сокращает риск нарватся на глюки и архитектурные лажи чужого кода.
Делается веб-интерфейс, HTML+JS. Он и на мобилке и на телевизоре, да хоть на утюге - был бы браузер :) Там я выше ссылку на видео давал, до чего я доигрался при старте.
Вот и не надо было ничего менять. "Аптайм" -- характеристика непрерывной работы чего-либо: оборудования, автоматики, машины, системы. Не обязательно лишь юникса.
"Uptime is a metric that represents the percentage of time that hardware, an IT system or device is successfully operational. It refers to when a system is working, versus downtime, which refers to when a system is not working."
a5021 ваше занудство восхищает)) в хорошем смысле
для меня это не термин, а просто английское слово. Имею право так как я любитель
Java под openhab конечно памяти сьедает очень много, а у pi PC всего один гиг. Хватит ли? Планов на развитие openhab громадье.
опять же по умолчанию если правильно понял debian работает без свопинга. Имеет ли смысл делать свопинг на SD карту или будет слишком медленно? Линуксом активно пользовался давно, в эпоху жестких дисков. Как это с флэшками работает не представляю
Да ладно вам. Если я придираюсь к такой фигне, значит больше не к чему придираться. :)
памяти сьедает очень много, а у pi PC всего один гиг.
И повернулся же язык на ардуиновском форуме сказать такое ;) Да для задачи домашней автоматизации и 10КБ многовато, вот и проявил себя openhab.
Гига должно хватить. У меня на Synology DS414 (NAS) - 1Гиг, а он не только openhabом рулит, понятно. У меня примерно 75% RAM свободно, а там еще и Tomcat запущен, Майл сервер и еще много всего, так что хватит.
Кому не нравится openhab, ищите себе подходящее решение, как будто кто-то заставляет.
Пожалуй по цене конкурент Меге с езернет-шилдом. В остальном сильно вкусней. https://ru.aliexpress.com/store/product/New-Orange-Pi-Zero-H2-Quad-Core-Open-source-development-board-beyond-Raspberry-Pi/1553371_32760774493.html
Интересн, убунта на него станет? Вроде должна.
Вроде там даже написано про это: "It can run Android 4.4, Ubuntu, Debian"
ух ты, новенькая вкусняшка. Платформа насколько я понял таже, просто ресурсов меньше
явно сильная альтернатива меге и stm32
насколько вижу опционально там 256 или 512 мб памяти, возможен модуль питания POE, можно самому напаять SPI flash
а так же кроме ethernet еще и wifi по умолчанию
еще аналоговое TV OUT, чего нет нигде и может быть плюсом - наприме прицепить недорогой дисплей коих есть вагон разного размера
по моему бомба по соотношению цена/возможности
хотя вот так сходу не могу придумать где он может пригодиться.
видео SIP домофон?
устройства голосового управления?
для сервера типа openhab он слабоват, для задач автоматизации типа выключатель/термостат и т.д. слишком крут
кстати прошивок на официальном сайте нет еще, но наверняка скоро появятся
ага. Глядя на вайфай в нем и цену на ESPхх задаюсь вопросом, скокож стоит чип вайфая, 5 центов?
ИМХО оно потянет на любой контроллер для управления: контроллер теплицы, аквариума, котла и т.д В нем все шикарно. Бонус - удаленное управление через инет и телевизор вместо экрана. А не пойдет опенхаб - ну так ему и хуже, на Си все напищется и летать будет.
Может еще и цена немного опустится, если будет по 5 баксов - остальные (STM, AVR, PIC...) могут закрывать лавочки )) А пока нет прошивки и сильно новый - "будем ждать, сдавай" :)
ПС. Для оранжа приехала платка АЦП ADS1115. Грызу пока.
у вас зуб на openhab)) это зря. Я про него написал для примера, что все таки для более менее серьъезных серверных приложений 256мб сегодня мало, даже для голого apache маловато
но эта крошка и не для них.
Для контроллер теплицы как из пушки по воробьям, имхо. Хотя если делать на UNO + ethernet shield по цене выйдет чуть ли не дороже.
А если пушка стоит как рогатка, то воробьям может и не понравиться)
у вас зуб на openhab)) это зря.
Та какой там зуб!? Просто почитал - не понравилось, о чем и отписался.
все таки для более менее серьъезных серверных приложений 256мб сегодня мало, даже для голого apache маловато
У меня с апачей и сетевыми службами и т.д. выдает
Used: 185.89MB (18.57%) Available: 814.91MB Total: 1000.79MB
Но в принципе конечно в контексте "больших" серверов так конечно да. Но мы ж не оракл разворачиваем и на нашу апачу одновременно больше трех не прийдет.
Для контроллер теплицы как из пушки по воробьям, имхо. Хотя если делать на UNO + ethernet shield по цене выйдет чуть ли не дороже.
А если пушка стоит как рогатка, то воробьям может и не понравиться)
Ну да. Есть психологический барер)) Но такой расклад получается. К нему надо привыкнуть, но впринципе все отлично. Наличие файловой системы, сетевых служб и кучи других плюшек ИМХО в споре UNO + ethernet shield vs OrangPI решающее. Только представте сколько надо написать, чтоб с UNO + ethernet shield выгрузить, к примеру, лог на сервер по сети. А у оранжа - скопировать файл на сетевой ресурс средствами ОС. Пару строк!
Странно сравнивать апельсин с авр, стм и иже с ним. Совершенно разные платформы. Впрочем, как угодно.
Странно сравнивать апельсин с авр, стм и иже с ним. Совершенно разные платформы. Впрочем, как угодно.
Очень даже практичный подход. Появилась некая задача - на чем делать? Тут и начинается сравнение вариантов и выбор.
В таком случае твой комментарий "Может еще и цена немного опустится, если будет по 5 баксов - остальные (STM, AVR, PIC...) могут закрывать лавочки ))" выглядит странно, ты говоришь, что когда цена снизится, остальные идут лесом. Заметь, главный критерий здесь цена, а не задача у тебя. Ладно, пустое.
У кого есть и orange и raspberry и опыт с обоими.
Вопрос вот в чем. С линуксом не дружу, так по мелочи.
Сейчас решил прикупить себе одну из этих приблуд, но так денег жалко... потому смотрю на оранж. С чем будет проще? Я про превращение данных девайсов в мини ПК (не андроид) с приличным интерфейсом + возможностью () написания полноэкранных приложений с автозапуском (типа лаунчера в андроид, или режима киоска под windows)..
Какие грабли на пути экономии? Дрова не найду или еще что??
с raspberry проще, она очень давно активно развивается, community больше, проще найти готовый пакет нужной программы и проще найти ответ на свой вопрос
кроме того у апельсинки значительно более нагруженный режим работы платы (по простому говоря - больше жрет и сильнее греется). если это не учитывать то будут проблемы
кроме того много негативных отзывов про стабильность работы. Это может быть связано как с нестабильным качеством так и с криворукостью тех кто написал негативный отзыв (см. выше про нагруженность)
насчет драйверов.... в линуксе это вообще тема почти отсутствует. т.е. по основному железу в ядре уже все есть. по графике в тех сборках что можно скачать тоже все есть, там X сервер. Если конечно вы не собираетесь что то ну очень специфичное использовать
На Си писать и там и там стоит примерно одинаковых усилий. Нюансы зависят от конкретной задачи
Сам полгода эксплуатирую orange pi pc. Без перезагрузки 135 дней. До этого поигрался с raspberry model B, но так как у малинки больше памяти решил дальше двигаться с ней
Зы. старшие версии orange по моему стоят столько же сколько малинка. На алиэкспресс raspberry 3 стоит порядка 2400р
... .
Сейчас всё чуток поменялось. Orange 512 оперативы около 700руб, а 1024 около 1200руб ... + доставка 200 р.
А вот малина от 2500.
Вот и смотрю: 2400 против ~1000.
Специфического ничего, только управление пинами, подключение HDD, USB, UART + свой типа лаунчер (интерфейс свой, и на заставку и т.п.) - чтобы не было ни одной кракозяблы что это ubuntu или чтото вроде того.
Вы сравниваете дешевые апельсинки. По их части ничего не менялось. Я писал про дорогие апельсинки типа pi plus 2, стоит 3700. Она конечно круче чем raspberry 3, но и raspberry 3 круче pi pc с которой вы сравниваете
В юниксе то, что вы называете лунчером называется x11 window manager. Их разных с десяток если не больше, почти все opensource. Чтобы убрать оттуда ненужные надписи достаточно прямыми рученками в конфиги залезть
Вы сравниваете дешевые апельсинки. По их части ничего не менялось. Я писал про дорогие апельсинки типа pi plus 2, стоит 3700. Она конечно круче чем raspberry 3, но и raspberry 3 круче pi pc с которой вы сравниваете
В юниксе то, что вы называете лунчером называется x11 window manager. Их разных с десяток если не больше, почти все opensource. Чтобы убрать оттуда ненужные надписи достаточно прямыми рученками в конфиги залезть
Тут 2.5 рубля, а вы про 3700...
Где у вас тут я не знаю) а там апельсинка стоит от 700 до 3700р в зависимости от модели и опций
поэтому говорить, что апельсинка дешевле можно лишь с оговорками
Где у вас тут я не знаю) а там апельсинка стоит от 700 до 3700р в зависимости от модели и опций
поэтому говорить, что апельсинка дешевле можно лишь с оговорками
Так я и говорю - 2500 жалко, а вы тут про 3700 речь заводите.