LINUX.ORG.RU

Управлять WiFi connman из Qt

 , ,


0

1

Всем Привет,

Имею примерно следующее: прибор в котором будет работать собранная на Buildroot Линукс система. В приборе есть Lan и WLan модуль. Также имеется Qt5.12 и connman. Для начала хотелось бы сделать что-то стандартное: просканировать какие WiFi точки видны, вывести качество сигнала (SignalStrength) и содиниться с ними по паролю.
Так вот, смотрю, что с connman можно общаться через DBus. Но не хочу изобретать велосипед. Нашёл в Qt QNetworkConfigurationManager, который, похоже, использует свой connman bearer плагин, но с ним могу только просканировать и найти точки доступа. И вот не найду, как можно подключиться к точке по паролю. Такое вообще возможно? Нашёл, что в Qt5.6 был QWiFiConfiguration, но его похоже убрали.

Заранее благодарен за любые советы,
Velik


будет работать собранная на Buildroot Линукс система

вопрос не совсем по теме, но: зачем билдрутом собирать, а не взять готовый дистр ?

x905 ★★★★★
()
Ответ на: комментарий от x905

вопрос не совсем по теме, но: зачем билдрутом собирать, а не взять готовый дистр ?

А зачем? С билдрутом соберётся только то, что надо. Без ненужных излишеств

velikS
() автор топика
Ответ на: комментарий от aol

Да понятно. только если б ещё был QWifiConfiguration (как в 5.6) то всё б выглядело как тут:
https://qtdeveloperdays.blogspot.com/2015/02/

QWifiConfiguration m_config;
m_config.setSsid("bus-station-wifi");
m_config.setPassphrase("mypassword");
m_config.setProtocol("WPA2");

А так приходится всё самому. Ну или я что-то пропустил...

velikS
() автор топика
Ответ на: комментарий от velikS

А зачем?

чтобы не собирать самому и иметь почти настроенную готовою систему
например ubuntu server не содержит много излишеств, но и полезные пакеты есть

а еще вопрос можно ? )
как пользователь сможет сам заменить собранные билдрутом либы qt на свои сборки qt ?

x905 ★★★★★
()
Ответ на: комментарий от x905

как пользователь сможет сам заменить собранные билдрутом либы qt на свои сборки qt ?

Я конечно больше с OpenEmbedded, но и BuildRoot наверняка достаточно гибок, чтобы создать derived-пакет и прописать в нем пользовательские патчи. В OE хорошо как раз с этим, можно сделать свою копию пакета, добавив в него лишь пути до патчей созданных пользователем, а остальное оно соберет сообразно базовому пакету.

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от x905

как пользователь сможет сам заменить собранные билдрутом либы qt на свои сборки qt ?

Такое нам на надо. Совсем. Мы тут для медицинского прибора разрабатываем. На выходе получаем файл, в котором ядро и rootfs. если нужен SW update, то перешивается целиком всё. Причём SW update возможен только в сервисном центре.

velikS
() автор топика
Ответ на: комментарий от aol

Плюсирую за QtDBus, вроде всякие NM и connmann как раз таки имеют D-Bus интерфейс. Всё что нужно для счастья ТС это тупо Qt D-Bus модуль. Давно я с этим модулем работал, но когда работал - было довольно просто.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Давно я с этим модулем работал, но когда работал - было довольно просто.

Примерно то же самое и у меня. Но пока пробую запустить libconnman-qt. libconnman-qt как раз сидит на DBus. не получится - возьму из этой библиотеки нужные мне куски...

velikS
() автор топика
Последнее исправление: velikS (всего исправлений: 1)

Через D-Bus, однозначно и асинхронно. Там ничего нет сложного - смотри доки по АПИ от connman и вперед.

kuzulis ★★
()
Ответ на: комментарий от anonymous

напишите правила сборки для buildroot по примеру, там есть qmake

Да. Так точно будет проще и правильней

velikS
() автор топика
Ответ на: комментарий от velikS

Такое нам на надо. Совсем.

нарушаете, гражданин, lgpl ? )

x905 ★★★★★
()
Ответ на: комментарий от FreakMurderer

нарушаете, гражданин, lgpl ? )

Ну как бы не усложняем себе жЫзнь )))

velikS
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.