Witam
Z racji mojego pierwszego postu na forum pragnę wszystkich serdecznie przywitać. Postanowiłem poprosić Was o pomoc, ponieważ moja wiedza dotycząca elektroniki i programowania jest bardzo uboga.
W ubiegłym roku wykonałem projekt biurkowego kokpitu, gdzie elektronikę oparem na mJoy16 oraz płytki SimOut XL. Dużą pomoc otrzymałem od „codeking’a”, szczególnie w pisaniu skryptów. To dzięki niemu udało się uruchomić płytkę SimOut.
Poniżej zamieszczam link do zdjęć mojego biurkowego kokpitu. Był to mój pierwszy projekt, do którego zmobilizowała mnie uszkodzona elektronika wolantu. Najpierw wykorzystałem mJoy16 do istniejących styków i osi aż w końcu naszło mnie do budowy coś takiego:


W wolancie nie działają wyświetlacze 7 segmentowe. Są zamontowane jako atrapy ale postanowiłem, że kolejny projekt będzie pobierał dane z komputera i wyświetlał je na wyświetlaczach. Tak powstał moduł radio – komunikacyjny oparty na wyglądzie 737NGX.

Tu wszystko ładnie gra.
Od dłuższego czasu noszę się z zamiarem budowy kokpitu Boing’a 737 nowej generacji. ( na platformie PMDG 737 NGX ), a dokładnie jej poszczególnych komponentów.
Z tego powodu powoli przygotowuje pomieszczenie ( warsztacik ), w którym mam zamiar dłubać poszczególne paneliki. Myślę, że na początku przyszłego roku ukończę pomieszczenie i przejdę do budowy. Obecnie prowadzę testy na biurku i to w dodatku w pokoju gościnnym. Wyobrażacie sobie jak „patrzy” na mnie żona, a nie wspomnę już o dwójce dzieci i ich zainteresowaniu tym co się dzieje przed komputerem.
Tyle wstępu, przejdźmy do konkretów. Mam kilka pytań, również takich banalnych :
Pytanie nr 1:
Czy można podłączyć 2 płytki SimOut pod jeden komputer ? Jak to wpływa na programowanie i prace w aplikacji Domowy Kokpit ?
Pytanie nr 2:
Co trzeba zrobić i gdzie aby móc zmienić nazwę mJoy16 ?
Chodzi o podłączenie 2-uch lub więcej takich urządzeń. Próbowałem w PonyPong zmieić nazwę i się udało, ale komputer raz widzi urządzenie jako mJoy15 ( na taką zmieniłem ) a raz jako mJoy16 ( czyli orginał ). Dodam, że tylko nazwę zmieniłem. Nie wiem gdzie jest ID i Vendor ani jak się go zmienia.
Pytanie nr 3:
Czy ktoś z Was może mi z powiedzieć coś na temat DmJoy i dmkeys ?
Na stronce Damosa byłem i poczytałem. Chce się dowiedzieć jaka jest różnica między w/w urządzeniami.
Gdzie mogę zakupić elementy potrzebne do wykonania w/w urządzeń ?
Skąd wziąć schematy podłączeń itp.
Czytałem wątek o następcy Mjoy16 ale nie znalazłem informacji, które pomogły by mi w poskładaniu płytki. Brakuje strony podobnej jak dla Mjoy16. Tam jest wszystko jasno napisane. Mozę warto by było taką przygotować o ile Damos nie ma żadnych przeciwwskazań.
Pytanie nr 4:
Czy ktoś z Was zlecał komuś wytrawienie płytki SimIN ?
Wykonałem ją na uniwersalnej płytce ale mi się nie podoba a w dodatku raz na 10 podłączeń do komputera SimOut jej nie widzi. Nie wiem czemu.
W pewnej firmie za wytrawienie w/w płytki ( chyba każdy wie w jakiej ) padła kolosalna cena. Chodziło o zrobienie dokumentacji itp. Nie podjąłem się wytrawienia u nich z tego powodu ponieważ szacuje że same wykonanie płytki będzie w granicy 15-25 zł / szt. No ale dokumentacja……..
Pytanie nr 5:
Skrypty. Mam duży problem w ogarnięciu pisania skryptów. Problem polega na tym, że obecnie tworze skrypt wysyłający dany skrót klawiaturowy ( uruchamiany od danego WE z płytki mJoy16 ) a w FSUPIC robię Macros i przypisuje ten skrót do danej funkcji. Tak najogólniej steruje przełącznikami itp. Ale przecież są jeszcze offsety. Niestety nie potrafię ich uruchomić.
I tu jest bardzo dziwna sytuacja.
Weźmy np. „Parking Brakes”, offset w PMDG jak i w deuflatowych samolotach działa ale już przykładowo offset dla „AT Arm” w deuflatowych samolotach działa a w PMDG nie. I co tu jest grane ?
Jest dużo różnych funkcji, które w podstawowych samolotach działają a w PMDG nie.
Ogólnie dążę do wyeliminowania jak najwięcej nie potrzebnych przypisań klawiaturowych. Gdyby offsety działały prawidłowo, nie musiałbym korzystać z funkcji Macros w FSUIPC, przynajmniej bym je ograniczył. W końcu zbraknie mi skrótów klawiaturowych

. I tu moje pytanie ?
Czy możemy po kolei ( oczywiście w trakcie budowy poszczególnych paneli ) zamieszczać tu różne gotowe skrypty, które by działy pod platformą FSX - PMDG ?
Od razu piszę, że nie mam pojęcia jak to oprogramować wykorzystując offsety.
Obecnie jestem na etapie testowania hebelków dla EFIS ( korzystam z skrótów klawiaturowych i funkcji Macros ) i najprawdopodobniej właśnie to urządzenie będzie pierwszym moim panelikiem choć z powodu trudności wykonania niektórych przełączników jeszcze się zastanawiam.
Jeśli Macie pewne gotowe skryty dla FSX, proszę zapodajcie je poniżej. Jak znajdę czas to bym trochę po testował a zarazem poćwiczył pisanie skryptów.
Poniżej skrypt oparty na offsecie obsługujący podwozie :
variable $_0892
{
module = "FSDataOutput";
id = "0892";
type = int;
direct = out;
}
variable $MJ16_przycisk_057
{
module = "GameControllersInput";
id = "MJ16:przycisk_057";
type = bool;
direct = in;
}
variable_changed $MJ16_przycisk_057
{
if ( $MJ16_przycisk_057 == true )
{
Log("Parking brake ON");
SetWithSignal( $control , MakeDouble( 0 , 65752 ) );
}
else
{
Log("Parking brake OFF");
SetWithSignal( $control , MakeDouble( 0 , 65752 ) );
}
}
Ten sam skrypt może być wykonany z użyciem wysyłania skrótu klawiaturowego.
variable $MJ16_przycisk_047
{
module = "GameControllersInput";
id = "MJ16:przycisk_047";
type = bool;
direct = in;
}
variable_changed $MJ16_przycisk_047
{
if ( $MJ16_przycisk_047 == true )
{
Log("Parking brake ON");
KeyboardOutput:SendShortcut( "G" );
}
else
{
Log("Parking brake OFF");
KeyboardOutput:SendShortcut( "G" );
}
}
Analogicznie jak w/w rozwiązałem przełącznik 2 pozycyjny ADF1 i VOR1 ( EFIS ) przypisując później w FSUIPC do ma robić dany skrót.
variable_changed $MJ16_przycisk_041
{
if ( $MJ16_przycisk_041 == true )
{
KeyboardOutput:SendShortcut( "^+d" );
Log("VOR1 ON");
}
else
{
KeyboardOutput:SendShortcut( "^d" );
Log("VOR1 OFF");
}
}
variable $MJ16_przycisk_042
{
module = "GameControllersInput";
id = "MJ16:przycisk_042";
type = bool;
direct = in;
}
variable_changed $MJ16_przycisk_042
{
if ( $MJ16_przycisk_042 == true )
{
KeyboardOutput:SendShortcut( "^d" );
Log("ADF1 ON");
}
else
{
Log("ADF1 OFF");
KeyboardOutput:SendShortcut( "^+d" );
}
}
skrót "^+d" służy do przełączenia przełącznika w górę
skrót "^d" służy do przełączenia przełącznika w dół
Zwróćcie uwagę, że wykorzystałem dwa WE Mjoy16 i tylko 2 skróty klawiaturowe a przełącznik jest 3 pozycyjny ( VOR1 / OFF / ADF1 ).
Może ktoś z Was jest w posiadaniu skryptu jak wyżej ale opartego na offsetach. Byłbym wdzięczny.
Z racji dość zróżnicowanego zagadnienia, nie za bardzo wiedziałem w którym dziale umieścić /w/ post.
Mam również sugestie do moderatora. Warto by się zastanowić czy nie przenieść tematu do nowego wątku, który dotyczył by budowy poszczególnych paneli Boinga 737. W wątku zostały by zawarte poszczególne skrypty i doświadczenia w budowie paneli dotyczące w/w tematu, co w przyszłości pomoże innym w konstruowaniu własnych urządzeń kokpitu.
Na razie tyle pytań, wracam do testów ( w wolnych chwilach

)
Jakub