Zanim...
Zanim...



Polskie Forum FPV

Forum modelarzy i pilotów FPV
Dzisiaj jest środa 24 lip 2019, 08:05


Strefa czasowa UTC+1godz.




Nowy temat Odpowiedz w temacie  [ Posty: 22 ]  Przejdź na stronę 1, 2  Następna
Autor Wiadomość
Post: niedziela 22 cze 2014, 23:09 
Offline
Awatar użytkownika

Rejestracja: czwartek 20 wrz 2012, 22:38
Posty: 244
Lokalizacja: Wrocław
Dawno temu jeszcze na forum Alexa powstała idea zrobienia nadajnika z podstawowych 'bloczków' typu dodawanie, mnożenie itp. Czyli definiujemy sobie dowolnie co się dzieje pomiędzy drązkami a tym co koder wygeneruje na wyjściu ppm.

Tak sobie powoli dłubię ten projekt od 2009, mniej więcej od roku jest już używalny (ale raczej jako wersja alfa).
Wersja alfa = działa stabilnie, ale pewne zmiany nie są dostępne jeszcze z menu, a tylko przy pomocy kompilatora :-)
Nadszedł czas się nim pochwalić:-)

Tak wygląda przerobiony nadajnik (jako moduł nadawczy jest FrSky DHT):
Obrazek

Tak działa (uwaga: nudne :-) ):


Strona projektu (w budowie, chwilowo tylko po angielsku): https://majek.sh/lcd88
Tu trochę po polsku jak to działa: https://majek.sh/pl/rc-diy-transmitter/

Kod żródłowy (GPL): https://github.com/majekw/lcd88

Ponieważ na dniach będę przerabiał kolejny nadajnik, to pewnie uda mi się tu powrzucać jak to zrobić ktok po kroku. Mam nadzieję, że nikt mi czerwonego krawata nie będzie tu kręcił za ewentualny post pod postem :-)

Koszt kodera jest śmiesznie niski, bo powinien się zmieścić w $10 kupując gołe moduły u Chińczyków. Procesor i wyświetlacz też zostały wybrane, żeby były tanie i bezproblemowo dostępne. Stąd Arduino Pro Mini ($3), wyświetlacz graficzny 1.8" ($5) i ewentualnie konwerter napięć ($2). Niestety klawiaturę trzeba sobie już samemu sklecić, bo nie jest standardowa (6 mikroprzełączników, 6 diod 1n4148, 3 oporniki 2.2k).

I może z dyskusji uda się jakiś faq sklecić (o ile będą zainteresowani) :-)


Ostatnio zmieniony wtorek 22 maja 2018, 16:09 przez majek, łącznie zmieniany 4 razy

Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela 22 cze 2014, 23:18 
Offline
Awatar użytkownika

Rejestracja: poniedziałek 01 lut 2010, 11:29
Posty: 12238
Lokalizacja: Mikoszewo
No, no - zawsze chciałem upchnąć bebechy aparatury do obudowy po game padzie żeby to małe i kompaktowe było. Wygląda na to że doczekałem się bebechów właściwych gabarytów.
:mrgreen: :mrgreen:

_________________
Ten wredny...


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela 22 cze 2014, 23:32 
Offline
Awatar użytkownika

Rejestracja: czwartek 20 wrz 2012, 22:38
Posty: 244
Lokalizacja: Wrocław
Jeżeli zmieścisz tam ten wyświetlacz i sam sobie jakoś wydziergasz płytkę pod klawiaturę, żeby się zmieściło, to powinno się udać. Chociaż sam wyświetlacz może być trochę za duży na pada.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 00:07 
Offline
Awatar użytkownika

Rejestracja: piątek 23 gru 2011, 13:08
Posty: 989
Lokalizacja: Warszawa
A ja trochę w druga stronę zapytam ;-)
Da się jakiś sporo większy wyświetlacz zaadoptować ?
Może bym w końcu do walizy wetknął i RC :-P

_________________
Mirek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 00:16 
Offline
Awatar użytkownika

Rejestracja: czwartek 20 wrz 2012, 22:38
Posty: 244
Lokalizacja: Wrocław
Z tym większym może być problem. Na poczcie czeka na mnie już 2.2" (tylko driver trzeba będzie napisać), ale podejrzewam, że wolałbyś jeszcze większy :-P

Problemy z dużym wyświetlaczem są 2:
- duże wyświetlacze nie istnieją z interfejsem SPI. Interfejs równoległy = inny (droższy) procek mający więcej nóżek = poza celem projektu
- im większa rozdzielczość, tym wolniejsze jest przerysowanie całego wyświetlacza. Obecnie jest to widoczne przy 160x128, przy trochę większym 320x200 przerysowanie będzie trwało 4 razy dłużej i może być wkurzające :-?


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 00:25 
Offline
Awatar użytkownika

Rejestracja: piątek 23 gru 2011, 13:08
Posty: 989
Lokalizacja: Warszawa
majek pisze:
Z tym większym może być problem. Na poczcie czeka na mnie już 2.2" (tylko driver trzeba będzie napisać), ale podejrzewam, że wolałbyś jeszcze większy :-P

Dobrze myślisz :-)
Był moment kilka miesięcy temu że już chciałem wybebeszyć moją Aurorę ale mnie koledzy powstrzymali :lol:
Cytuj:
Problemy z dużym wyświetlaczem są 2:
- duże wyświetlacze nie istnieją z interfejsem SPI. Interfejs równoległy = inny (droższy) procek mający więcej nóżek = poza celem projektu
- im większa rozdzielczość, tym wolniejsze jest przerysowanie całego wyświetlacza. Obecnie jest to widoczne przy 160x128, przy trochę większym 320x200 przerysowanie będzie trwało 4 razy dłużej i może być wkurzające :-?

Mniej więcej rozumiem ;-)
Chyba jednak pozostaje mi kupić jakąś używaną Aurorę i pozbawić ją obudowy.
Dzięki

_________________
Mirek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 01:34 
Offline
Awatar użytkownika

Rejestracja: niedziela 07 lut 2010, 15:24
Posty: 9186
Lokalizacja: Bytom
majek pisze:
przerysowanie będzie trwało 4 razy dłużej i może być wkurzające :-?
Tak żeś się napocił pisząc to w ASM, więc z przerysowywaniem nie powinno być problemu, jeśli tylko będziesz przerysowywał to co się aktualnie zmieniło a nie cały obszar LCD. A że przejście z jednego do innego ekranu w menu będzie trwało 100ms... kogo to... to nie problem.

_________________
Pzdr. -----MIŚ-----


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 08:26 
Offline
Awatar użytkownika

Rejestracja: sobota 08 maja 2010, 09:43
Posty: 3958
Lokalizacja: Gliwice/Katowice
Zadam może i głupie pytanie na co więcej to będzie pozwalać niż er9x?

_________________
samolot max 4579/1293
coper max 1729(na 5.8)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 08:34 
Offline
Awatar użytkownika

Rejestracja: czwartek 20 wrz 2012, 22:38
Posty: 244
Lokalizacja: Wrocław
miś, dokładnie tak robię - czyszczę całość lub przerysowuję tylko jak to niezbędne. Podział ekranu na pasek statusu i resztę też ogranicza trochę obszar przy całkowitym odświeżeniu którejś części.

Ale pamiętaj, że oprócz wyczyszczenia ekranu trzeba później coś na nim narysować, więc czas robi się x2. O ile przy 160x128 nie jest to wielki problem, to te 0.5s dla 320x240 będzie już odczuwalne. Jeżeli byłyby większe rozdzielczości, to już byłoby bardzo wolno.

'Na szczęście' największe fizycznie wyświetlacze z spi jakie są dostępne tanio i bez problemów, to tylko 2.2". Do niedawna w tym rozmiarze były tylko 320x240, ale to się zmieniło i pojawiły się całkiem miłe 176x220, które sa tylko 2x większe pikselowo i na dodatek mają konwerter stanów/napięć na płytce.

Czy tak czy siak, to obydwa 2.2" mam i będę dopisywał ich obsługę :-)
Jak się ma te wyświetlacze na biurku, to korci, żeby to zrobić teraz, ale na razie są ważniejsze rzeczy do dopisania. A obsługa drastycznie innej rozdzielczości wymaga jednak przejrzenia większości kodu, żeby wynieść cały layout 'na zewnątrz'. O ile tekst nie jest problemem, bo się inny font wrzuci i rozdzielczość zostanie zachowana, to rysunki już trzeba będzie miejscami przepisać. To co jest w najbliższej perspektywnie do zrobienia można zobaczyć tu: https://github.com/majekw/lcd88/issues

Co do 'pocenia' się w asm, to na atmele zawsze tak pisałem :-) Poza tym była to pewnego rodzaju chęć pokazania, że da sie zrobić takie coś i na dodatek zmieścić się w 8KB :mrgreen:
Ostatnio robiłem podejścia, żeby zrobić z tego mix asm+C, ale to grubsza robota. Chciaż na obecnym etapie mogłaby byc pomocna, za to za chwilę przestałbym się mieścić nawet w tych 32KB :-P

Przy okazji dzięki Twojej uwadze zajrzałem w fukncję wysyłająca po spi i lekko ją 'podrasowałem'/naprawiłem :-)


pma_ pisze:
Zadam może i głupie pytanie na co więcej to będzie pozwalać niż er9x?

Na wszystko :-)
Nie jesteś ograniczony mikserami i ilością stopni ich zagnieżdżenia - można napisać dowolną funkcję definiującą co ma być i jak przeliczone. Zobacz opis 'bloczków' tutaj: https://majek.sh/pl/rc-diy-transmitter/
Nie żeby to był ideał :-) Swoje ograniczenia też będzie miał (liczba bloczków, modeli, wykorzystanie WSZYSTKICH pinów procka bez zapasu na coś nowego itp.)

Jeszcze jedna różnica do er9x - cena i dostępność hardware. Jeżeli nie masz fizycznie 9x, to sens dziergania płytki na starej Atmega64 i wyświetlaczu mono jest kosztowo wątpliwy w porównaniu do lcd88 i na dodatek trudny dla kogoś, kto nie robił wcześniej płytek. Przy lcd88 jedyną rzeczą jaką sam musisz zrobić, to klawiatura. Precyzji to nie wymaga, a jak się uprzeć, to i na pająka można to zrobić. Cała reszta jest dostępna jako gotowe moduły.

No i jeszcze jedna różnica: er9x działa dla przeciętnego zjadacza chleba, lcd88 jeszcze nie doszedł do takiego etapu, więc tu jest minus po mojej stronie.

Czyli jak już masz 9x, to wgraj er9x. Jeżeli i tak wywalasz wszystkie bebechy, to można zastanowić się nad lcd88.


Ostatnio zmieniony wtorek 22 maja 2018, 16:09 przez majek, łącznie zmieniany 1 raz

Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 15:27 
Offline
Awatar użytkownika

Rejestracja: sobota 08 maja 2010, 09:43
Posty: 3958
Lokalizacja: Gliwice/Katowice
Wiesz, jakiś czas temu powstał Zbigowy modulator, do dziś mam z nim radio (to było bardzo klasyczne podejście), pakowało się to do starego radia z dołożonym modułem.
Z powodu cen miało to sens.
Dziś to chyba ma to sens tylko i wyłącznie jako hobby i to też jest ok :)

_________________
samolot max 4579/1293
coper max 1729(na 5.8)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 17:48 
Offline
Awatar użytkownika

Rejestracja: czwartek 20 wrz 2012, 22:38
Posty: 244
Lokalizacja: Wrocław
pma_, tak, to jest hobby :-)

Ostatni 'skok' w funkcjonalności zrobiłem 1.5 roku temu, dopisałem to co mi było potrzebne do używania i zacząłem używać.
Teraz muszę zrobić kolejny nadajnik i pewne rzeczy też muszę tam dodać. A jak już odkopuję projekt to można się nim przy okazji pochwalić :-P . To też daje 'kopa', żeby dorobić dokumentację, poznać punkt widzenia i ewentualne wymagania innych co do takiego projektu.

No i np. jedna uwaga Misia skłoniła mnie do zajrzenia do 5 letniego fragmentu kodu, który można było jescze łatwo przyspieszyć/poprawić (w sumie byłem na 100% pewny, że to poprawiłem dawno temu).

Generalnie dla mnie same plusy (motywacja, wyłapanie błędów), a może przy okazji jeszcze ktoś skorzysta.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 18:54 
Offline
Awatar użytkownika

Rejestracja: czwartek 18 kwie 2013, 14:34
Posty: 303
Lokalizacja: daleka północ
Kurde majek, wiedziałem, że ty to z tych co lubią dłubać w kodzie (jeszcze z czasów rex'a) no ale tutaj to pełen "rispekt" !!!
Że też znajdujesz czas na takie coś!


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 19:08 
Offline
Awatar użytkownika

Rejestracja: czwartek 20 wrz 2012, 22:38
Posty: 244
Lokalizacja: Wrocław
remick, jak popatrzysz na częstotliwośc commitów, to najczęsciej nie znajduję :-P

A żeby nie bić tylko piany, tak wygląda gotowa klawiatura którą trzeba sobie niestety zrobić samemu:
Obrazek
Obrazek


Ostatnio zmieniony wtorek 22 maja 2018, 16:11 przez majek, łącznie zmieniany 1 raz

Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 20:20 
Offline
Awatar użytkownika

Rejestracja: sobota 08 maja 2010, 09:43
Posty: 3958
Lokalizacja: Gliwice/Katowice
Trzeba było użyć gotowej z kamerek :)

_________________
samolot max 4579/1293
coper max 1729(na 5.8)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek 23 cze 2014, 20:27 
Offline
Awatar użytkownika

Rejestracja: czwartek 20 wrz 2012, 22:38
Posty: 244
Lokalizacja: Wrocław
Wszystkie gotowe potrzebują 5-6 pinów procka do obsługi 6 klawiszy. Moja działa na trzech :-)
A nie chciałem kombinować z klawiaturą na 3-4 przyciski, bo to jest później rzeżba w interfejsie użytkownika. tu mam 4 kierunki, enter, esc - bardziej intuicyjnie sie nie da.

Tu też niestety wychodzi dobranie procesora 'na styk' - nie ma więcej wolnych portów, żeby obsłużyć 'normalną' klawiaturę. Ale takie wyzwania lubię :-P


Na górę
 Wyświetl profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 22 ]  Przejdź na stronę 1, 2  Następna

Strefa czasowa UTC+1godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
Technologię dostarcza phpBB® Forum Software © phpBB Group

Strona korzysta z plików cookie w celu realizacji usług zgodnie z . Polityką prywatności
Możesz określić warunki przechowywania lub dostępu do cookie w Twojej przeglądarce lub konfiguracji usługi.