Отговори на тема  [ 15 мнения ] 
RQ: MQTT client-tool(win) & library(emb) -моля, препоръчайте 
Автор Съобщение
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 9:32 pm
Мнения: 710
Мнение RQ: MQTT client-tool(win) & library(emb) -моля, препоръчайте
Каня се да имплементирам MQTT в малък девайс.

1. Моля, пепоръчайте някой простичък клиентски тул (Win), който да :
- създава / публикува някакъв (задаван) контекст;
- да следи за (задаван) контенес.

И, да разширя питането:
2. За сега съм се спрял на mqtt библиотеката от BorgnixSDK: тук https://github.com/Orientsoft/BorgnixSD ... /stm32f40x.
(Май е единствената на C, а не на CPP)
Ще се наложи да се преработи (примерно, друг TCP стек).

Ако имате препоръки, бележки или критики - приемем с благодарност :)

Благодаря!


Сря Окт 18, 2017 4:41 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пон Мар 13, 2006 12:59 pm
Мнения: 3855
Местоположение: Габрово
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Сега ще огледам тая библиотека дето си я избрал, но аз ползвам Eclipse Paho embedded C клиент библиотеката. Много чисто C, много добре написан код (май трябва да спомена че съм и голям фен - ама то се разбира от казаното).
Инструменти за ПЦ колкото искаш - MQTT lens, MQTT box, абе кой каквото му харесва. Там изборът е огромен.
А това че искаш да "публикува" и "следи" изчерпва MQTT протокола, то няма какво друго да се иска :-)
Всъщност е интересно с какъв TCPIP стек ще го ползваш. За пахо-то няма значка, но за другите обикновено има.


Сря Окт 18, 2017 7:25 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4722
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
тази библиотека дето си я паснал си е Paho...
оригинала е тук:
https://github.com/eclipse/paho.mqtt.embedded-c
малко е шибано cycle() с тайм-аута на сокета та трябва да се напасва за тср стека... иначе си бачка ок

има един проблем при бавни марежи(2G)
като публикуваш съобщение докато чакаш аск ако дойде мессаге може да дропне cycle() щото чака едно а идва друго

едит: а PUB за WIN има в москитото

_________________
main[-1u]={1};


Сря Окт 18, 2017 9:14 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пон Мар 13, 2006 12:59 pm
Мнения: 3855
Местоположение: Габрово
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Предполагам че той мисля да ползва това:
https://github.com/Orientsoft/BorgnixSDK-STM32/blob/master/rtt/bsp/stm32f40x/applications/mqtt.c
Иначе защо е постнал тоя линк ...


Чет Окт 19, 2017 8:38 am
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 9:32 pm
Мнения: 710
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Да, така мислех, но ще ползвам оригиналния източник. Още повече, че трябва да стъпя на съществуващо TCP


Чет Окт 19, 2017 9:31 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Ное 21, 2004 10:31 pm
Мнения: 9646
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
днес се изспами реклама на MQX 5
Цитат:
We are happy to announce that MQX RTOS v5 is now available with new product support for Kinetis MCUs and i.MX applications processors from NXP, providing the protocols and utilities ideal for your next great IoT design. New features include:

IPv6 compliant protocols
MQTT and REST protocols for IoT
JSON Parser, cJSON Parser/Framer, lightweight XML Parser/Framer, and zlib Compression/ Decompression utility
View the video to learn more

In addition, we have developed customized resolutions to address two reported vulnerabilities in MQX RTOS that may result in fault or denial of service.


DNS Resolver vulnerability – MQX v4.1 and earlier versions
DHCP client vulnerability – All versions of MQX


предупреждавам, че е за пораснали момченца


Чет Окт 19, 2017 12:24 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Юли 31, 2007 1:55 pm
Мнения: 1792
Местоположение: София
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Как се разви ситуацията с лицензите? Успя ли да се ориентираш?


Чет Окт 19, 2017 3:43 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Ное 21, 2004 10:31 pm
Мнения: 9646
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
ситуацията е като във "вашингтонгското блато" - не ясно с кого да се говори, нито ако ти каже нещо, че е вярно.
всички известни персони от миналото им смениха пощите с куалкомски. ама е нещо като черна дупка - пощите заминават, сървъра отговаря ОК, и нищо не се връща. отделно, доста народ си намери друга работа.

загубеняците (лигъл департамента в куалком се нарича LOST) май още не са стигнали до точно тези малки буквички.
едните не са сигурни още, че са ги купили, другите не са разбрали какво са си купили, и май всички вкупом се чудят каква е сделката.

не мисля, че и специализиран адвокат за $1000 на час може да каже нещо ангажиращо. първия лиценз беше от freescale и беше ясен. после NXP добавиха малко неопределеност, но ентропията във вселената си остана константа, и като че ли нямаше промяна в духа на лиценза. на мен не ми стигат познанията по синонимно осукване на английски и мога само да гледам тавана, евентуално със замислен поглед.

но дори и Оранжевия, докато си пие кафето, да туитне някоя сутрин относно лиценза, това ще отразява само съненото състояние на разфокусираното му его.


Чет Окт 19, 2017 4:19 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 9:32 pm
Мнения: 710
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Първо, благодаря на gicho - винаги е точен :) помогана ми много - оригиналът на Eclipse Paho embedded C е по-лесен за ползване от копието, на което бях изтеглил (а и е по-нов)

За туловете - също благодаря - бях ги мернал, но всички ми изглеждаха еднакви и нямах критерий кои да ползвам.
Така, че ми беше много полезно :).


Днес започнах да интегрирам.


Та питането ми от къде да прочета какво трябва да прави платформено-зависимата част?
Погледах сорса, но не се ориентирам добре, а и не мога да намеря за каквато и да е платформа, за да гледам, като пиша за моята.
За апаратно-зависимата част имам избор между stm32f10x и емулацията му под Win.

МОЛБАТА МИ е да ме насочите от къде да прочета (или да видя примери за други платформи) за тая част:


Цитат:
/* The Platform specific header must define the Network and Timer structures and functions
* which operate on them.
*
typedef struct Network
{
int (*mqttread)(Network*, unsigned char* read_buffer, int, int);
int (*mqttwrite)(Network*, unsigned char* send_buffer, int, int);
} Network;*/

/* The Timer structure must be defined in the platform specific header,
* and have the following functions to operate on it. */
extern void TimerInit(Timer*);
extern char TimerIsExpired(Timer*);
extern void TimerCountdownMS(Timer*, unsigned int);
extern void TimerCountdown(Timer*, unsigned int);
extern int TimerLeftMS(Timer*);


ПП (дано не бъркам в общата постановка :))
За сега съм добавил paho mqtt библиотеката, а като main ползвам от пакета
mqtt_test1.c
mqtt_test1.h
- тестовете минават, но те са само сериализация и десериализация.

КОГАТО ДОБАВЯ
MQTTClient.c
MQTTClient.h
стигам до момента, в който очаква апаратнозависимите части.


Пон Окт 23, 2017 10:54 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 8:19 pm
Мнения: 4410
Местоположение: Stara Zagora
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Аз се мъчих да го проумея как да се интегрира, но нещо не се оправих, видях че има разни пропуски в тази библиотека и се хванах да пиша моя библиотека.
След месец яко копане се получи :( А изглеждаше лесно.


Пон Окт 23, 2017 2:23 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 9:32 pm
Мнения: 710
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Nikola Kirov написа:
Аз се мъчих да го проумея как да се интегрира, но нещо не се оправих, видях че има разни пропуски в тази библиотека и се хванах да пиша моя библиотека.
След месец яко копане се получи :( А изглеждаше лесно.

Т.е. да се отачйвам :).
Ти за каква платформа я прави?
Някакви условия за споделяне? :)


Пон Окт 23, 2017 2:28 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 8:19 pm
Мнения: 4410
Местоположение: Stara Zagora
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Много е интегрирано в моята собствена мултиплатформена среда. Ползва маса функцоналност от нея. Даже въобще не ползвам и стандартните библиотеки на C като пиша за в нея. Сори.
Но ако закопаеш да правиш нещо твое с акъл мога да помагам.


Пон Окт 23, 2017 2:43 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 25, 2004 9:32 pm
Мнения: 710
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Благодаря! :) Така ще бъде :)


Пон Окт 23, 2017 2:59 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пон Мар 13, 2006 12:59 pm
Мнения: 3855
Местоположение: Габрово
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
Кое те притеснява? Трябва да имплементираш за твоят стек/ос/платформа две функционалности. Едната я виждаш с онова Network, другата е за време-свързани неща.
Та тия както се вижда са обявени като extern в тоя код - постни как си ги реализирал при теб - трябва да ги има направени някъде в твоя код. Ако ползваш нещо стандартно като lwip например може да се намери готов транспорта (Network), а това с времето е лесно.
Ако ти е по-удобно можеш да пробваш това:
http://www.martinhubacek.cz/arm/lwip-mqtt-client

Може да е "просветляващо" една малко парче код - "MQTTPacket" примера най-отдолу тук:
https://www.eclipse.org/paho/clients/c/embedded/
Ако си имаш твой транспорт по мрежа, т.е. нещо което може да прави TCP, няма значение с какво API, в подобен стил можеш да закачиш MQTTPacket и твоята мрежова библиотека.

Ако разгледаш примерните портове на MQTTClient, да кажем това за CC3200, също трябва да имаш просветление какво трябва да направиш - за да напишеш еквивалентен NiKB вместо CC3200 вариант (не знам за какво пишеш де - май stm32).
https://github.com/eclipse/paho.mqtt.embedded-c/blob/master/MQTTClient-C/src/cc3200/MQTTCC3200.c


Пон Окт 23, 2017 5:01 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4722
Мнение Re: RQ: MQTT client-tool(win) & library(emb) -моля, препоръч
това е едната интеграция, опростен вариант... за STM32 има много в мрежата "примери"
Код:
typedef uint_32 Timer;

....

void TimerInit(Timer * tmr) {
   *tmr /* uint_32 */ = milis();
}

void TimerInitMS(Timer * tmr, unsigned int timeout) {
   *tmr /* uint_32 */ = milis() /* uint_32 */ + timeout;
}

char TimerIsExpired(Timer * tmr) {
   s64 left = *tmr - milis();
   return (left < 0);
}

uint_32 TimerLeftMS(Timer * tmr) {
   s64 left = *tmr - milis();
   return (left < 0) ? 0 : left;
}

void TimerCountdownMS(Timer * tmr, unsigned int timeout) {
   *tmr =  milis() + timeout;
}

void TimerCountdown(Timer* tmr, unsigned int timeout) {
   *tmr = milis() + (timeout * 1000) ;
}


другата е интеграция/имплементация на socket read/write... "сложната част"
Код:
struct Network{
   int (*mqttread) (Network*, unsigned char*, int, int);
   int (*mqttwrite) (Network*, unsigned char*, int, int);
   void (*disconnect) (Network*);
   Socket socket;
};


и третата е козметика на MQTTClient.c

ето ти пример за СТМ32
https://github.com/AvengerGear/chibios- ... MQTTlwip.c

_________________
main[-1u]={1};


Пон Окт 23, 2017 5:28 pm
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 15 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни