Czołem Mirki. Pytanie odnośnie programowania w #kernel #devicedrivers. Od czego zacząć kontrybuowanie do drzewa? Używam #linux do codziennej pracy jako #programista15k oraz na prywatnym laptopie od lat, znam z grubsza mechanizmy które są używane w kernelu, struktura plików (drivery, subsystemy itp) tez nie jest mi obca, przerobiłem parę kursów (przynajmniej podstawy) z pisania swoich driverów (char, block, network). Nawet w swojej magisterce zmieniałem
Wszystko
Najnowsze
Archiwum
Nie mam już pomysłu co jest nieteges i jakim hasłem wołać wyszukiwarkę :/ Mirko jeszcze nigdy nie zawiodło!
Używam w kodzie SysTick, w którego przerwaniu inkrementuję zmienną uint32. Ta zmienna ma służyć jako flaga wykonania regulacji, a konkretniej ma zastąpić wywoływanie funkcji timerem.
Teoretycznie wszystko działa, zmienna w każdym przerwaniu jest coraz większa, ale w momencie kiedy ma wartość 999 cały program zawiesza się/przestaje inkrementować jakby SysTick przestał działać.
Warunek wykonania funkcji mam na równej
Używam w kodzie SysTick, w którego przerwaniu inkrementuję zmienną uint32. Ta zmienna ma służyć jako flaga wykonania regulacji, a konkretniej ma zastąpić wywoływanie funkcji timerem.
Teoretycznie wszystko działa, zmienna w każdym przerwaniu jest coraz większa, ale w momencie kiedy ma wartość 999 cały program zawiesza się/przestaje inkrementować jakby SysTick przestał działać.
Warunek wykonania funkcji mam na równej
- 3
Mam przykaz na jak najbardziej bare metal
@macgajster: jaki to procek? Co ma bare metal do podłączenia debuggera?
No i z racji, że nie jest to projekt amatorski, a praco-dydaktyczny, to nie mogę go udostępniać, bo będzie przypał :(
To na privku, nie powiem nikomu.
@macgajster: Masz w necie masę przykładów. Uruchom sobie najpierw jakiś z systick i może wyjdzie co jest nie tak
- 2
Co to za mikrokontroler może być? Bym sobie spróbował go "shackować". To jest chiński prostownik 6A.
#embedded #mikrokontrolery
#embedded #mikrokontrolery
źródło: comment_1633719376bFDWp68pqj6bHCJxnfD1RB.jpg
Pobierz@sentoxo: marne szanse ale czasem jak niedokładnie zetrą napisy to pod mikroskopem jak się pobawić kontrastem i jasnością to można coś odczytać
- 1
@sentoxo: jeśli reset pin jest używany, to zwykłe USBISP na nic się zda. Można nadal odblokować funkcję reset przez zmianę fusebitów, ale programator musi wystawić 12V na reset. Akurat z tym nie mam doświadczenia żadnego to za bardzo nie pomogę, ale myślę że dałoby się sprawę załatwić tranzystorkiem i paroma rezystorami, na necie na pewno są jakieś poradniki jak obejść ten problem.
Tylko musisz mieć 100% pewności gdzie jest reset,
Tylko musisz mieć 100% pewności gdzie jest reset,
Mam pytanie odnośnie Cmake'a. Często używacie go pracując w c/c++? . Potrzebuję skonfigurować sobie środowisko pod testy jednostkowe, piszę głównie pod systemy embedded. Cmake podobno jest standardem wśród systemów budowania, jednak jego składnia jest trochę pokręcona wg. mnie. Wypadałoby się go nauczyć w tym celu i na przyszłość czy sobie odpuścić?
#embedded #programowanie #cpp
#embedded #programowanie #cpp
@Ithan: odkąd ogarnąłem cmake nie chce wracac do zwykłego make
a przy okazji można do tego podpiąć czy to FetchContent, czy vcpkg, żeby mieć mniejszy ból głowy z podpinaniem zależności
a przy okazji można do tego podpiąć czy to FetchContent, czy vcpkg, żeby mieć mniejszy ból głowy z podpinaniem zależności
- 6
@Ithan:
Zawsze. Cmake to imho najlepsza rzecz jeśli chodzi o budowę projektów w c++. Na pewno jest dużo lepszy i prostszy niż jakieś autotoolsy dla bezdomnych.
Często używacie go pracując w c/c++? .
Zawsze. Cmake to imho najlepsza rzecz jeśli chodzi o budowę projektów w c++. Na pewno jest dużo lepszy i prostszy niż jakieś autotoolsy dla bezdomnych.
- 2
Witam potrzebuję pomocy i rady.
Pracuję jako junior w systemach w budowanych w bardzo małej firmie. Kiedyś było parę osob więcej lecz się zwolniło. Mam ogromny dylemat.
Od maja jestem sam, robie (nowy) projekt sam. Z programowania technicznej osoby w firmie nie ma jedynie kierownik ( rozmowy zdalne)to z nim współpracuje. Moja praca to w większości dowiedz się jak -> napisz. Czuje sie z tym podle i źle, że nie daję firmie tyle ile
Pracuję jako junior w systemach w budowanych w bardzo małej firmie. Kiedyś było parę osob więcej lecz się zwolniło. Mam ogromny dylemat.
Od maja jestem sam, robie (nowy) projekt sam. Z programowania technicznej osoby w firmie nie ma jedynie kierownik ( rozmowy zdalne)to z nim współpracuje. Moja praca to w większości dowiedz się jak -> napisz. Czuje sie z tym podle i źle, że nie daję firmie tyle ile
@Elnath: Zero wyrzutów. Rób jak najlepiej potrafisz, ucz się przy tym ile tylko można i się niczym nie przejmuj.
- 12
Komentarz usunięty przez autora
#programowanie #iot #nodejs #nodered #embedded #express
Mam dwa procesy napisane w node.js w oparciu o Express (jeden to node-RED) , które muszą wymieniać cyklicznie dane pomiędzy sobą - wartości pomiarów itd. W jaki sposób najlepiej to zrobić pod kątem wydajności? API RESTfulowe, MQTT, websockety, SQLite?
Aplikacja ma chodzić na jakimś systemie embedded, więc wydajność jest tu kluczowa. Samych danych ma
Mam dwa procesy napisane w node.js w oparciu o Express (jeden to node-RED) , które muszą wymieniać cyklicznie dane pomiędzy sobą - wartości pomiarów itd. W jaki sposób najlepiej to zrobić pod kątem wydajności? API RESTfulowe, MQTT, websockety, SQLite?
Aplikacja ma chodzić na jakimś systemie embedded, więc wydajność jest tu kluczowa. Samych danych ma
- 1
@Wegrzynski: najszybszym mechanizmem komunikacji pomiędzy procesami to pamięć dzielona. Tylko kilkaset-kilka tysięcy to zupełnie nie ta skala. Jakbym robił coś takiego sam to pewnie użył bym web socketow, bo są proste i wygodne. Ale liczba możliwych podejść które będą działały jest ogromna
- 114
Komentarz usunięty przez moderatora
@fabek: dobrze, że jest info, że bajt to 8 bitów :)
Mireczki,
Potrzebuje zrozumieć i nauczyć się tworzyć programiki dla systemów czasu rzeczywistego...
Macie jakąś konkretną literaturę? Najlepiej po polsku?
Docelowo celuje w freeRtosa, dokumentacja tam jest, jednak wszystko jest takie „nijakie” i wpierw chce o tym przeczytac jak w podstawówce a dopiero potem ze zrozumieniem ogarnąć resztę. Ktoś coś poleci??
#informatyka #programowanie #rtos #embedded #komputery
Potrzebuje zrozumieć i nauczyć się tworzyć programiki dla systemów czasu rzeczywistego...
Macie jakąś konkretną literaturę? Najlepiej po polsku?
Docelowo celuje w freeRtosa, dokumentacja tam jest, jednak wszystko jest takie „nijakie” i wpierw chce o tym przeczytac jak w podstawówce a dopiero potem ze zrozumieniem ogarnąć resztę. Ktoś coś poleci??
#informatyka #programowanie #rtos #embedded #komputery
@kajak98: Obejrzyj sobie https://www.youtube.com/watch?v=f9jhfiifPOE fajny materiał na taką pierwszą styczność z tematem.W Systemy operacyjne Andrew S. Tanenbauma było też coś wspomniane o rtosach z tego co pamiętam, ale to bardzo obszerna lektura i opowiada o bardzo wielu rzeczach niekoniecznie związanych stricte z rtos - niemniej jednak rzuć okiem na spis treści może coś sobie znajdziesz :)
- 2
Aplikacja pod system czasu rzeczywistego zawsze dziala "razem z" a nie "na systemie" czasu rzeczywistego. Te 2 rzeczy sa projektowanie w ścisłej od siebie zależności. Ja polecam podejść do tekstu analityczne, czyli zrozumieć najpierw jak działa RTOS. Polecam książkę Pana Labrosse https://en.m.wikipedia.org/wiki/Micro-Controller_Operating_Systems
Napisanie prostego schedulera przy pomocy tej książki nie powinno być w problemem. Majac ta wiedzę można faktycznie rozpatrywać środki i sposoby rozwiązywania problemów zależności czasowych i blokad w systemie i
Napisanie prostego schedulera przy pomocy tej książki nie powinno być w problemem. Majac ta wiedzę można faktycznie rozpatrywać środki i sposoby rozwiązywania problemów zależności czasowych i blokad w systemie i
#programowanie #iot #nodejs #nodered #embedded
tl;dr 1. W jaki sposób najlepiej i najwydajniej przekazywać dane pomiędzy Node-RED a aplikacją opartą na Expressie? 2. Lepiej jest odpalić Node.js oraz Node-RED jako dwa osobne Expressy czy jako jeden?
Mirki, kolejny post z cyklu "Robię urządzenie IOT postawione na ARM z Node-Red'em". Dzisiejsze pytania jak powyżej.
We
tl;dr 1. W jaki sposób najlepiej i najwydajniej przekazywać dane pomiędzy Node-RED a aplikacją opartą na Expressie? 2. Lepiej jest odpalić Node.js oraz Node-RED jako dwa osobne Expressy czy jako jeden?
Mirki, kolejny post z cyklu "Robię urządzenie IOT postawione na ARM z Node-Red'em". Dzisiejsze pytania jak powyżej.
We
Cholera, mam okazję zmienić pracę na coś co zawsze chciałem spróbować, ale troszkę się obawiam. Aktualnie pracuję w C++ w powiedzmy takiej warstwie middleware, idzie mi to całkiem dobrze, C++ bardzo lubię i czuję się w nim dość mocny. Niemniej jednak mam możliwość iść do zespołu, który grzebie w C dużo bliżej samego Linuxa, z tego co się dowiedziałem to pracują przy np. driverach zarówno w kernel jak i userpspace, konfigurują Yocto,
- 3
@pepepanpatryk: Porzuciłem C++ na rzecz C w 2017. Raczej nie żałuję. Po prostu zmieniłem firmę i zacząłem pracować w projekcie obartym na hard real time system. Ponieważ C++ może być odrobinę nieprzewidywalny (nie masz raczej zielonego pojęcia kiedy głupi std::vector zdecyduje pobawić się pamięcią pod spodem), C to jedyny sensowny język do takich zastosowań.
Jedna rzecz mnie uderzyła - nie ma takiego "nacierania się" w stylu "użyłem ficzera z C++20
Jedna rzecz mnie uderzyła - nie ma takiego "nacierania się" w stylu "użyłem ficzera z C++20
- 6
@leoha: Absolutnie nie! Fakt, że kod jest napisany w średniowiecznym C i nie używa smart pointerów, lamb, modułów czy co tam jest jeszcze dostępne w C++20 nie oznacza automatycznie, że maintenance jest trudny. Zły kod można napisać w każdym języku, w C++ jest znacznie więcej rzeczy, które można popsuć niż w C.
#it #programowanie #embedded #linux #nodejs #openwrt
Mirki, pomocy. Chciałem sobie postawić Node-RED na SoM-ie Kinkan z OpenWRT na pokładzie jako OS-em, ale nie mogę sobie poradzić z instalacją Node.js.
Myślałem, że zrobię to z repozytorium OpenWRT jak człowiek, ale jak rozumiem byłem w błędzie. Kinkan jest oparty o architekturę MIPS 24Kc, a z tego co widzę na liście to ten pakiet
Mirki, pomocy. Chciałem sobie postawić Node-RED na SoM-ie Kinkan z OpenWRT na pokładzie jako OS-em, ale nie mogę sobie poradzić z instalacją Node.js.
Myślałem, że zrobię to z repozytorium OpenWRT jak człowiek, ale jak rozumiem byłem w błędzie. Kinkan jest oparty o architekturę MIPS 24Kc, a z tego co widzę na liście to ten pakiet
@Wegrzynski: a to:
https://www.friendlyarm.com/index.php?route=product/product&path=69&product_id=282
cos tu widze ze sa jakies paczki na to, choc na troche innego procka:
vhttps://discourse.nodered.org/t/nanopi-m4-node-red-install-difficulties/10048/12
https://www.friendlyarm.com/index.php?route=product/product&path=69&product_id=282
cos tu widze ze sa jakies paczki na to, choc na troche innego procka:
vhttps://discourse.nodered.org/t/nanopi-m4-node-red-install-difficulties/10048/12
- 0
@Mr_Przyjemny: Wydaje się fajne, ale szkoda że nie da się kupić samego SoC-a, tylko od razu trzeba bare board.
- 0
Poleci ktoś jakąś stronkę jakimiś coding questions do C? Tak żeby sobie pokodzić jakieś zadanka przed rozmową kwalifikacyjną.
#programowanie #programista15k #jezykc #embedded i #c++ dla zasięgu
#programowanie #programista15k #jezykc #embedded i #c++ dla zasięgu
Hej, mam kolejne pytanie.
Napisałem swój pierwszy driver w kernel space, działa całkiem ok, natomiast sam driver to nic szczególnego - driver, który wykorzystuje pwm, gpio, przerwania i timery, a dodatkowo udostępnia swój interfejs poprzez sysfs. Stworzyłem też patch, który dodaje device tree overlay. (może wrzucę nawet linka do repo, jak ktoś będzie chciał to zrobi review) Co jest dla mnie istotne - jest to driver, który faktycznie wykorzystuję w moim urządzeniu,
Napisałem swój pierwszy driver w kernel space, działa całkiem ok, natomiast sam driver to nic szczególnego - driver, który wykorzystuje pwm, gpio, przerwania i timery, a dodatkowo udostępnia swój interfejs poprzez sysfs. Stworzyłem też patch, który dodaje device tree overlay. (może wrzucę nawet linka do repo, jak ktoś będzie chciał to zrobi review) Co jest dla mnie istotne - jest to driver, który faktycznie wykorzystuję w moim urządzeniu,
- 0
@pepepanpatryk: a z ciekawości, z jakich materiałów korzystałeś przy pisaniu tego drivera? W sensie chodzi mi o wiedzę.
- 3
Chciałbym za pomocą STM32 sterować bramką mosfeta. Problem jest taki, że stm32 ma na wyjściu 3,3V, a potrzebne jest chyba 12V
Istnieje jakiś sterownik bramki mosfeta do stm32?
#stm32 #elektronika #embedded #pcb
Istnieje jakiś sterownik bramki mosfeta do stm32?
#stm32 #elektronika #embedded #pcb
- 3
@intires98: oczywiście że istnieją specjalne drivery, pytanie z jaką częstotliwością chcesz sterować mosfetem, jeśli niewielka, to dwa rezystory + tranzystorek (np. bc547 ( ͡° ͜ʖ ͡°)) powinny załatwić sprawę.
są jakieś zasilacze 12V separowane galwanicznie?
https://pl.aliexpress.com/item/4000898436269.html?algo_exp_id=098b2c96-4bb8-4fff-af4d-1bf5f392f299-14&pdp_ext_f=%7B%22sku_id%22%3A%2210000010469385491%22%7D
generalnie chińczycy oznaczają to B0512S gdzie 05 to input a 12output i robią dla różnych napięć np. B0505
@intires98:
źródło: comment_1629492758lOfFWxtOaXk4JOeFrUGmSm.jpg
Pobierz- 1
- 0
@Rosly: Dzięki :) Myślę, że coś znajdę dla siebie :)
Cześć mam trochę pytań odnośnie Yocto. Coś tam już sobie jakiś czas temu pokonfigurowałem, wszystko działa tak jak chcę, ale teraz chciałbym popytać o jakieś dobre praktyki w Yocto. W pytanich głównie przewiną się rzeczy związane z tym gdzie co należy dodać. Idealnie wszystkie opcje konfiguracyjne typu IMAGEINSTALL chciałbym wywalić z local.conf i wrzucić w miejsca bardziej odpowiednie.
1) Mam kernel driver, który służy do kontroli sprzętu podpietego do boarda - umieściłem
1) Mam kernel driver, który służy do kontroli sprzętu podpietego do boarda - umieściłem
- 2
@pepepanpatryk: Witaj mireczku. Siedzę już trochę w Yocto. Odpowiem na Twoje pytania pisząc jak ja robię i dlaczego tak - co nie oznacza że jestem wyrocznią.
Zrobiłem i udostępniłem swoją podstawową warstwę dla płytek SOMLabs i na jej podstawie będę pisał
https://github.com/QB4-dev/meta-somlabs-bsp
Zrobiłem i udostępniłem swoją podstawową warstwę dla płytek SOMLabs i na jej podstawie będę pisał
https://github.com/QB4-dev/meta-somlabs-bsp
1) Mam kernel driver, który służy do kontroli sprzętu podpietego do boarda - umieściłem go w meta-custom-bsp/recipes-kernel/custom-module. Czy to jest
- 1
@QBA__: Dzięki mireczku, powiem szczerze,że po cichu liczyłem na Twoją odpowiedź bo już kiedyś mi pomagałeś ( ͡° ͜ʖ ͡°) Dzieki za wszystkie odpowiedzi, póki co nie mam więcej pytań, pojawią się jak zacznę wdrażać to o co tutaj zapytałem :)
- 1
Mirki z #embedded, mam dzisiaj pytanie bardziej takie dla hobbystów, którzy coś sobie grzebią w domu - jak tworzycie sobie obudowy dla waszych urządzeń? Druk 3D, czy może kupujecie gotowce np. od Kradex-a i je przerabiacie? Czym to robicie? Czym np. dobrze jest zrobić otwór w plastiku aby to miało w miarę jakiś sensowny kształt? Jak umieszczacie płytki w pudełkach tak aby trzymały się one stabilnie? Czy do takiej
Jak umieszczacie płytki w pudełkach tak aby trzymały się one stabilnie?
@pepepanpatryk: projektuje się PCB pod wybraną obudowę, która powinna być dostosowana do przykręcania płytki
@pepepanpatryk: jak kupujesz gotowa obudowę to robisz sobie otwory w pcb tak żeby pasowało do płytki. Jak masz drukarkę 3d to w drugą stronę ( ͡° ͜ʖ ͡°)
#programowanie #javascript #nodejs #embedded #linux
Planuję zrobić urządzenie, które na SoC (typu Raspberry Pi albo raczej tańsze/słabsze) z jakimś Linuxem na pokładzie będzie miało postawiony web server z stronką WWW, na której będą wizualizowane i gromadzone dane typu wskazania jakiś pomiarów, wykresy itd. - i będzie całkiem sporo tego.
O ile sprawy niskopoziomowe ogarniam jako tako, to programowanie webowe w ogóle i będę
Planuję zrobić urządzenie, które na SoC (typu Raspberry Pi albo raczej tańsze/słabsze) z jakimś Linuxem na pokładzie będzie miało postawiony web server z stronką WWW, na której będą wizualizowane i gromadzone dane typu wskazania jakiś pomiarów, wykresy itd. - i będzie całkiem sporo tego.
O ile sprawy niskopoziomowe ogarniam jako tako, to programowanie webowe w ogóle i będę
- 2
@Wegrzynski: możesz użyć arduino i johny-five i po prostu postawić restowe api w node/express, frontend obojętnie w czym, sam też miałem taki pomysł smart mieszkania ( ͡° ͜ʖ ͡°)
@Wegrzynski: a może po prostu grafana do wyświetlania wykresów? W grafanie da się wybrać różne data source a wykresy mogą być praktycznie dowolne

























Nie precyzujesz tez jakiś informacji potrzebujesz. Właściwie to niewiadomo o co pytasz. To troche przerażające jak mam być szczery.
Czy chodzi o unit testy kodu? W jakim języku?
Czy może o testy integracyjne/systemowe z poziomu interfejsu urządzenia? Jaki to interfejs?
Blackbox czy whitebox?