Remote Control Module

Module API help / support section for programmers.

Moderators: Dreamer, FredB, X05

TDS
Just popping in
Posts: 3
Joined: Sun Nov 18, 2007 3:49 am
Location: Germany
Contact:

Remote Control Module

Postby TDS » Sun Nov 18, 2007 7:56 am

My aim is to develop a remote module for DvbDream which supports at least the Pinnacle 250 series. Currently I have a Shortcut Manager which can define Shortcuts and currently the five different remote controls by Pinnacle.

Project:
- IDE: Delphi 7 Enterprise (a little bit old ^^)
- Name: Remote Control for Pinnacle cards (no COM port related remote controls)
- Version: 0.01 :-)
- remote control configuration via XML file (working)
- shortcut manager (working)
ToDo:
- remote control access (very difficult for non-COM rc's)
What I need is:
- Help for DvbDream Module API (e.g. channel switch doesn't work)
- Pinnacle SDK for remote controls (does it exists?)
- Tools for looking into hardware protocols (registers) and PCI stuff for reverse engineering
Who can Help me except Pappi22 and Dreamer (will ask them separately)?
Attachments
remotecontrol.zip
First version after one day full of work.
(948.52 KiB) Downloaded 1381 times

Currently coding on Remote Control plugin for DVBDream
saentist
love DVB Dream!
Posts: 114
Joined: Tue Aug 28, 2007 3:02 pm
Location: Bulgaria
Contact:

Postby saentist » Mon Nov 19, 2007 3:33 am

? is this a bug
I cant set and select a remote (pinnacle_d picture)

can you write a manual or some
Image
Pinnacle PCTV-SAT, Twinhan VP1030 CI (yellow) & DVB-T MobiDTV Pro
Sappire X1950Pro 512Mb DDR3 256bit (AGP)
140 cm parabola with inverto 0.3dB SRT-V50 30E<->57W
Image
User avatar
rel
relocation
Posts: 2051
Joined: Fri Jun 16, 2006 9:50 am

Postby rel » Mon Nov 19, 2007 1:05 pm

you must write a module which will send remote key codes to DVB Dream.
You can send the codes simply using window-messages.



Window messages to send remote control key-codes to DVB Dream:

You can use one of these:

WM_REMOTE_MSG = WM_USER + 322;
WM_REMOTE_DEVICE_MSG = WM_USER + 323;



SendMessage(hwndDD, WM_REMOTE_DEVICE_MSG, 0, RMT_UP);

if you use WM_REMOTE_DEVICE_MSG , user can change the assignments of the keys using main menu->options->remote.



Possible remote key codes you can send to DD: (through lParam)



RMT_POWER = $00000001; // Required
RMT_MUTE = $00000002; // Required
RMT_0 = $00000003; // Required
RMT_1 = $00000004; // Required
RMT_2 = $00000005; // Required
RMT_3 = $00000006; // Required
RMT_4 = $00000007; // Required
RMT_5 = $00000008; // Required
RMT_6 = $00000009; // Required
RMT_7 = $0000000A; // Required
RMT_8 = $0000000B; // Required
RMT_9 = $0000000C; // Required
RMT_UP = $0000000D; // Required
RMT_DOWN = $0000000E; // Required
RMT_LEFT = $0000000F; // Required (Volume -)
RMT_RIGHT = $00000010; // Required (Volume +)
RMT_OK = $00000011; // Required
RMT_RECORD = $00000012; // Required
RMT_RECALL = $00000013; {Back to previous channel}
RMT_FULLSCREEN = $00000014; // Required
RMT_TELETEXT = $00000015;
RMT_EPG = $00000016;
RMT_TAB = $00000017; // Required (to switch between ch.list tabs)
RMT_INFO = $00000018; {Display channel number/name} // Required
RMT_OPTIONAL1 = $00000019;
RMT_OPTIONAL2 = $0000001A;
RMT_OPTIONAL3 = $0000001B;
RMT_OPTIONAL4 = $0000001C;
RMT_OPTIONAL5 = $0000001D;
RMT_OPTIONAL6 = $0000001E;
RMT_OPTIONAL7 = $0000001F;
RMT_OPTIONAL8 = $00000020;
RMT_OPTIONAL9 = $00000021;
RMT_PLAY = $00000022;
RMT_STOP = $00000023;
RMT_FORWARD = $00000024;
RMT_REWIND = $00000025;
RMT_PAUSE = $00000026;
RMT_SCHEDULER = $00000027;
RMT_MENU = $00000028; // Required
RMT_RED = $00000029;
RMT_GREEN = $0000002A;
RMT_YELLOW = $0000002B;
RMT_BLUE = $0000002C;
RMT_RADIO = $0000002D;
RMT_RECORDLIST = $0000002E;
RMT_EXIT = $0000002F; // Required
DVB Dream - because I have to dream about having time to code it
TDS
Just popping in
Posts: 3
Joined: Sun Nov 18, 2007 3:49 am
Location: Germany
Contact:

Postby TDS » Tue Nov 20, 2007 11:38 am

? is this a bug
I cant set and select a remote (pinnacle_d picture)

can you write a manual or some
Currently the code can't access a remote control by Pinnacle, now it can only send messages to DvbDream an manage some shortcuts. Thats not a bug but Pinnacle doesn't have a SDK for their integrated remote control ports an their PCI cards yet. That's why I want to try it by reverse-engineering.
Currently coding on Remote Control plugin for DVBDream
townkat
Just popping in
Posts: 6
Joined: Sun Nov 25, 2007 11:18 am

Postby townkat » Sun Nov 25, 2007 11:23 am

Hi,

I made a script for eventghost to control dvb dream remotely using Window messages but it does not work in full screen mode. Is this normal ? It does work when not in fullscreen mode.

thnx
Technotrend S2-3200
User avatar
rel
relocation
Posts: 2051
Joined: Fri Jun 16, 2006 9:50 am

Postby rel » Sun Nov 25, 2007 12:46 pm

Hi,

I made a script for eventghost to control dvb dream remotely using Window messages but it does not work in full screen mode. Is this normal ? It does work when not in fullscreen mode.

thnx
does it always send the remote messages to DD's main window? it should do so. (even in Fullscreen mode)

use "Native" remote type in "options->remote" since you send your remote messages yourself.
DVB Dream - because I have to dream about having time to code it
townkat
Just popping in
Posts: 6
Joined: Sun Nov 25, 2007 11:18 am

Postby townkat » Sun Nov 25, 2007 12:59 pm

this is what i used to locate dvbdream window
WindowMatcher("dvbdream.exe").Enumerate
It should locate dvbdream by process, and that means main window as i know.
It works while dvbdream is not in fullscreen mode. If native is not selected it does not work at all.
Technotrend S2-3200
TDS
Just popping in
Posts: 3
Joined: Sun Nov 18, 2007 3:49 am
Location: Germany
Contact:

Postby TDS » Sun Nov 25, 2007 1:58 pm

Yeah, now I have direct PCI access via Windows ring 0 kernel driver. Currently I code the R5 protocol. Btw, DD receives messages from me and reacts on it, so no problem.
Currently coding on Remote Control plugin for DVBDream
townkat
Just popping in
Posts: 6
Joined: Sun Nov 25, 2007 11:18 am

Postby townkat » Fri Dec 07, 2007 8:05 pm

rel, it seems that this is a bug, any fixed planed ?
thnx
Technotrend S2-3200
User avatar
ScanMan
love DVB Dream!
Posts: 191
Joined: Fri Sep 08, 2006 4:52 am
Location: 49565 Germany

Postby ScanMan » Sun Dec 09, 2007 6:23 am

... seems that a lot of people are working on a good remote-tool.
Me too !

It's not really finished yet, but works fine until now.
A first release for testing is planned around X-Mas (... as a present ?!)

A short description of all planned features:

Hardware:
- Can receive signals from nearly every IR-Remote with a TX-frequency around 36KHz. I tested it here with Technisat RCs (Philips RC5-Coding), TwinHan RCs (NEC-Coding), DBOX RCs (special format, BitPhase-Coding) and many other standard TV/DVD-controls more. Also Sony RCs works fine (special Sony-coding).
- Receiving is possible via a 'normal' IR-Plug for COM-ports and also via special USB-IR-receiver-sticks designed like the one from Igor Cesko (available at ebay germany)
- No special tools like WinLIRC or girder are neccessary ! All needed things are implemented.
- It is planned to handle HID-devices (like TS or Pinnacle) also.

Software:

- is designed as a module for DD
- Everey ( ! ) key on nearly every RC can be learned and is free configureable in a GUI. Very easy to use.
- DD is controlled like doing this with HotKeys ! So you can use more 'Keys' - controlling EPG, OSD, Teletext and any other Plugin/Module which has a reaction to HKs is possible ! Also done with a GUI. Also very easy to use.

Future plan is controlling any Software on the machine.
I created this specially for my new HTPC because i couldn't find any overall usefull working tool...
Hope this is interesting.

If i'm ready to give out a beta-release, many testers are welcome.

PLEASE DONT POST ANY WISHES HERE ! I will open up a separate Thread ! THX.

:D ScanMan
.
Visit the german DD-Forum: www.dvbdream.de
_________________________________________
90cm Dish on Rotor STAB HH 120 / Uni-LNB + 90cm Dish / Dual-Quad-LNB to 9/8 MultiSwitch for 23.5°E/19.2°E --- SkyStar 2, SkyStar USB-Box plus, TwinHan 1041 S2, Technotrend S-3200 S2, DVBWorld S2, Terratec Cinergy T USB XE --- a few PCs with AMD-CPU/ASUS-Boards from Athlon-2400+ to 64 X2 5600+, 1-2GB RAM, totally up to 2 TB HardDisk, nVidia Graphics. All using XP-Professional - everytime up2date
townkat
Just popping in
Posts: 6
Joined: Sun Nov 25, 2007 11:18 am

Postby townkat » Sun Dec 09, 2007 11:05 am

I cannot see how a remote module for dvbdream can raplace a software like eventghost (did you tried it?), or girder for example...unless is separate from dvbdream. I personaly use the remote control while dvbdream is not runnig sometimes... WHy not just fix that window messages bug pls?

thnx :D
Technotrend S2-3200
User avatar
ScanMan
love DVB Dream!
Posts: 191
Joined: Fri Sep 08, 2006 4:52 am
Location: 49565 Germany

Postby ScanMan » Sun Dec 09, 2007 12:56 pm

Several probs are:

- You have to use additional sotware like Girder or WinLIRC
- Using the DD-Messeages through a Module, you are limited to those functions rel will support
- Using any other soft makes it neccessary to install and have probably any disfunction and complex ccordination
- Is use of any available normal RC supported ?
- Free configuration of any (!) available key on/with multifunctional RCs ?

What can eventghost do ? Surely a lot of things - but might never neccessary in controlling DD and additional plugins/modules..
Too much things to configure, too much working in backgroung and mightly many things more...

If you like it --->>> use it !
Other interests are welcome to test in next weeks.

Remainder:
DD is FreeWare - this module also !

:D ScanMan
.
Visit the german DD-Forum: www.dvbdream.de
_________________________________________
90cm Dish on Rotor STAB HH 120 / Uni-LNB + 90cm Dish / Dual-Quad-LNB to 9/8 MultiSwitch for 23.5°E/19.2°E --- SkyStar 2, SkyStar USB-Box plus, TwinHan 1041 S2, Technotrend S-3200 S2, DVBWorld S2, Terratec Cinergy T USB XE --- a few PCs with AMD-CPU/ASUS-Boards from Athlon-2400+ to 64 X2 5600+, 1-2GB RAM, totally up to 2 TB HardDisk, nVidia Graphics. All using XP-Professional - everytime up2date
townkat
Just popping in
Posts: 6
Joined: Sun Nov 25, 2007 11:18 am

Postby townkat » Sun Dec 09, 2007 2:37 pm

Eventghost is free too, and open source as i remember.

Also making a module for eventghost is really simple, it took me few hours and i have no ideea about Python ( i made one to support dvbdream, wich works with window messages, but only when not in fullscreen because of DD).

Will your module be able to receive window messages?, if yes, also in fullscreen mode ?

What method do you use to control dvbdream from your module ?

thnx :D
Technotrend S2-3200
User avatar
ScanMan
love DVB Dream!
Posts: 191
Joined: Fri Sep 08, 2006 4:52 am
Location: 49565 Germany

Postby ScanMan » Mon Dec 10, 2007 2:42 am

In the 'OnInit'-function i read the WindowHandle of DD. Makes it very easy to send Messages to the right (DD-Main) window.
This works very fine also when DD is not in Front - but i can make it going to the top...

If a key on any remote is pressed, the module evaluates the numeric code with an assignment-table to get the adequate Hotkey.
This 'Key' (every combination with Shift, Alt, Ctrl with any key will work) is send via PostMessage to DD.

Abolutly simple. The most work is do create an usefull User-Interface to assign keys to the RCs and combine them with the Hotkeys used in DD.

Yes i can read any Windows-message i need. I only have to create an adequate hook the the needed message to get

@ rel
How can i start the MDTeleText ? AFAIK it has no Hotkey but you have a button for it when installed...
Would be nice to start the TT also via remote.

:D ScanMan
.
Visit the german DD-Forum: www.dvbdream.de
_________________________________________
90cm Dish on Rotor STAB HH 120 / Uni-LNB + 90cm Dish / Dual-Quad-LNB to 9/8 MultiSwitch for 23.5°E/19.2°E --- SkyStar 2, SkyStar USB-Box plus, TwinHan 1041 S2, Technotrend S-3200 S2, DVBWorld S2, Terratec Cinergy T USB XE --- a few PCs with AMD-CPU/ASUS-Boards from Athlon-2400+ to 64 X2 5600+, 1-2GB RAM, totally up to 2 TB HardDisk, nVidia Graphics. All using XP-Professional - everytime up2date
User avatar
rel
relocation
Posts: 2051
Joined: Fri Jun 16, 2006 9:50 am

Postby rel » Mon Dec 10, 2007 3:26 am

@ rel
How can i start the MDTeleText ? AFAIK it has no Hotkey but you have a button for it when installed...
Would be nice to start the TT also via remote.
might be added a keyboard shorcut and a menu item soon.


@townkat, I don't think there is a bug, remote/window messages work fine here on all of fullscreen/tvmode/normal modes, you must search the answer on the utility you use.
Last edited by rel on Mon Dec 10, 2007 10:51 pm, edited 1 time in total.
DVB Dream - because I have to dream about having time to code it

Return to “Module / Plugin Programming”

Who is online

Users browsing this forum: No registered users and 1 guest