none
Dual Independent Display in WEC7 RRS feed

  • Question

  • Hi,

    Is it possible to have two independent display at a time in WEC7 and run two different applications ? 

    How the mouse input can be handled in dual independent display system? 

    Anyone has implemented dual display in WEC7 ? It is not shifting the display using an application, it is two different video playback on two display devices at a time. 

    Regards,



    Seeth

    Thursday, November 27, 2014 7:17 AM

Answers

  • We were able to implement multi-monitor setup on Freescale i.MX6Q custom board.

    Resulting setup looks as in below snap:

    We had one GPE object earlier in the display driver to be given to it. 

    We have created two objects and we handled the display driver in such a way that we create two paths to the monitors. 

    Thank you,


    Seeth

    • Marked as answer by Seeth Wednesday, September 2, 2015 7:50 AM
    Wednesday, September 2, 2015 7:38 AM

All replies

  • Any idea experts?? 

    Seeth

    Thursday, December 4, 2014 7:01 AM
  • How can you have two application running on different displays ...

    Multimonitor is OK ... understandable 

    --- Misbah


    Senior Design Engineer T.E.S Electroni Solutions (Bangalore-India) www.tes-dst.com email-misbah.khan@tes-dst.com

    Friday, December 5, 2014 7:44 PM
  • Windows CE/EC supports multimonitor side-by-side. This way CE "sees" just 1 single very wide display and the mouse works as normal in multimonitor systems.

    Touch is a different issue. This is also possible, but you need a "shim" touch driver that transforms the coordinates of 1 touch controller to the monitor that does not have origin 0,0.

    So in CE:

    
    0,0        1024,0     2048,0
    +---------++---------+
    |  MON 1  ||  MON 2  |
    | Touch 1 || Touch 2 |
    +---------++---------+
        |          |      2048,768
         \        /
          \      /
         +--------+
         | Touch  |
         | Driver |
         +--------+
             ||
    +---------------------+
        Windows CE/EC
    

    Touch driver 2 will, just like Touch driver 1, return coordinates in the range 0,0 - 1024,768, so you need to transform the x coordinate by adding 1024 to get the cursor to show on the correct display. That's what your "shim" touch driver does; it consolidates the 2 touch driver outputs and transforms them into multimonitor coordinates.

    Of course you first need to support multimonitor in your display driver.


    Good luck,

    Michel Verhagen, eMVP
    Check out my blog: http://guruce.com/blog

    GuruCE
    Microsoft Embedded Partner
    http://guruce.com
    Consultancy, training and development services.


    Friday, December 5, 2014 8:55 PM
    Moderator
  • Hi Michel,

    Do you mean Multi monitor with the different content? 

    I want to have two different data/video on two different display devices. I think you meant the same with Multi Monitor and your explanation. 


    Seeth

    Monday, December 8, 2014 10:38 AM
  • When I say multimonitor I mean exactly how it works on a normal PC (except that CE does not support any other layout than side-by-side).

    To be even more clear: I do not mean "Clone Display".


    Good luck,

    Michel Verhagen, eMVP
    Check out my blog: http://guruce.com/blog

    GuruCE
    Microsoft Embedded Partner
    http://guruce.com
    Consultancy, training and development services.

    Monday, December 8, 2014 8:51 PM
    Moderator
  • Thank you Michel. 

    So Windows Embedded Compact 7 supports dual display/muti monitor with different content. 

    Is the support for this added in the public ? Any catalog should be there ? 

    Or in display driver itself we need to handle the stuffs?

    Any idea/logic to implement it in my display driver? I can provide more details on my system.


    Seeth

    Tuesday, December 9, 2014 7:02 AM
  • You need to handle this in your display driver. CE supports multimonitor through the GPE function GetGPEPerCard, see http://msdn.microsoft.com/en-us/library/ms892503.aspx

    More up-to-date link: http://msdn.microsoft.com/en-us/library/ee491267.aspx


    Good luck,

    Michel Verhagen, eMVP
    Check out my blog: http://guruce.com/blog

    GuruCE
    Microsoft Embedded Partner
    http://guruce.com
    Consultancy, training and development services.


    Tuesday, December 9, 2014 7:32 AM
    Moderator
  • Hi Michel,

    The link explains about the display cards connected through PCI I think. 

    I will have to modify that if I am not using PCIe right? 

    I didn't understand about the PCI presence here, is it that only display cards connected through PCI can be used?

    Thank you for your all the replies.


    Seeth

    Tuesday, December 9, 2014 9:59 AM
  • The example shows 2 PCI cards, but whatever subsystem you use doesn't matter.

    All you need to do is implement GetGPEPerCard. The function name is maybe not great, because you can have 1 "card" (or module) that supports multiple outputs (like for instance on the iMX processors where the IPU supports 2 output ports). It doesn't change the procedure though.


    Good luck,

    Michel Verhagen, eMVP
    Check out my blog: http://guruce.com/blog

    GuruCE
    Microsoft Embedded Partner
    http://guruce.com
    Consultancy, training and development services.

    Wednesday, December 10, 2014 12:10 AM
    Moderator
  • Michel, 

    Thank you. 

    Yeah, I use iMX processor where IPU supports two DI output ports. 

    In display driver if DI0 is connected with a device, driver does not check for the DI1 even if the device is connected. 

    In GetGPEPerCard->EnableAllCard() function, they are checking the PCI devices. What should be the implementation here with respect to iMX. I am thinking I should read the registry here.



    Seeth

    Wednesday, December 10, 2014 8:52 AM
  • Whatever works, it depends on how you implement it...

    Good luck,

    Michel Verhagen, eMVP
    Check out my blog: http://guruce.com/blog

    GuruCE
    Microsoft Embedded Partner
    http://guruce.com
    Consultancy, training and development services.

    Wednesday, December 10, 2014 9:06 PM
    Moderator
  • We were able to implement multi-monitor setup on Freescale i.MX6Q custom board.

    Resulting setup looks as in below snap:

    We had one GPE object earlier in the display driver to be given to it. 

    We have created two objects and we handled the display driver in such a way that we create two paths to the monitors. 

    Thank you,


    Seeth

    • Marked as answer by Seeth Wednesday, September 2, 2015 7:50 AM
    Wednesday, September 2, 2015 7:38 AM