Raspberry pi 4 QT

0

Witam czy ktoś ma pojęcie jak działa qt framework z Raspberry pi 4 ?
Czy jest możliwość aby na windows zrobic program i otworzyc go na Raspbian Lite ??

1

Mam na RPi 4 zainstalowany Qt Creator i normalnie wszystko działa.

0

Tak tylko ja mam wersję tylko z konsolową żeby zbytnio nie obciążać maliny i żeby uruchomienie nie trwało zbyt długo. Zastanawialem sie nad tym aby po prostu uruchomic plik exe na respianie ale to nie wypali.

0

Ale zawsze możesz odpalić qmake z konsoli. Nie bawiłbym się w cross-compilation, za dużo z tym kombinowania.
Poza tym możesz mieć drugą kartę SD z pełnym systemem - RPi 4 to nie RPi 1, zupełnie inna klasa jeśli chodzi o wydajność.

0

A jak wygląda w twoim przypadku czas od włączenia zasilania do czasu pełnego uruchomienia programu ?

1

Strzelałbym kilka sekund, max kilkanaście. Ale potestuj.

0

To dość szybko biorąc pod uwage że u mnie w wersji lite sam rozruch trwa 20 sekund

0

Nie mam RPI4, ale mam RPI3 i system startuje szybko, o ile masz odpowiednio prędką kartę SD.

0

Pytanie chyba jest o cross compiling.

0

U mnie pełny system wstaje 67 sekund od włączenia zasilania. Byłoby kilka sekund mniej gdyby karta miała wgrany obraz Raspbiana bezpośrednio, bez bootloadera NOOBS który opóźnia bootowanie. Pierwsze odpalenie Qt Creatora trwa około 10 sekund. Drugie 5 s.

Jest to RPi 4 wersja biedna czyli 2 GB RAM.

Fakt że to nie jest 20 s i pewnie dałoby się poprawić (szybsza karta, wywalenie NOOBS) ale chyba jeszcze nie dramat. Zresztą do celów deweloperskich przecież nikt nie będzie resetował malinki przy każdym uruchomieniu programu?

Pytanie chyba jest o cross compiling.

Moim zdaniem szkoda nerwów. To już pełnoprawny komp, nawet jeśli jeszcze nie rakieta. Wystarczy nie odpalać w tle YouTube'a w FullHD:)

0

Na dobrą sprawę ja chciałem zrobić cos w stylu centrum multimedialnego do samochodu. może źle się za to zabieram. Może macie lepsze pomysły jak zrealizować ten projekt. A Raspberry bedzie musiał byc w takim przypadku włączany i wyłączany dość często.

2

Ok, ze stoperem w ręku mój raspian wstaje 28 sekund od cold boota. Jeśli odpalasz bez menadżera okien bezpośrednio do programu w Qt to zawsze coś się powinno udać urwać.

Cross kompilację bym odpuścił, ale developowałbym na innej maszynie linuksowej/windowsowej, a na raspberrym tylko budował niektóre wersje.

0

Mam Arduino ktorym zbieram informacje CAN z auta i zamierzam je przesyłac do Raspberry. Raspberry powienno mieć gui i wlaczac sie wmiare szybko ale nie mam pomyslu jak to zrobic i czym.

probowalem juz jako gui zrobic to w html i css i nawet to wyszlo tylko mysle ze sa o wiele lepsze sposoby.

1
Dominik Kordylewicz napisał(a):

Na dobrą sprawę ja chciałem zrobić cos w stylu centrum multimedialnego do samochodu. może źle się za to zabieram. Może macie lepsze pomysły jak zrealizować ten projekt. A Raspberry bedzie musiał byc w takim przypadku włączany i wyłączany dość często.

Chyba się nie rozumiemy.
Rozróżnij działanie programu "na produkcji" - niech sobie będzie na okrojonym Raspbianie żeby wstawał jak najszybciej - od deweloperki, którą można sobie spokojnie robić na pełnym Raspbianie by nie mieć żadnych problemów z cross-kompilacją.

1

Jeśli chodzi o cross-kompilację, to tutaj widziałbym zastosowanie PyQt. Na mailnę wrzucasz same skrypty i działają bez kompilowania, tylko PyQt musi być zainstalowane.

0

Czyli rozumiem że ten sposob z QT jest dobry dla mojego projektu

0

slyszalem ze python jest o wiele wolniejsze od c++

1

W automotive używa się qt z qml. Bo qml pozwala na ładne interfejsy.
Pythona bym sobie darował, nie lubię w tym pisać razem z qt.

probowalem juz jako gui zrobic to w html i css i nawet to wyszlo tylko mysle ze sa o wiele lepsze sposoby.

A to dlaczego?
Całkiem dobrze kombinujesz.

Ale jak chcesz to robić żeby maksymalnie się szybko uruchamiało, pobierało mało prądu, użyj np. https://botland.com.pl/stm32-discovery/4715-stm32f746g-disco-discovery-stm32f746ng-cortex-m7-ekran-dotykowy-pojemnosciowy-43-.html?gclid=Cj0KCQiAv6yCBhCLARIsABqJTjbffv89_AFW1BHrF4-aF2Lj5luMNGfcIpzWMqndEai7pe-CBxQN7UgaAncWEALw_wcB

czy ewentualnie spróbuj jakiś 7 calowy lcd dla stm32.

Jak ja bym to zrobił?
Zastanowił się. Jak ma to być duży wyświetlacz z milionem opcji to raczej coś w rodzaju rpi + lcd. Technologia?
Pójście w html/css to nie głupia sprawa. Ewentualnie qml. I to tyle.

Jak to ma być coś prostego to stm32 + lcd i dzierganie samemu albo po prostu touchgfx od stm.

slyszalem ze python jest o wiele wolniejsze od c++

Nie wysyłasz tego samochodu na orbitę ;)

0

Pytanie czy mogę obługiwać np bluetooth za pomoca node.js lub javascript (np. ustawic bluetooth jako slave), lub jakkolwiek komunkowac sie z tym za pomoca c++.

0
Dominik Kordylewicz napisał(a):

slyszalem ze python jest o wiele wolniejsze od c++

Zależy ile pythonowego kodu będziesz wykonywać...

Python w dużej mierze będzie tylko pośredniczył w obsłudze biblioteki Qt. Jeśli zamierzasz pisać jakieś złożone obliczeniowo algorytmy, to pewnie odczujesz różnicę. Ale jeśli Twój program robi tylko x+y i robisz do tego GUI, to Python z Qt powinien wystarczyć.

0

Jestem na bieżąco z cross kompilacją to poczułem się wywołany do tablicy ;)
Budowanie QT pod ARMHF polecam robić z Debiana multilib z doinstalowanym cross GCC oraz libkami dla ARMHF właśnie. Może to prowadzić do dependency hell, na 100% boosta pod ARM nie da się zainstalować z paczek PC.

Niemniej, robiłem inne próby jeszcze, wszystkie podejścia kończyły się porażką na skutek problemów z bibliotekami, samodzielnie budowanym GCC itd.
Na jakimś blogu widziałem jeszcze, że ktoś próbował z QEMU i da się, ale imho to hardkor.
Skrypty do budowania cross-sdk są tu: https://github.com/Truelite
Teoretycznie są pod konkretną wersję QT, ale ja zbudowałem po lekkich przeróbkach inną, raczej nie powinno być dużych różnic.
Cross GDB tylko trzeba sobie doinstalować ze źródeł. W QT creator deployment via SCP działa ok, zdalny debug też, pamiętaj tylko o gdbserverze na Malinie.

Opcja druga: buildroot/yocto.
Kombinuję z tym drugim, udało mi się metodą partyzancką (bo za dobrze tej platformy nie znam) odpalić appkę w konsoli w oparciu o directfb, działa ok. Boot 20 sekund vs 70 robi imho ogromną różnicę. Pamiętaj tylko, że pierwszy build to puszczasz rano i idziesz do pracy. Jak wrócisz po 8h to może się skończy. No i zarezerwuj sporo miejsca na dysku ;) Tzn. koloryzuję, ale kilka godzin serio może on potrwać. Potem już przyrostowo leci, tyle dobrego.

A, no i na Xach nie działa QT virtual keyboard, to jest jakiś problem z akceleracją. Da się to chyba obejść dodając swoje pole w aplikacji na tę klawiaturę zamiast używać mechanizmu „wysuwania” jej z brzegu ekranu.

Z directfb już jest ok. Więcej grzechów nie pamiętam.

1 użytkowników online, w tym zalogowanych: 0, gości: 1