Stránka 1 z 15

Lua Macros

Napsal: 05 bře 2015, 21:46
od me2d
Tak prvni pokus pro Jirku a pripadne i dalsi nedockavce.

Jak jsem psal, HidMacros jsou mrtve z nekolika duvodu
- nebavi me patlat se s GUI
- kod vznikal z pokusu "co kdyby to fungovalo" a bohuzel je to na nem videt
- a hlavne je to psane v TurboDelphi, ktery uz nejsou volne ke stazeni, takze az si reinstaluju pocitac, uz to ani nezkompiluju. Delphi kvuli tomu kupovat nebudu
- to Microsofti skriptovani s COM objekty mi stejne nikdy moc nesedlo

Ale jsou tu LuaMacros :-)
- budou zalozene ciste na skriptu
- funkcne mam v planu aby to byly zhruba HidMacros bez FSX/9, mysi, MIDI + ty COMy a dalsi, co budu potrebovat
- open source od zacatku, takze mozna casem udelam FSkarum reklamu na peraku a treba tam ten SimConnect nekdo dopise

Prvni verze lze stahnout zde: http://files.xpl.cz/me2d/luamacros.zip
Umi to zatim jen joysticky a ty COMy, do XPL to umi poslat jen commandy. Datarefy a dalsi srandy co byly v HidMacros tam ted behem par dnu napojim. Moc jsem to netestoval a zatim neresil error handling (hlavne ze skriptu), takze opatrne prosim.
Jo jak nazev napovida tak na skriptovani pouzivame jazyk Lua - je hrozne moderni, ze jo :-). Bohuzel bez zakladni znalosti skriptovani to nelze pouzivat, tedy neni to takova masovka, jako HidMacros :-).

A jen na ukazku, klicovej kod se dela cca takto:

Kód: Vybrat vše

lmc_set_handler('LB',function(button, direction)
  print('Callback for whole joystick: button ' .. button .. ', direction '..direction)
  if (button == 3) then
    lmc_xpl_command('sim/view/still_spot')
  end
end)
Demostracni skript co to zatim umi je k videni zde: https://github.com/me2d13/luamacros/blo ... c/test.lua

A jeste k pouziti: snad by k behu mely stacit ty soubory, co jsou v zipu. S XPL to komunikuje pres soucasny HidMacros plugin, pro jistotu jsem tam pribalil i prebuildenou verzi, ale melo by to fungovat i s tim z HidMacros. Kdo nevi co tim myslim tak musi chvili pockat :-), detailnejsi navody ted ne.

Re: HID Macros - komunikace po COM

Napsal: 05 bře 2015, 21:57
od masa
Tak to vypadá zajímavě, už se těšim, až si s tím pohraju :)

Re: HID Macros - komunikace po COM

Napsal: 06 bře 2015, 09:00
od masa
Tak prvni lehky zkouseni a neco to dela - Bodnara to naslo, COM port otevrelo, veci z Arduina nacita :) Akorat jsem linej, takze ty seriakovy data bych desne rad dostal vic predzvykany, abych si nemusel resit nejaky buffer a separovani tech dat... ;) Ale vypada to sympaticky, zkusim tam prebouchat to, co jsem mel v HID macros, a HID zahodit. Akorat teda trosku bojuju s LUA, ale to se podda... proc tam treba sakra nemohli nechat { a } a musim psat nejaky end :twisted:

Mozna by stalo ze to zalozit tu vlakno LUA macros, at se to vsechno sepisuje tam...

Re: Lua Macros

Napsal: 06 bře 2015, 10:38
od me2d
Dokonce se mi podarilo i rozdelit tema :-)

Ja jsem ten COM zkousel jenom s nejakym virtual portem a tam co jsem odeslal, to mi dorazilo - najednou.
Nevim jak ti to chodi z Arduina, ale tak maximalne si tam udelas nejakej split na string, ne?

Re: Lua Macros

Napsal: 06 bře 2015, 10:57
od masa
Jo, to ze nacte co mu prijde to funguje, ale prave ten split se mi moc nechtelo matlat ;) Jako takovy bezny oddelovac by sel povazovat \n - jakmile by to na nej v tom proudu dat z COMu narazilo, tak by to zavolalo tu handler funkci a jako parametr predalo string se vsim, co prislo predtim (a vycistilo si ten buffer). Urcite to je resitelny i v tom mojem skriptu, ale kdyby si to resil primo ty, tak by to cely bylo jednodussi.

Priklad...

Arduino posle:
HDG 360\nHDG 359\nHDG 350\n

Tvoje soucasny zpracovani posle do hnadler funkce:
G 360\nHD
pak
G 359\nH
pak
DG 350\n
...bude to zaviset na nacasovani, tom jak to tvoje resi nejakej buffer a tak...

A me by se desne libilo, aby mi do handler funkce pres parametr prilitly primo stringy...
HDG 360
pak
HDG 359
pak
HDG 350

Re: Lua Macros

Napsal: 06 bře 2015, 11:08
od me2d
Jaky "to moje resi buffer", spatne to posila tvoje Arduino :-).
Ale ok, dodelam tam callaback handler dle separatoru, docela easy.

Re: Lua Macros

Napsal: 06 bře 2015, 11:27
od masa
No ja si s tim moc nehral, takze to Arduino to tam hrnulo fakt rychle, urcite poslalo "radku" nekolikrat za vterinu :)

Re: Lua Macros

Napsal: 06 bře 2015, 18:57
od masa
Par cvakatek mam udelany jako "pozicni kloboucek" - zpracovani cudlu ala prvni prispevek je ale nebere ;)

Re: Lua Macros

Napsal: 06 bře 2015, 19:54
od me2d
A v HidMacros to slo?
Kod je stejnej, mlhave si pamatuju ze HATy se ctou trosku jinak, takze to tam muzu dopsat, az to prijde na porad dne...

Re: Lua Macros

Napsal: 06 bře 2015, 20:25
od masa
Ha, tak ja zil v tom, ze ty cvakatka jsem mel pres HID macros, ale ono ve skutecnosti byly primo v XPL. A HID macros je koukam taky nedetekujou, tak na to mozna cely zapomen, ono to az tak dulezity neni.