Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Program - sterownik telewizorów i monitorów LCD firmy LG

gamestone 28 Mar 2010 12:44 41573 39
  • Program - sterownik telewizorów i monitorów LCD firmy LG

    Witam wszystkich.
    Chciałem przedstawić program mojego autorstwa. Jest to sterownik telewizorów i monitorów firmy LG komunikujący się z odbiornikami za pomocą portu COM.
    Praktycznie wszystkie obecnie produkowane telewizory oraz część monitorów firmy LG posiada port serwisowy RS232. Dzięki niemu możemy z poziomu konsoli wywoływać podstawowe funkcje telewizora. Prezentowany program wysyła odpowiednie komendy sterujące do telewizora. Poszczególne kody rozkazów możemy edytować za pomocą pliku konfiguracyjnego w formacie XML.
    Program testowany z monitorem LG M2794D.

    Program - sterownik telewizorów i monitorów LCD firmy LG
    W załączniku znajduje się dokumentacja telewizora wraz z kodami komend.

    Komputer z telewizorem należy połączyć za pomocą krosowanego kabla. Można użyć do tego przejściówki USB-RS232 lub nawet wykorzystać konwerter Bluetooth-RS232 (jeśli taki posiadamy).
    Czasem w dokumentacji możemy znaleźć komendy opcji, które nie są dostępne w standardowy sposób. Ja odkryłem np funkcję QuickMenu o której istnieniu wcześniej nie miałem pojęcia :). Swoją drogą funkcja ta jest dosyć przydatna.

    Program napisałem głównie dla tego, że mój monitor pełni również funkcję telewizora. Mam do niego podłączone 3 zewnętrzne urządzenia. Mogę wybrać z listy rozwijalnej dane wejście telewizora i jednym kliknięciem je aktywować. Ponadto mogę szybko przełączać się pomiędzy zaprogramowanymi profilami dźwięku i obrazu. W pilocie nie mam takich przycisków, a na prawdę by się przydały.

    ==================================================================

    Druga aplikacja (w załączniku) to RsCmd.

    Aplikacja umożliwia przesyłanie komend tekstowych do urządzeń podłączonych do portu COM z poziomu linii komend.

    Przykładowa komenda to: rscmd cmd:"ka 0 1"
    Jest to komenda włączająca telewizor. Możemy utworzyć skrót do programu wpisując powyższą komendę a następnie skrót dodać do autostartu. Dzięki temu po uruchomieniu systemu włączy nam się telewizor.
    Uruchamiając program w postaci rscmd cmd:"xb 0 80" przełączamy źródło wejścia na DVI. W linii komend nie ma zdefiniowanego portu COM. W tym przypadku rozkaz zostaje wysłany na wszystkie porty dostępne w systemie. Domyślna prędkość to 9600kbps

    Firma LG w dokumentacji odbiorników dołącza w miarę dokładną i zrozumiałą dokumentację komend konsoli, z którą powinien poradzić sobie w zasadzie każdy średnio zaawansowany użytkownik komputera. Możemy utworzyć sobie skróty do najczęściej używanych funkcji telewizora,

    Program - sterownik telewizorów i monitorów LCD firmy LG
    Ja utworzyłem sobie 4 pliki wsadowe bat:
    Włącz: "C:\Program Files\rscmd.exe" cmd:"mc 0 08"
    Dvi: "C:\Program Files\rscmd.exe" cmd:"xb 0 80"
    Dsub: "C:\Program Files\rscmd.exe" cmd:"xb 0 60"
    Hdmi: "C:\Program Files\rscmd.exe" cmd:"xb 0 90"

    Życzę miłej zabawy :)

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    gamestone
    Poziom 10  
    Offline 
    Specjalizuje się w: programista
    gamestone napisał 58 postów o ocenie 86, pomógł 0 razy. Mieszka w mieście Kielce. Jest z nami od 2008 roku.
  • #2
    Mr5wa
    Poziom 16  
    Fajny program tylko rażą w oczy Angielsko - polskie napisy...
    Fajnie by było gdybyś je ujednolicił...
    I trochę denerwuje to że jak nie mam podłączonego TV to program się zawiesza a następnie zamyka się.
  • #3
    gamestone
    Poziom 10  
    Zgodnie z życzeniem ujednoliciłem wersję językową.
    Jeśli chodzi o zawieszenie programu, to najprawdopodobniej przyczyną tego są wirtualne porty COM, np ze sterownika bluetooth. W tym wypadku nalezy albo wyłączyć porty albo wyłączyć opcję skanowania portów: w pliku konfiguracyjnym należy ustawić wartość Autodetect Enabled="False"
  • #4
    Remo
    Poziom 11  
    Fajny programik, w jakim języku został napisany?
  • #5
    gamestone
    Poziom 10  
    Delphi
  • #6
    bodzio667
    Poziom 18  
    Jest możliwość prze konfigurowania programu do TV innej marki ? Ja mam np. PHILIPS. :|
  • #7
    gamestone
    Poziom 10  
    Jeśli tylko odbiornik posiada system komunikacji za pośrednictwem komend konsoli to wystarczy odpowiednio edytować plik konfiguracyjny programu. Są w nim zdefiniowane komendy dla każdego przycisku.

    ps Podaj model telewizora.
  • #8
    Karol966
    Poziom 30  
    Witam. Posiadam TV model 32LF2510 - posiada on złącze USB - słyszałem, że można je uruchomić poprzez zmianę softu, czy tym programem można tego dokonać? Może ktoś coś więcej na ten temat napisać? Może jest możliwość podłączenia pod to USB modułu bluetooth tak by sterować TV poprzez bluetooth ?
  • #9
    gamestone
    Poziom 10  
    Port USB w telewizorze jest portem typu host, tzn że telewizor pełni funkcję "komputera" i do niego podłączamy inne urządzenia typu pendrive. Nie możemy bezpośrednio podłączyć komputera i telewizora za pośrednictwem tego portu. Można to zrobić za pomocą specjalnego kabla do łączenia hostów USB ale wymaga to specjalnego oprogramowania.
  • #10
    MasterMatan
    Poziom 21  
    Fajny projekcik tylko szkoda że w Delphi :/
    Gdybyś użył jakiegoś innego języka pewnie łatwiej by było przeportować program na inne platformy. Ale i tak gratuluję pomysłu.
  • #12
    TomekB123
    Poziom 19  
    Karol966 napisał:
    Witam. Posiadam TV model 32LF2510 - posiada on złącze USB - słyszałem, że można je uruchomić poprzez zmianę softu, czy tym programem można tego dokonać? Może ktoś coś więcej na ten temat napisać? Może jest możliwość podłączenia pod to USB modułu bluetooth tak by sterować TV poprzez bluetooth ?


    W tym modelu odblokowuje się odtwarzanie multimediów z usb, zmieniając odpowiednie opcje w menu serwisowym. Inna sprawa, że dostanie się do menu serwisowego wymaga firmware nie nowszego niż w wersji 3.15.
  • #13
    misiek84LG
    Poziom 12  
    bardzo łatwo jest zmienić opcje w 32LF2510 tak aby odtwarzał multimedia z USB ale trzeba posiadać pilot serwisowy :D
  • #14
    george2002

    Poziom 20  
    Cytat:
    Karol966 napisał:
    Witam. Posiadam TV model 32LF2510 - posiada on złącze USB - słyszałem, że można je uruchomić poprzez zmianę softu, czy tym programem można tego dokonać? Może ktoś coś więcej na ten temat napisać? Może jest możliwość podłączenia pod to USB modułu bluetooth tak by sterować TV poprzez bluetooth ?


    W tym modelu odblokowuje się odtwarzanie multimediów z usb, zmieniając odpowiednie opcje w menu serwisowym. Inna sprawa, że dostanie się do menu serwisowego wymaga firmware nie nowszego niż w wersji 3.15.


    Zapraszam na tą stronę - https://www.elektroda.pl/rtvforum/topic1385309.html - wszystko opisane co jak z uruchomieniem np odtwarzania filmów z USB w tym TV (sam taki posiadam i włączenie tej opcji zajęło niecałe 5 minutek :) )

    PS
    Ciekawą opcję odkryłem w moim TV dzięki opcji Adjust :) ale niestety narazie coś źle mi steruje TV :)

    Pozdrawiam
    George2002
  • #15
    bodzio667
    Poziom 18  
    gamestone: Mój model TV to PHILIPS 37PFL3403D/12
    niestety nie posiada on złącza RS232... jest tylko usb, da się za jego pomocą cokolwiek konfigurować ?? Czy to tylko Host?

    Port USB działa, akurat u mnie jakieś tam menu się pojawia jak włożę pendrive wykrywa markę i model. Da się odtwarzać multimedia.

    Nie wiem tylko jak się dostać do menu serwisowego... Jak by tu zmodowć program by obsługiwał inne marki.
    Prośba do autora programu o udostępnienie kodu źródłowego :| Może stworzymy program do którego będzie można załadować ustawienia komend do danego tv. Każdy będzie mógł zrobić plik konfiguracyjny do swojego tv. Albo lepiej Można by zrobić bazę z której by wybierało się dany tv.
    Można też zamieścić wskazówki jak zrobić kabel połączeniowy do konkretnego modelu tv.

    Co o tym myślicie ? :D
  • #16
    gamestone
    Poziom 10  
    Kod źródłowy mogę udostępnić. Program można dostosować do obsługi innych modeli bez ingerencji w aplikację. Wystarczy odpowiednio zmodyfikować plik konfiguracyjny wpisując odpowiednie kody przycisków.
    Jeśli chodzi o kabel - jest to klasyczny krosowany kabel COM. Do poprawnej pracy wystarczą 2 linie txd, rxd.

    PS Program nie ma możliwość łączenia się z telewizorem przez usb.
  • #17
    bodzio667
    Poziom 18  
    To w takim razie prosiłbym w imieniu wszystkich zainteresowanych kolegów o zamieszczenie tutaj kodu źródłowego programu.
    Pozdrawiam serdecznie.

    Ps czy natknąłeś się na aplikacje serwisowe które komunikują się przez port USB ?? Bo na twoim pisze Service Only czyli takowa aplikacja powinna istnieć. A nawet jeśli nie jest dostępna można by ją napisać samemu :D
  • #18
    kar694
    Poziom 12  
    drogi autorze postu

    tak się składa, że mam dokładnie taki monitor z tunerem tv LG (a dokładniej model : LG 22" LCD TV M2294D-PZ), niestety owy monitor ma pewną wadę.
    Kiedy oglądam dowolny program tv i zmieniam ustawienia np: format z 16:9 na oryginalny, to po określonym czasie około 2:30 min ustawienia wracają do fabrycznych.
    Teraz zastanawiam się czy dzięki temu programowi ustawie wybrane parametry na stałe (np. "redukcja szumu", "gamma", "żywy kolor").
    Czy któryś z kolegów robił zmiany w tym programiku ?
    Czy ten program pomoże mi pozbyć się opisanego problemu?

    Dodano po 2 [godziny] 54 [minuty]:

    czy możesz podać jak ma być skrosowany kabelek ? bo chce na "szybcika" zlutować a rodzai krosowania jest kilka.
  • #19
    gamestone
    Poziom 10  
    Trudno powiedzieć, jaka jest przyczyna tego problemu. Na Twoim miejscu zareklamowałbym telewizor (o ile jest na gwarancji). Jeśli nie, to warto byłoby wgrać nowy firmware. Jeśli to nie pomoże, to poszukać eeproma i wymienić go (jeśli jest w formie zewnętrznego układu).
    Być może mój program pomoże - tego nie wiem.W ostateczności można zastosować rozwiązanie łopatologiczne i co określony czas, np co 2 godz. wysyłać komendy do telewizora.

    Schemat kabla:

    Program - sterownik telewizorów i monitorów LCD firmy LG
  • #20
    kar694
    Poziom 12  
    ten monitor jest jeszcze na gwarancji, wgrywałem już firmware do mp3 i to była pestka, niestety za monitor dałem spore pieniądze i szczerze mówiąc obawiam się tej operacji. nie wiem jak dotrzeć do źródła tego błędu, a żeby było ciekawiej to po zmianie opcji(np tego formatu z 16:9 na oryginalny) to efekt się utrzymuje ale tylko wtedy gdy naciskam na pilocie co około 2 minuty klawisz który nie wywołuje żadnej reakcji (np. od wywołania indeksu na talegazecie),
    jeszcze nie mogęnic powiedzieć o funkcjonowaniu programu jaki napisałeś bo wiadomo jak to w święta, na wszystko mało czasu ale postaram się pogodzić codzienne obowiązki i zlutować ten kabelek, to tylko 6 punktów lutowniczych :P
    nie szukałem jeszcze firmware do niego i nie wiem jak by to przebiegało, domyślam się że ten etap będzie bardzo zbliżony do wgrywania na mp3.
    niestety jest jeden problem związany z gwarancją, nie mogę sobie pozwolić na oddanie monitora do serwisu bo jest moim narzędziem do pracy a wiadomo jak to w serwisach, posiedzi może nawet miesiąc
  • #21
    bodzio667
    Poziom 18  
    To możemy poprosić o te źródła w delphi ?? :D
  • #22
    gamestone
    Poziom 10  
    Udostępniłem aplikację z drobnymi poprawkami oraz kod źródłowy.
  • #23
    kar694
    Poziom 12  
    OK. programik działa jak trzeba, dziękuje :)
    wszystko fukcjonuje prawidłowo.
    Zmiany NIE zostają na stałe, ustawienia powracają jak można się było spodziewać.
    Teraz inne pytanko: chciałbym zbudować układzik którego głównym celem będzie nadawanie sygnału przez złącze RS-232 np tego który uruchamia powiedzmy indeks telegazety,
    Całość ma być zaprogramowaną Atmegą i układzik MAX dla prawidłowej komunikacji.
    Czy ktoś mógłby mi pomóc z taką konstrukcją ?
    Jeśli tak to bardzo proszę o kontakt drogą mailową kar694(malpa)tlen.pl.
  • #24
    gamestone
    Poziom 10  
    Dawno nie pisałem nic w bascomie ale implementacja dla Atmegi 8 w tym języku wyglądała by jakoś tak:
    Code:
    $regfile = "m8def.dat"
    
    $crystal = 8000000
    $baud = 9600

    do
      print "mc 0 08"
      wait 5
      print "xb 0 16"
    loop
    end

    Powyższa procedura włącza tv i po chwili ustawia aktywne wejście.

    Obsługa interfejsu RS232 w Bascomie jest banalnie prosta. W necie znajdziesz dużo przykładów.

    Jeśli chodzi o telegazetę nie znalazłem odpowiednich komend. Jednakże można to wykonać "symulując" przyciski pilota:

    Key (Command: m c)
    To send IR remote key code.
    Transmission [m][c][ ][Set ID][ ][Data][Cr]

    przykładowo: mc 0 10
  • #25
    SP3SWJ
    Poziom 18  
    kar694 napisał:
    ...niestety owy monitor ma pewną wadę.
    Kiedy oglądam dowolny program tv i zmieniam ustawienia np: format z 16:9 na oryginalny, to po określonym czasie około 2:30 min ustawienia wracają do fabrycznych.


    zobacz czy w menu OPCJE >> USTAWIENIA TRYBU masz ustawiony DOM

    jak pamietam w trybie SKLEP właśnie TV się sam ustawia na default po chwili... właśnie dlatego by po zabawie TV zawsze wracał do nastaw domyslnych

    Nie testowałem jeszcze z programem - ale pewnie też wraca do nastaw domyślnych (mam dwa LG i zabieram się za ich przetestowanie po RS.
  • #26
    mad81
    Poziom 12  
    Do zastosowań w serwisie, proponował bym przerobić go na freePascala (lazarus) sprawy licencyjne ;]

    Obsługa RS w lazarusie to bajka, lecz to już nie klocki lego jak w Delphi, trzeba się troszkę znać ;)

    Pozdrawiam
  • #27
    kar694
    Poziom 12  
    Witam ponownie kolegów.

    Chcę podzielić się z faktem, że rozwiązałem mój problemik odnośnie powrotu ustwień :) .
    Dzięki małej podpowiedzi Jednego z Was ustawiłem w końcu na OPCJE i dalej DOM a nie jak było do tej pory SKLEP , żeby tego dokonać należy kolejno klikać : MENU, OPCJE, i na dole RESET NASTAW FABR. potem postępować wg instrukcji, monitor sam będzie pytać się w jakim trybie ma pracować dom czy sklep, wybieramy DOM i po sprawie,

    Muszę dodać, że ta operacja usuwa wszystkie do tej pory zapamiętane probramy i ustawienia, więc w jej trakcie monitor przeszukuje automatycznie pasmo nadawania i zapisuje programiki.

    Jeszcze jedno w moim paśmie od kablówki są częstotliwości radiowe i można wyszukać stacje radiowe a na pilocie jest opcja przełączania TV/RADIO, Czemu nie przełącza mi się z tv na radio ? Mimo wyszukania przez instalację programów radiowych ta fukcja nie działa poprawnie, Czy ktoś wie o co chodzi ?
  • #28
    pini0
    Poziom 14  
    Witam

    Czemu zmiana ustawienia prędkości portu com po zamknięciu programu się resetuje?
  • #29
    gamestone
    Poziom 10  
    Po prostu aplikacja nie zapisuje tych ustawień.
  • #30
    urkotrebor
    Poziom 15  
    Po zapoznaniu się z tematem przyszła mi do głowy myśl , czy można do komunikacji użyć programu typu „TERMINAL”.
    Jeśli tak to można by z każdej platformy wysyłać komendy , tak jak to się kiedyś robiło z modemami a jednocześnie obserwować ewentualną odpowiedź .
    Jeśli była by taka możliwość to czy istnieje komenda wejścia w „TRYB SERWISOWY” i czy lista komend jest szersza od tej z której korzysta pilot .
    W moim przypadku biega głównie o monitor M2762D , ale może ktoś ma inny kto zgłębił temat i chciałby się podzielić tym co wie .