WO2008060819A2 - Apparatus and method for allowing display modules to communicate information about themselves - Google Patents
Apparatus and method for allowing display modules to communicate information about themselves Download PDFInfo
- Publication number
- WO2008060819A2 WO2008060819A2 PCT/US2007/082001 US2007082001W WO2008060819A2 WO 2008060819 A2 WO2008060819 A2 WO 2008060819A2 US 2007082001 W US2007082001 W US 2007082001W WO 2008060819 A2 WO2008060819 A2 WO 2008060819A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- module
- display
- display module
- adjacent
- coordinates
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1601—Constructional details related to the housing of computer displays, e.g. of CRT monitors, of flat displays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2300/00—Aspects of the constitution of display devices
- G09G2300/02—Composition of display devices
- G09G2300/026—Video wall, i.e. juxtaposition of a plurality of screens to create a display screen of bigger dimensions
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/16—Use of wireless transmission of display information
Definitions
- the present invention relates generally to the field of display panels, and more specifically, to an apparatus and method for allowing display modules to communicate information about themselves to other display modules in the same display panel.
- LED is the dominant technology used in full-color outdoor display panels; however, there are other types of display technologies —such as plasma, LCD (liquid crystal display) and CRT (cathode ray tube) — that are also based on a modular design.
- display technologies such as plasma, LCD (liquid crystal display) and CRT (cathode ray tube) — that are also based on a modular design.
- plasma plasma
- LCD liquid crystal display
- CRT cathode ray tube
- Another method for solving the problem of ascertaining where each display module is located relative to other display modules is to associate a switch (preferably a DIP (dual in-line package) or rotary switch) with each module.
- a switch preferably a DIP (dual in-line package) or rotary switch
- Each switch is uniquely set for each module by a technician.
- the switch settings must be correctly set in order to identify the position of the module in the display panel, and the setting typically constitutes a row and column assignment.
- the problem with this method is that the burden for correctly setting the switches falls on the installer. With large display panels consisting of hundreds of modules, this can be a tedious and error prone method of configuring the display panel. Furthermore, it is time-consuming.
- Module address programming involves programming each module with an external device or via a control panel physically located on the module itself. This method is obviously labor-intensive and prone to human error.
- a software configuration file can be used to map the location of display modules on a display panel. This method assigns to each module its own unique address, which is usually programmed at the factory. A technician then enters these addresses into a software configuration file, and a main controller reads the software configuration file to generate a lookup table to determine the coordinate location of each module.
- the present invention is an apparatus for allowing display modules to communicate information about themselves to other display modules in the same display panel, comprising a module-based display panel, wherein the display panel comprises one or more faces, wherein each face comprises a plurality of display modules, wherein each display module comprises at least three borders, wherein at least one of the borders is adjacent to another display module, wherein a transmitter, receiver or transceiver is located on each border that is adjacent to another display module, wherein the transmitters, receivers and/or transceivers are configured so that each transmitter or transceiver on a given display module is adjacent to a receiver or transceiver on an adjacent display module, wherein the transmitters or transceivers on a given display module transmit information about that display module to the adjacent receivers or transceivers, wherein the receivers or transceivers on a given display module receive information about the adjacent display module from the adjacent transmitters or transceivers, and wherein the information is used by the display modules and/or a main controller to determine the location of the display module within
- the transmitters, receivers and/or transceivers communicate information using LC resonator circuits to generate alternating magnetic fields between adjacent display modules.
- the information that is transmitted and received between adjacent display modules is identifier information.
- the identifier information from the display modules is preferably transmitted to a sign mapping software program that maps the location of the display modules on the display panel.
- the sign mapping software program preferably discovers all separate sign faces and assigns x-y coordinates to every display module in each sign face.
- the x-y coordinates that are assigned to each display module by the sign mapping software program are converted to actual x-y coordinates, and the actual x-y coordinates are converted to video coordinates.
- the present invention also covers a method for allowing display modules to communicate information about themselves to other display modules in the same display panel, comprising: wherein a display panel comprises one or more faces, wherein each face comprises a plurality of display modules, wherein each display module comprises at least three borders, wherein at least one of the borders on each display module is adjacent to another display module, locating a transmitter, receiver or transceiver on each border that is adjacent to another display module; and configuring the transmitters, receivers and/or transceivers so that each transmitter or transceiver on a given display module is adjacent to a receiver or transceiver on an adjacent display module; wherein the transmitters or transceivers on a given display module transmit information about that display module to the adjacent receivers or transceivers, wherein the receivers or transceivers on a given display module receive information about the adjacent display module from the adjacent transmitters or transceivers, and wherein the information is used by the display modules and/or a main controller to determine the location of the display module within a display
- the method further comprises using LC resonator circuits to communicate information between the transmitters, receivers and/or transceivers by generating alternating magnetic fields between adjacent display modules.
- the information that is transmitted and received between adjacent display modules is identifier information.
- the identifier information from the display modules is preferably transmitted to a sign mapping software program that maps the location of the display modules on the display panel.
- the sign mapping software program preferably discovers all separate sign faces and assigns x-y coordinates to every display module in each sign face.
- the x-y coordinates that are assigned to each display module by the sign mapping software program are converted to actual x-y coordinates, and the actual x-y coordinates are converted to video coordinates.
- Figure 1 is a diagram of one embodiment of the present invention in which a display module has four borders and is equipped with two transmitters and two receivers.
- Figure 2 is a diagram of the transmitter circuit of the present invention.
- Figure 3 is a diagram of the receiver circuit of the present invention.
- Figure 4 is a diagram of a display panel with two faces.
- FIG. 5 is a flow diagram of one aspect of the software functionality of the present invention.
- Figure 6 is a flow diagram of yet another aspect of the software functionality of the present invention.
- Figure 7 is a flow diagram of yet another aspect of the software functionality of the present invention.
- the present invention allows the individual display modules of a module-based display panel to communicate with adjacent display modules to share information.
- each display module shares its identifier information with display modules adjacent to its left and top borders.
- each display module receives identifier information from neighboring modules located to its right and bottom, it uses known communication mechanisms to send this identifier information — plus its own identifier — to the display panel's main control module, which in turn sends the data to the display panel's controller software.
- the present invention includes software code that interprets the identifier data collected from the individual display modules to calculate the position of each display module in the display panel and associate its identifier with the appropriate x-y coordinates. Once the software calculates this information, a sign technician can save the information in the controller software's configuration file, eliminating the need to collect and update this information manually.
- the present invention comprises a hardware component and a software component, both of which are described more fully below.
- each display module is preferably equipped with two transmitters and two receivers.
- the display module is equipped with one or more transceivers in lieu of one or more of the transmitters and/or receivers.
- the following description will refer to transmitters and receivers; however, a transceiver could be used in place of any or all of the transmitters and receivers.
- one transmitter is located on the top border of the display module (1), while the second transmitter is located on the display module's left border (4).
- the first receiver is located on the display module's right border (2), while the second receiver is located on the display module's bottom border (3).
- a display module's transmitters are adjacent to the receivers of the display module next to it. This allows a display module to communicate information about itself to the display module above it and to its left; it learns about display modules located to its right and below it.
- the transmitters and receivers communicate information using LC (inductor/capacitor) resonator circuits to generate alternating magnetic fields between adjacent display modules.
- LC capacitor/capacitor
- EMI Electromagnetic Interference
- Other preferred embodiments to allow communication between display modules could include wired connections or short-distance wireless communication mechanisms such as Infrared (IR), Bluetooth, or Radio Frequency Identification (RFID).
- IR Infrared
- RFID Radio Frequency Identification
- each display module transmits an identification packet to its neighbors every ten seconds using On-Off Keying (OOK).
- Circuit board logic converts information to be transmitted in this information packet into electromagnetic pulses that are sent via the LC resonator circuit to the receiving display module.
- Logic on the receiving display module converts the received signals to a binary format that can be used to "read" the information sent across the connection.
- this communicated information is the identifier of the transmitting display module.
- the communication mechanism of the present invention can be used to send diagnostic data or other information of interest from one display module to another. Table 1 shows the format of the communication packets in the present embodiment.
- the preferred embodiment uses serial communication between the display modules with a baud rate of 1000 bps and one start bit, 8 data bits and one stop bit.
- the LC circuits have a resonance frequency set by the inductance of the inductor and the capacitance of the capacitor.
- Figure 2 shows the transmitter circuit of the present invention.
- the transmitter circuit drives both ends of the LC circuit with opposite levels of 3.3V CMOS logic to effectively generate a 6.6V square wave, driven at the resonant frequency.
- the circuit can store this energy because the wave is driven at the resonant frequency.
- the amplitude increases until the energy losses equal the energy added, resulting in large transmit signal strength.
- FIG. 3 shows the receiver circuit of the present invention.
- the receiver circuit includes an LC circuit that absorbs energy from the alternating magnetic field generated by the transmitter.
- One side of the resonator is biased to approximately 1.6V, and a set of Schottky diodes limits the amplitude from getting too large.
- a comparator compares the resonator voltage to a threshold voltage of approximately 82 mV. If no or very little signal is present (less than the threshold voltage), the comparator will not trip and the output remains low. If the signal is of sufficient amplitude to trip the comparator, the comparator will output a square wave at the resonance (carrier) frequency. Circuit board logic processes the output of the receiver circuit to detect the presence of the square wave and convert it to binary format.
- an active square wave indicates a binary value of "0,” while an idle signal indicates a binary value of "1.”
- the receiving display module converts the square waves sent by the transmitting display module into binary data that contains information: in this case, the identifier of the transmitting display module.
- each display module After using the communication mechanism of the present invention to learn the identifiers of the display modules located on its right and bottom borders, each display module stores the identifiers of its neighbors in memory. When polled, each display module sends this stored identifier information — along with its own identifier — to the display panel's main controller. The main controller can then pass this collected information to the software algorithm that maps the location of the display modules on the display panel.
- each module could immediately send identifier information to the controller without storing in memory, either autonomously or in response to a poll.
- Another alternative would be for each module to broadcast the identifier information to all other modules in the display. Each module could then determine its own position in the display panel using the information received without intervention from the controller.
- a display module has four borders (top, right, left and bottom); however, the present invention also works with display modules that have three borders.
- a transceiver would be located on each border of the display module that is adjacent to another display module.
- the present invention would work as described above in all other respects.
- the sign mapping software of the present invention accepts collected identifier information and processes it to determine the x-y coordinates of each display module on one or more sign 'faces.
- a display panel may have multiple screens, or faces, as shown in Figure 4.
- a face is a grouping of display modules that are physically contiguous; faces are not physically contiguous to each other and may or may not display the same video data as other faces in the display panel.
- the present invention will work with any sign mapping software program that can take the information from the receivers or transceivers located on the display modules and use that information to map the location of the display modules on the display panel.
- the present invention is not limited to any particular type of sign mapping software program, as long as it accomplishes this function.
- the discussion below is intended to describe one possible version of the sign mapping software program.
- the display modules report their identifier information back to the software. This identification information includes the module ID itself ("me”), as well as ID information for a module to the right of the module (if detected) and ID information for a module below the module (if detected).
- the module list element includes coordinate information (x and y), face ID information, and coordinate validity information (which indicates whether coordinates have been assigned to that module).
- Processing begins by initializing the first face identifier to zero (i.e., assigning an index or identifier of zero to the first face). Subsequent faces are preferably assigned face identifiers in increments of one (I 5 2, 3, etc.). The software then starts at the beginning of the list and examines the first module list element to determine whether coordinates have been assigned to that module. If a module list element is found with invalid coordinates (i.e., no coordinates assigned), then module coordinate processing begins for that module. If a module list element has valid coordinates (i.e. , coordinates have been assigned to the module), then the next module list element in the list is examined in turn until the end of the list is encountered.
- module coordinates can be "corrected” and translated from module coordinates to video coordinates. Specifically, module coordinates are normalized such that the upper left module has coordinates (0,0), and module coordinates are converted to video (pixel) coordinates, as explained more fully below.
- the software algorithm assumes that this is the start of a new face and initializes the initial face coordinate values to (0,0). These initial coordinates are assigned to the first module comprising the face (which is the first module to be examined and not necessarily the module that ultimately ends up with coordinates (0,0) after correction).
- the algorithm attempts to see, in turn, if there is a module to the right, below, to the left, or above the current display module that does not have coordinates assigned.
- the first of these situations that is encountered causes the module processing to shift to the newly discovered module, with a change in the module's coordinates based upon the position of the new module.
- a module to the right has the x coordinate increased by one
- below has y increased by one
- to the left has x decresed by one
- above has y decreased by one.
- the software algorithm saves the state of the next processing path that can be performed on the current module list element to a LIFO (Last In First Out) list of module "state” information records (also called a “stack").
- This state information allows the algorithm to come back and pursue alternate module configuration processing paths on a face, in the event that a processing path comes to a dead end. For example, if a module is found to the right of a display module, the algorithm would "push" the state of the processing to indicate that the next processing to be performed would be below the current display module.
- the current module coordinates (x and y) are saved, as well as a reference to the current display module list element.
- the processing stack for the face is examined. If stack is not empty, the last entry pushed (or added to the stack) is "popped" off (removed from) the stack, that record information is used to restore the processing state information for the module referenced by the stack record, and a new module processing path begins.
- the state information is used by the software to pick up where it left off in module processing. For example, if a module was being processed, and a module to the right was found, the processing path would follow the module to the right.
- each module has "module coordinates," which are relative to the first module in the face that was encountered (which is assigned module coordinates 0,0 by default). Note that a module's coordinates may be negative in both coordinate axes.
- the software then "normalizes" the coordinates for a face, such that the module with the most negative coordinates (preferably the module in the upper left-hand corner of the face) is normalized to coordinates (0,0), and other modules that comprise the face are reassigned module coordinates relative to this particular module. In this manner, all negative coordinates are eliminated.
- the module coordinates are converted to video coordinates by multiplying each module's x coordinate by the module's width (in video pixels) and by multiplying each module's y coordinate by the module's height (in video pixels).
- the element is examined to see if coordinates have been assigned. If so, the algorithm moves to the next element in the module element list and checks this element to see if coordinates have been assigned. This step is repeated in turn until a module is encountered that has unassigned coordinates, or until the end of the list is reached. When the end of the list is reached, all faces have been identified, and all relative coordinates of the modules that comprise the face have been assigned.
- the CorrectCoordinates algorithm is called to normalize module coordinates and to convert the module coordinates to video pixel coordinates. Otherwise, if an element is encountered with unassigned coordinates, it is assumed that this module is a member of a new face.
- x and y coordinate variables are initialized to zero to provide a reference for the initial coordinate assignment.
- the "module_stack" state information stack list is initialized to empty (e.g., no state information has been added to the stack list).
- the variable DONE is then initialized to FALSE 5 indicating that all processing paths for this face have not been completed.
- the current x and y coordinates are then assigned to this module list element.
- the module element list is then examined to see if a module within the list has the same "me" module identifier as the current module's "right” identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the state information pertaining to the current module is saved by pushing state information that is comprised of the module list element reference, the current x and y coordinate values and the next processing path that needs to be evaluated for this module (in this case the NEXT MODULE BELOW the current module). The x coordinate is then incremented by one, indicating that the next module to be evaluated is to the right of the current module. The current module list element is then replaced by a reference to the new display module that has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
- the module element list is then examined to see if a module within the list has the same "me" module identifier as the current module's "below” identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the state information pertaining to the current module is saved by pushing state information that is comprised of a the module list element reference, the current x and y coordinate values and the next processing path that needs to be evaluated for this module (in this case the NEXT MODULE LEFT of the current module). The y coordinate is then incremented by one, indicating that the next module to be evaluated is below the current module. The current module list element is then replaced by a reference to the new display module that has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
- the module element list is then examined to see if a module within the list has a "right" module identifier that matches the current module's "me” identifier (a match indicates that the module found is to the left of the current module). If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the state information pertaining to the current module is saved by pushing state information that is comprised of the module list element reference, the current x and y coordinate values and the next processing path that needs to be evaluated for this module (in this case the NEXT MODULE ABOVE the current module).
- the x coordinate is then decremented by one, indicating that the next module to be evaluated is to the left of the current module.
- the current module list element is then replaced by a reference to the new display module that has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
- the module element list is then examined to see if a module within the list has a "below" module identifier that matches the current module's "me” identifier (a match indicates that the module found is above the current module). If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the y coordinate is then decremented by one, indicating that the next module to be evaluated is above the current module (no processing path state information needs to be saved here because this processing path is the last that needs to be evaluated for the current module). The current module list element is then replaced by a reference to the new display module that has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
- a reference to a "newDisplayModule” is initially set to an INVALID reference, indicating that no suitable new processing path has been found. Note that the "newDisplayModule" reference will be set to a valid display module reference in the algorithm as described below, should a display module with a valid processing path be found.
- the "module_stack" state information list is examined, and if it is empty, a check is executed to determine if a "newDisplayModule" reference has been found, indicating a new processing path that can be pursued. If so, the current module list element is assigned to this "newDisplayModule," and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connect designator 1 within Figure 5). Note that these x and y coordinates are based upon the state information retrieved from the "module stack," described in more detail below.
- module_stack If the "module_stack" is found to be empty (no state information elements are left in the list) and the "newDisplayModule” reference is INVALID, the algorithm assumes that all processing paths that could have been pursued for the current face are complete. The algorithm then increments the face ID by 1 (in anticipation of identifying another face) and sets the DONE flag to TRUE (indicating that the current face processing is complete). The algorithm then jumps to connector designator 1 within Figure 5.
- module_stack If the "module_stack" is not empty, state information from the first element off the stack is retrieved. Since the stack list is a LIFO (Last In First Out) stack, the state information from the last module processed will be retrieved. This state information represents an alternate processing path for a module that has not yet been explored, and may be available as a path for further module coordinate assignment.
- LIFO Last In First Out
- the x and y coordinates for the display module are restored from the state information retrieved from the stack. These are the x and y coordinates that have already been assigned to the retrieved display module whose information has just been retrieved from the stack.
- the current module list element is then set to the list element reference contained within the state information retrieved from the stack.
- the saved "state" variable is examined. This represents the next processing path that should be examined for the retrieved display module.
- the module element list is then examined to see if a module within the list has the same "me” module identifier as the current module's "below” identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the y coordinate is then incremented by one, indicating that the next module to be evaluated is below the current module, the "newDisplayModule” is set to the reference to the new display module that has been found, the current state information record is "popped" (removed) from the "module_stack," and the algorithm jumps back to the point where the module stack is examined to determine if it is "empty” (as described above).
- the module element list is then examined to see if a module within the list has the same "right" module identifier as the current module's "me” identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned.
- the x coordinate is then decremented by one, indicating that the next module to be evaluated is to the left of the current module, the "newDisplayModule" is set to the reference to the new display module that has been found, the current state information record is "popped" (removed) from the "module_stack," and the algorithm jumps back to the point where the module stack is examined to determine if it is "empty” (as described above).
- the module element list is then examined to see if a module within the list has the same "below" module identifier as the current module's "me” identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned.
- the y coordinate is then decremented by one, indicating that the next module to be evaluated is above the current module, the "newDisplayModule" is set to the reference to the new display module that has been found, the current state information record is "popped” (removed) from the "module_stack," and the algorithm jumps back to the point where the module stack is examined to determine if it is "empty” (as described above).
- the state is none of NEXT MODULE BELOW, NEXT MODULE LEFT, NEXT MODULE TOP, or the results of the NEXT MODULE LEFT examination either did not find a display module to the left of the current module list element or a display module was found but already had coordinates assigned, the "newDisplayModule" reference is set to INVALID, the current state information is "popped" (removed) from the "module_stack," and the algorithm jumps back to the point where the module state is examined to determine if it is "empty” (as described above).
- the module processing information (current module list element, x and y coordinates) has been restored to the point that coordinates can be assigned to the new module, and processing can continue via the newly determined processing path.
Abstract
An apparatus for allowing display modules to communicate information about themselves to other display modules in the same display panel, comprising a module-based display panel wherein each face of the panel comprises a plurality of display modules, wherein the transmitters, receivers and/or transceivers are configured so that each transmitter or transceiver on a given display module is adjacent to a receiver or transceiver on an adjacent display module, wherein the transmitters or transceivers on a given display module transmit information about that display module to the adjacent receivers or transceivers, wherein the receivers or transceivers on a given display module receive information about the adjacent display module from the adjacent transmitters or transceivers, and wherein the information is used by the display modules and/or a main controller to determine the location of the display module within a display panel.
Description
APPARATUS AND METHOD FOR ALLOWING DISPLAY MODULES
TO COMMUNICATE INFORMATION ABOUT THEMSELVES TO OTHER DISPLAY MODULES IN THE SAME DISPLAY PANEL
CROSS-REFERENCE TO RELATED APPLICATION
This application claims priority back to U.S. Patent Application No. 11/558,014 filed on 9 November 2006. The contents of that application are hereby incorporated by reference into the present disclosure.
BACKGROUND OF THE INVENTION
1. Field of the Invention.
The present invention relates generally to the field of display panels, and more specifically, to an apparatus and method for allowing display modules to communicate information about themselves to other display modules in the same display panel.
2. Description of the Related Art.
Most electronic signs or display panels today are based on a modular construction, that is, they are comprised of a plurality of display modules. LED is the dominant technology used in full-color outdoor display panels; however, there are other types of display technologies — such as plasma, LCD (liquid crystal display) and CRT (cathode ray tube) — that are also based on a modular design. The challenge with any of these modular display panels is ascertaining where each module is relative to the other modules so that the controller can send the appropriate video data to the correct module.
Existing methods of dealing with this problem include the use of: (1) specific cabling; (2) daisy chain cabling; (3) module address switch; (4) module address programming; and (5) a software configuration file. Each of these methods, and its shortcomings, is discussed below.
The problem with specific cabling is that each module has to have its own special cable. A burden is therefore placed upon the installer to connect each module to its specific cable. In large display panels with hundreds of cables, wiring errors are common and difficult to find and correct.
With daisy chain cabling, the controller is connected to the first module, which is connected to the second module, which is connected to the third module, etc. Daisy chain cabling is not very flexible and requires specific cabinet layouts. Often times cabinet designs or display panel configurations are not optimal for the number of modules on a chain, requiring additional controllers. Another problem with daisy chain cabling is that if a module fails, all other modules connected to it downstream will also lose data, causing a large portion of the display panel to fail when only one module has failed. Furthermore, daisy chaining modules creates electrical signal integrity problems since a large amount of data must pass through each module to get to the next one.
Another method for solving the problem of ascertaining where each display module is located relative to other display modules is to associate a switch (preferably a DIP (dual in-line package) or rotary switch) with each module. Each switch is uniquely set for each module by a technician. The switch settings must be correctly set in order to identify the position of the module in the display panel, and the setting typically constitutes a row and column assignment. The problem with this method is that the burden for correctly setting the switches falls on the installer. With large display panels consisting of hundreds of modules, this can be a tedious and error prone method of configuring the display panel. Furthermore, it is time-consuming.
Yet another method for solving the problem of mapping displaying modules on a display panel is to use module address programming. Module address programming involves programming each module with an external device or via a control panel physically located on the module itself. This method is obviously labor-intensive and prone to human error.
Finally, a software configuration file can be used to map the location of display modules on a display panel. This method assigns to each module its own unique address, which is usually programmed at the factory. A technician then enters these addresses into a software configuration file, and a main controller reads the software configuration file to generate a lookup table to determine the coordinate location of each module.
Although manual creation of the controller software configuration file works, it can take a single technician two to three hours to fully populate the configuration file with coordinates and corresponding display module addresses before the display panel
can be tested and installed. As the overall dimensions of the display panel increase, the size of the configuration file must also increase; some larger display panels require over 2000 separate entries in the configuration file. Due to the sheer number of entries and the potential complexity of the display module addressing scheme, manual entry of display module addresses and coordinates is prone to error. If a single character is transposed or typed incorrectly in a module address or x-y coordinate, the display panel will display image information incorrectly. Debugging these errors is difficult and time-consuming, often requiring a technician to repeat the same process he or she used to create the configuration file in the first place.
If the process of creating the configuration file is cumbersome, maintenance of the configuration file after the display panel has been installed can be equally complicated. When an LED display module fails, an electrician or other sign technician must manually replace it. Because each display module has its own unique address, the technician must update the configuration file to match existing display panel coordinates with the address of the new display module. This means the technician must manually record the address of the old and new circuit boards while in the field, and then gain access to the controller software's configuration file to replace the address of the old display module with the address of the new one. This manual process is susceptible to recording or input error and is complicated by the fact that the individual replacing the display module in the field may not have either the computer expertise or the physical access to the controller software to update the configuration file successfully.
What is needed is an automated method to populate the configuration file of the display panel's controller software with the identifiers and associated x-y coordinates of each display module in the display panel. Such a solution would eliminate the manual steps required to create the controller software configuration file, both when populating it before installation of the display panel and when updating it during maintenance following deployment.
BRIEF SUMMARY OF THE INVENTION
The present invention is an apparatus for allowing display modules to communicate information about themselves to other display modules in the same display
panel, comprising a module-based display panel, wherein the display panel comprises one or more faces, wherein each face comprises a plurality of display modules, wherein each display module comprises at least three borders, wherein at least one of the borders is adjacent to another display module, wherein a transmitter, receiver or transceiver is located on each border that is adjacent to another display module, wherein the transmitters, receivers and/or transceivers are configured so that each transmitter or transceiver on a given display module is adjacent to a receiver or transceiver on an adjacent display module, wherein the transmitters or transceivers on a given display module transmit information about that display module to the adjacent receivers or transceivers, wherein the receivers or transceivers on a given display module receive information about the adjacent display module from the adjacent transmitters or transceivers, and wherein the information is used by the display modules and/or a main controller to determine the location of the display module within a display panel.
In a preferred embodiment, the transmitters, receivers and/or transceivers communicate information using LC resonator circuits to generate alternating magnetic fields between adjacent display modules. Preferably, the information that is transmitted and received between adjacent display modules is identifier information. The identifier information from the display modules is preferably transmitted to a sign mapping software program that maps the location of the display modules on the display panel. The sign mapping software program preferably discovers all separate sign faces and assigns x-y coordinates to every display module in each sign face.
In a preferred embodiment, the x-y coordinates that are assigned to each display module by the sign mapping software program are converted to actual x-y coordinates, and the actual x-y coordinates are converted to video coordinates.
The present invention also covers a method for allowing display modules to communicate information about themselves to other display modules in the same display panel, comprising: wherein a display panel comprises one or more faces, wherein each face comprises a plurality of display modules, wherein each display module comprises at least three borders, wherein at least one of the borders on each display module is adjacent to another display module, locating a transmitter, receiver or transceiver on each border that is adjacent to another display module; and configuring the transmitters, receivers
and/or transceivers so that each transmitter or transceiver on a given display module is adjacent to a receiver or transceiver on an adjacent display module; wherein the transmitters or transceivers on a given display module transmit information about that display module to the adjacent receivers or transceivers, wherein the receivers or transceivers on a given display module receive information about the adjacent display module from the adjacent transmitters or transceivers, and wherein the information is used by the display modules and/or a main controller to determine the location of the display module within a display panel.
In a preferred embodiment, the method further comprises using LC resonator circuits to communicate information between the transmitters, receivers and/or transceivers by generating alternating magnetic fields between adjacent display modules. Preferably, the information that is transmitted and received between adjacent display modules is identifier information. The identifier information from the display modules is preferably transmitted to a sign mapping software program that maps the location of the display modules on the display panel. The sign mapping software program preferably discovers all separate sign faces and assigns x-y coordinates to every display module in each sign face.
In a preferred embodiment, the x-y coordinates that are assigned to each display module by the sign mapping software program are converted to actual x-y coordinates, and the actual x-y coordinates are converted to video coordinates.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a diagram of one embodiment of the present invention in which a display module has four borders and is equipped with two transmitters and two receivers.
Figure 2 is a diagram of the transmitter circuit of the present invention.
Figure 3 is a diagram of the receiver circuit of the present invention.
Figure 4 is a diagram of a display panel with two faces.
Figure 5 is a flow diagram of one aspect of the software functionality of the present invention.
Figure 6 is a flow diagram of yet another aspect of the software functionality of the present invention.
Figure 7 is a flow diagram of yet another aspect of the software functionality of the present invention.
REFERENCE NUMBERS
1 Top display module transmitter
2 Right display module receiver
3 Bottom display module receiver
4 Left display module transmitter
DETAILED DESCRIPTION OF INVENTION
The present invention allows the individual display modules of a module-based display panel to communicate with adjacent display modules to share information. In the preferred embodiment, each display module shares its identifier information with display modules adjacent to its left and top borders.
In the preferred embodiment, as each display module receives identifier information from neighboring modules located to its right and bottom, it uses known communication mechanisms to send this identifier information — plus its own identifier — to the display panel's main control module, which in turn sends the data to the display panel's controller software.
The present invention includes software code that interprets the identifier data collected from the individual display modules to calculate the position of each display module in the display panel and associate its identifier with the appropriate x-y coordinates. Once the software calculates this information, a sign technician can save the information in the controller software's configuration file, eliminating the need to collect and update this information manually.
The present invention comprises a hardware component and a software component, both of which are described more fully below.
A. Hardware
To allow the display modules to communicate information with one another, each display module is preferably equipped with two transmitters and two receivers. In an alternate embodiment, the display module is equipped with one or more transceivers in
lieu of one or more of the transmitters and/or receivers. For purposes of illustration, the following description will refer to transmitters and receivers; however, a transceiver could be used in place of any or all of the transmitters and receivers.
As shown in Figure 1, one transmitter is located on the top border of the display module (1), while the second transmitter is located on the display module's left border (4). The first receiver is located on the display module's right border (2), while the second receiver is located on the display module's bottom border (3). With this configuration, a display module's transmitters are adjacent to the receivers of the display module next to it. This allows a display module to communicate information about itself to the display module above it and to its left; it learns about display modules located to its right and below it.
In a preferred embodiment of the present invention, the transmitters and receivers communicate information using LC (inductor/capacitor) resonator circuits to generate alternating magnetic fields between adjacent display modules. This approach is advantageous because of its low cost, its low Electromagnetic Interference (EMI), and the fact that it requires no change to the display module installation process. Other preferred embodiments to allow communication between display modules could include wired connections or short-distance wireless communication mechanisms such as Infrared (IR), Bluetooth, or Radio Frequency Identification (RFID).
In a preferred embodiment, each display module transmits an identification packet to its neighbors every ten seconds using On-Off Keying (OOK). Circuit board logic converts information to be transmitted in this information packet into electromagnetic pulses that are sent via the LC resonator circuit to the receiving display module. Logic on the receiving display module converts the received signals to a binary format that can be used to "read" the information sent across the connection. In the preferred embodiment, this communicated information is the identifier of the transmitting display module. In other preferred embodiments, the communication mechanism of the present invention can be used to send diagnostic data or other information of interest from one display module to another.
Table 1 shows the format of the communication packets in the present embodiment.
Table 1 - Communication Packet Structure
The preferred embodiment uses serial communication between the display modules with a baud rate of 1000 bps and one start bit, 8 data bits and one stop bit.
The LC circuits have a resonance frequency set by the inductance of the inductor and the capacitance of the capacitor. Figure 2 shows the transmitter circuit of the present invention. The transmitter circuit drives both ends of the LC circuit with opposite levels of 3.3V CMOS logic to effectively generate a 6.6V square wave, driven at the resonant frequency. The circuit can store this energy because the wave is driven at the resonant frequency. The amplitude increases until the energy losses equal the energy added, resulting in large transmit signal strength.
Figure 3 shows the receiver circuit of the present invention. The receiver circuit includes an LC circuit that absorbs energy from the alternating magnetic field generated by the transmitter. One side of the resonator is biased to approximately 1.6V, and a set of Schottky diodes limits the amplitude from getting too large. A comparator compares the resonator voltage to a threshold voltage of approximately 82 mV. If no or very little signal is present (less than the threshold voltage), the comparator will not trip and the output remains low. If the signal is of sufficient amplitude to trip the comparator, the comparator will output a square wave at the resonance (carrier) frequency. Circuit board logic processes the output of the receiver circuit to detect the presence of the square wave and convert it to binary format. An active square wave indicates a binary value of "0," while an idle signal indicates a binary value of "1." Using this method, the receiving display module converts the square waves sent by the transmitting display module into binary data that contains information: in this case, the identifier of the transmitting display module.
After using the communication mechanism of the present invention to learn the identifiers of the display modules located on its right and bottom borders, each display module stores the identifiers of its neighbors in memory. When polled, each display module sends this stored identifier information — along with its own identifier — to the display panel's main controller. The main controller can then pass this collected information to the software algorithm that maps the location of the display modules on the display panel. Alternatively, each module could immediately send identifier information to the controller without storing in memory, either autonomously or in response to a poll. Another alternative would be for each module to broadcast the identifier information to all other modules in the display. Each module could then determine its own position in the display panel using the information received without intervention from the controller.
The above discussion assumes that a display module has four borders (top, right, left and bottom); however, the present invention also works with display modules that have three borders. In the case of a display module with three borders, a transceiver would be located on each border of the display module that is adjacent to another display module. The present invention would work as described above in all other respects.
B. Software
The sign mapping software of the present invention accepts collected identifier information and processes it to determine the x-y coordinates of each display module on one or more sign 'faces.' A display panel may have multiple screens, or faces, as shown in Figure 4. A face is a grouping of display modules that are physically contiguous; faces are not physically contiguous to each other and may or may not display the same video data as other faces in the display panel.
The present invention will work with any sign mapping software program that can take the information from the receivers or transceivers located on the display modules and use that information to map the location of the display modules on the display panel. Thus, the present invention is not limited to any particular type of sign mapping software program, as long as it accomplishes this function. The discussion below is intended to describe one possible version of the sign mapping software program.
In a preferred embodiment of the software, the display modules report their identifier information back to the software. This identification information includes the module ID itself ("me"), as well as ID information for a module to the right of the module (if detected) and ID information for a module below the module (if detected). A list is then built of this module information, and all elements in the list ("module list elements") are initialized to indicate that coordinate information has not been assigned to the module associated with the list element (e.g. , coordinatesValid = false). The module list element includes coordinate information (x and y), face ID information, and coordinate validity information (which indicates whether coordinates have been assigned to that module).
Processing begins by initializing the first face identifier to zero (i.e., assigning an index or identifier of zero to the first face). Subsequent faces are preferably assigned face identifiers in increments of one (I5 2, 3, etc.). The software then starts at the beginning of the list and examines the first module list element to determine whether coordinates have been assigned to that module. If a module list element is found with invalid coordinates (i.e., no coordinates assigned), then module coordinate processing begins for that module. If a module list element has valid coordinates (i.e. , coordinates have been assigned to the module), then the next module list element in the list is examined in turn until the end of the list is encountered.
Once all of the module list elements contained within the list have been examined to determine coordinate validity, coordinates can be "corrected" and translated from module coordinates to video coordinates. Specifically, module coordinates are normalized such that the upper left module has coordinates (0,0), and module coordinates are converted to video (pixel) coordinates, as explained more fully below.
If the software encounters a module with invalid (i.e., unassigned) coordinates, the software algorithm assumes that this is the start of a new face and initializes the initial face coordinate values to (0,0). These initial coordinates are assigned to the first module comprising the face (which is the first module to be examined and not necessarily the module that ultimately ends up with coordinates (0,0) after correction).
The algorithm then attempts to see, in turn, if there is a module to the right, below, to the left, or above the current display module that does not have coordinates
assigned. The first of these situations that is encountered (for example, if there is a module to the right of the current display module) causes the module processing to shift to the newly discovered module, with a change in the module's coordinates based upon the position of the new module. In other words, a module to the right has the x coordinate increased by one, below has y increased by one, to the left has x decresed by one, and above has y decreased by one.
Before processing shifts to this new module, however, the software algorithm saves the state of the next processing path that can be performed on the current module list element to a LIFO (Last In First Out) list of module "state" information records (also called a "stack"). This state information allows the algorithm to come back and pursue alternate module configuration processing paths on a face, in the event that a processing path comes to a dead end. For example, if a module is found to the right of a display module, the algorithm would "push" the state of the processing to indicate that the next processing to be performed would be below the current display module. The current module coordinates (x and y) are saved, as well as a reference to the current display module list element.
Once a processing path has been exhausted (e.g. , there is no module to the right, below, to the left, or above the current display module), the processing stack for the face is examined. If stack is not empty, the last entry pushed (or added to the stack) is "popped" off (removed from) the stack, that record information is used to restore the processing state information for the module referenced by the stack record, and a new module processing path begins. In other words, the state information is used by the software to pick up where it left off in module processing. For example, if a module was being processed, and a module to the right was found, the processing path would follow the module to the right. The software needs to remember, however, that other processing paths (above, below and to the left of the current module) are still available for processing. Ultimately, if no module list elements are left on the stack, then the algorithm assumes that all the processing that can be performed on that face is completed, and it subsequently goes back to examine the overall module list to see if subsequent faces need to be processed.
When all of the faces in the display panel have been processed, then the software performs a coordinate correction function. Each module has "module coordinates," which are relative to the first module in the face that was encountered (which is assigned module coordinates 0,0 by default). Note that a module's coordinates may be negative in both coordinate axes.
The software then "normalizes" the coordinates for a face, such that the module with the most negative coordinates (preferably the module in the upper left-hand corner of the face) is normalized to coordinates (0,0), and other modules that comprise the face are reassigned module coordinates relative to this particular module. In this manner, all negative coordinates are eliminated.
After this is accomplished, the module coordinates are converted to video coordinates by multiplying each module's x coordinate by the module's width (in video pixels) and by multiplying each module's y coordinate by the module's height (in video pixels).
This process is explained more fully below in connection with Figure 5-7. Referring to Figure 5, upon execution of the PerformlnternalAutoConflguration algorithm, it is assumed that the list of module element information has been created, and that all module coordinate assignment information has been initialized to "unassigned." Starting at the top of Figure 5, the software initializes the face ID to zero. The first decision box evaluates whether any module elements have been added to the list. If not, there is no further processing to be performed. Otherwise, the current module list element is set to the first element of the module list.
The element is examined to see if coordinates have been assigned. If so, the algorithm moves to the next element in the module element list and checks this element to see if coordinates have been assigned. This step is repeated in turn until a module is encountered that has unassigned coordinates, or until the end of the list is reached. When the end of the list is reached, all faces have been identified, and all relative coordinates of the modules that comprise the face have been assigned. The CorrectCoordinates algorithm is called to normalize module coordinates and to convert the module coordinates to video pixel coordinates. Otherwise, if an element is encountered with unassigned coordinates, it is assumed that this module is a member of a new face.
For the new face, x and y coordinate variables are initialized to zero to provide a reference for the initial coordinate assignment. The "module_stack" state information stack list is initialized to empty (e.g., no state information has been added to the stack list). The variable DONE is then initialized to FALSE5 indicating that all processing paths for this face have not been completed. The current x and y coordinates are then assigned to this module list element.
The module element list is then examined to see if a module within the list has the same "me" module identifier as the current module's "right" identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the state information pertaining to the current module is saved by pushing state information that is comprised of the module list element reference, the current x and y coordinate values and the next processing path that needs to be evaluated for this module (in this case the NEXT MODULE BELOW the current module). The x coordinate is then incremented by one, indicating that the next module to be evaluated is to the right of the current module. The current module list element is then replaced by a reference to the new display module that has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
If no display module is found to the right of the current display module, or if a display module is found but its coordinates had already been assigned, the algorithm moves to connector designator 2, on the top of Figure 6.
Beginning at connector designator 2 at the top of Figure 6, the module element list is then examined to see if a module within the list has the same "me" module identifier as the current module's "below" identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the state information pertaining to the current module is saved by pushing state information that is comprised of a the module list element reference, the current x and y coordinate values and the next processing path that needs to be evaluated for this module (in this case the NEXT MODULE LEFT of the current module). The y coordinate is then incremented by one, indicating that the next module to be evaluated is below the current module. The current module list element is then replaced by a reference to the new display module that
has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
If no display module is found below the current display module, or if a display module is found but its coordinates have already been assigned, the module element list is then examined to see if a module within the list has a "right" module identifier that matches the current module's "me" identifier (a match indicates that the module found is to the left of the current module). If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the state information pertaining to the current module is saved by pushing state information that is comprised of the module list element reference, the current x and y coordinate values and the next processing path that needs to be evaluated for this module (in this case the NEXT MODULE ABOVE the current module). The x coordinate is then decremented by one, indicating that the next module to be evaluated is to the left of the current module. The current module list element is then replaced by a reference to the new display module that has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
If no display module is found to the left of the current display module, or if a display module is found but its coordinates had already been assigned, the module element list is then examined to see if a module within the list has a "below" module identifier that matches the current module's "me" identifier (a match indicates that the module found is above the current module). If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the y coordinate is then decremented by one, indicating that the next module to be evaluated is above the current module (no processing path state information needs to be saved here because this processing path is the last that needs to be evaluated for the current module). The current module list element is then replaced by a reference to the new display module that has been found, and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connector designator 1 within Figure 5).
If no display module is found above the current display module, or if a display module is found but its coordinates have already been assigned, control passes to connector designator 3 at the top left of Figure 7.
Beginning at connector designator 3 at the top left of Figure 7, at this point in the algorithm, a single processing path has been exhausted. However, alternate processing paths may have been saved (pushed to the stack) for each module processed. These processing paths represent processing paths that have not yet been pursued.
A reference to a "newDisplayModule" is initially set to an INVALID reference, indicating that no suitable new processing path has been found. Note that the "newDisplayModule" reference will be set to a valid display module reference in the algorithm as described below, should a display module with a valid processing path be found.
The "module_stack" state information list is examined, and if it is empty, a check is executed to determine if a "newDisplayModule" reference has been found, indicating a new processing path that can be pursued. If so, the current module list element is assigned to this "newDisplayModule," and the algorithm jumps back to the point where x and y coordinates are assigned to the current module list element (connect designator 1 within Figure 5). Note that these x and y coordinates are based upon the state information retrieved from the "module stack," described in more detail below.
If the "module_stack" is found to be empty (no state information elements are left in the list) and the "newDisplayModule" reference is INVALID, the algorithm assumes that all processing paths that could have been pursued for the current face are complete. The algorithm then increments the face ID by 1 (in anticipation of identifying another face) and sets the DONE flag to TRUE (indicating that the current face processing is complete). The algorithm then jumps to connector designator 1 within Figure 5.
If the "module_stack" is not empty, state information from the first element off the stack is retrieved. Since the stack list is a LIFO (Last In First Out) stack, the state information from the last module processed will be retrieved. This state information represents an alternate processing path for a module that has not yet been explored, and may be available as a path for further module coordinate assignment.
The x and y coordinates for the display module are restored from the state information retrieved from the stack. These are the x and y coordinates that have already been assigned to the retrieved display module whose information has just been retrieved from the stack. The current module list element is then set to the list element reference
contained within the state information retrieved from the stack. Next, the saved "state" variable is examined. This represents the next processing path that should be examined for the retrieved display module.
If the state is NEXT MODULE BELOW, the module element list is then examined to see if a module within the list has the same "me" module identifier as the current module's "below" identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the y coordinate is then incremented by one, indicating that the next module to be evaluated is below the current module, the "newDisplayModule" is set to the reference to the new display module that has been found, the current state information record is "popped" (removed) from the "module_stack," and the algorithm jumps back to the point where the module stack is examined to determine if it is "empty" (as described above).
If the state is NEXT MODULE LEFT, or the results of the NEXT MODULE BELOW examination either did not find a display module below the current module list element or a display module was found but already had coordinates assigned, the module element list is then examined to see if a module within the list has the same "right" module identifier as the current module's "me" identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the x coordinate is then decremented by one, indicating that the next module to be evaluated is to the left of the current module, the "newDisplayModule" is set to the reference to the new display module that has been found, the current state information record is "popped" (removed) from the "module_stack," and the algorithm jumps back to the point where the module stack is examined to determine if it is "empty" (as described above).
If the state is NEXT MODULE TOP, or the results of the NEXT MODULE LEFT examination either did not find a display module to the left of the current module list element or a display module was found but already had coordinates assigned, the module element list is then examined to see if a module within the list has the same "below" module identifier as the current module's "me" identifier. If a module is found, this new module's coordinates are examined to see if they have been assigned. If not, the y coordinate is then decremented by one, indicating that the next module to be evaluated is above the current module, the "newDisplayModule" is set to the reference to the new
display module that has been found, the current state information record is "popped" (removed) from the "module_stack," and the algorithm jumps back to the point where the module stack is examined to determine if it is "empty" (as described above).
If the state is none of NEXT MODULE BELOW, NEXT MODULE LEFT, NEXT MODULE TOP, or the results of the NEXT MODULE LEFT examination either did not find a display module to the left of the current module list element or a display module was found but already had coordinates assigned, the "newDisplayModule" reference is set to INVALID, the current state information is "popped" (removed) from the "module_stack," and the algorithm jumps back to the point where the module state is examined to determine if it is "empty" (as described above).
Ultimately, if a "newDisplayModule" is found, the module processing information (current module list element, x and y coordinates) has been restored to the point that coordinates can be assigned to the new module, and processing can continue via the newly determined processing path.
Although the preferred embodiment of the present invention has been shown and described, it will be apparent to those skilled in the art that many changes and modifications may be made without departing from the invention in its broader aspects. The appended claims are therefore intended to cover all such changes and modifications as fall within the true spirit and scope of the invention.
Claims
1. An apparatus for allowing display modules to communicate information about themselves to other display modules in the same display panel, comprising a module-based display panel, wherein the display panel comprises one or more faces, wherein each face comprises a plurality of display modules, wherein each display module comprises at least three borders, wherein at least one of the borders is adjacent to another display module, wherein a transmitter, receiver or transceiver is located on each border that is adjacent to another display module, wherein the transmitters, receivers and/or transceivers are configured so that each transmitter or transceiver on a given display module is adjacent to a receiver or transceiver on an adjacent display module, wherein the transmitters or transceivers on a given display module transmit information about that display module to the adjacent receivers or transceivers, wherein the receivers or transceivers on a given display module receive information about the adjacent display module from the adjacent transmitters or transceivers, and wherein the information is used by the display modules and/or a main controller to determine the location of the display module within a display panel.
2. The apparatus of claim 1, wherein the transmitters, receivers and/or transceivers communicate information using LC resonator circuits to generate alternating magnetic fields between adjacent display modules.
3. The apparatus of claim 1 , wherein the information that is transmitted and received between adjacent display modules is identifier information.
4. The apparatus of claim 3, wherein the identifier information from the display modules is transmitted to a sign mapping software program that maps the location of the display modules on the display panel.
5. The apparatus of claim 4, wherein the sign mapping software program discovers all separate sign faces and assigns x-y coordinates to every display module in each sign face.
6. The apparatus of claim 5, wherein the x-y coordinates that are assigned to each display module by the sign mapping software program are converted to actual x-y coordinates.
7. The apparatus of claim 6, wherein the actual x-y coordinates are converted to video coordinates.
8. A method for allowing display modules to communicate information about themselves to other display modules in the same display panel, comprising:
(a) wherein a display panel comprises one or more faces, wherein each face comprises a plurality of display modules, wherein each display module comprises at least three borders, wherein at least one of the borders on each display module is adjacent to another display module, locating a transmitter, receiver or transceiver on each border that is adjacent to another display module; and
(b) configuring the transmitters, receivers and/or transceivers so that each transmitter or transceiver on a given display module is adjacent to a receiver or transceiver on an adjacent display module; wherein the transmitters or transceivers on a given display module transmit information about that display module to the adjacent receivers or transceivers, wherein the receivers or transceivers on a given display module receive information about the adjacent display module from the adjacent transmitters or transceivers, and wherein the information is used by the display modules and/or a main controller to determine the location of the display module within a display panel.
9. The method of claim 8, further comprising using LC resonator circuits to communicate information between the transmitters, receivers and/or transceivers by generating alternating magnetic fields between adjacent display modules.
10. The method of claim 8, wherein the information that is transmitted and received between adjacent display modules is identifier information.
11. The method of claim 10, wherein the identifier information from the display modules is transmitted to a sign mapping software program that maps the location of the display modules on the display panel.
12. The method of claim 11 , wherein the sign mapping software program discovers all separate sign faces and assigns x-y coordinates to every display module in each sign face.
13. The method of claim 12, wherein the x-y coordinates that are assigned to each display module by the sign mapping software program are converted to actual x-y coordinates.
14. The method of claim 13, wherein the actual x-y coordinates are converted to video coordinates.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ES07868521.1T ES2691028T3 (en) | 2006-11-09 | 2007-10-19 | Apparatus and method to allow display modules to communicate information about themselves to other display modules in the same display panel |
EP07868521.1A EP2080189B1 (en) | 2006-11-09 | 2007-10-19 | Apparatus and method for allowing display modules to communicate information about themselves to other display modules in the same display panel |
CN2007800417450A CN101553864B (en) | 2006-11-09 | 2007-10-19 | Apparatus and method for allowing display modules to communicate information about themselves to other display modules in the same display panel |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/558,014 | 2006-11-09 | ||
US11/558,014 US7948450B2 (en) | 2006-11-09 | 2006-11-09 | Apparatus and method for allowing display modules to communicate information about themselves to other display modules in the same display panel |
Publications (3)
Publication Number | Publication Date |
---|---|
WO2008060819A2 true WO2008060819A2 (en) | 2008-05-22 |
WO2008060819A3 WO2008060819A3 (en) | 2008-08-07 |
WO2008060819A8 WO2008060819A8 (en) | 2008-10-30 |
Family
ID=39370227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2007/082001 WO2008060819A2 (en) | 2006-11-09 | 2007-10-19 | Apparatus and method for allowing display modules to communicate information about themselves |
Country Status (6)
Country | Link |
---|---|
US (1) | US7948450B2 (en) |
EP (1) | EP2080189B1 (en) |
CN (1) | CN101553864B (en) |
ES (1) | ES2691028T3 (en) |
TW (1) | TWI475554B (en) |
WO (1) | WO2008060819A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102298917A (en) * | 2011-05-24 | 2011-12-28 | 福州瑞芯微电子有限公司 | Wireless automatic detection screen associated display method and devices |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7782274B2 (en) | 2006-06-09 | 2010-08-24 | Cfph, Llc | Folding multimedia display device |
US7734299B2 (en) * | 2007-03-20 | 2010-06-08 | Microsoft Corporation | Facilitating use of a device based on short-range wireless technology |
TWI358028B (en) * | 2007-12-25 | 2012-02-11 | Htc Corp | Electronic device capable of transferring object b |
US10210793B2 (en) * | 2008-03-11 | 2019-02-19 | Robe Lighting S.R.O. | Array of LED array luminaires |
EP2342627A2 (en) * | 2008-10-20 | 2011-07-13 | Robe Lighting Inc. | Array of led array luminaires |
US8644757B2 (en) * | 2008-12-04 | 2014-02-04 | Nokia Corporation | Method and system for creation and control of virtual rendering devices |
KR20100083914A (en) * | 2009-01-15 | 2010-07-23 | 삼성전자주식회사 | Image forming apparatus and control method the same |
KR101626159B1 (en) * | 2009-11-25 | 2016-05-31 | 엘지전자 주식회사 | User adaptive display device and method thereof |
US20110140991A1 (en) * | 2009-12-15 | 2011-06-16 | International Business Machines Corporation | Multi-monitor configuration system |
CN102254051B (en) * | 2010-05-17 | 2014-12-10 | 深圳市摩西尔电子有限公司 | Method and device for laying out LED (light emitting diode) display module |
CN102609554B (en) * | 2011-01-25 | 2016-09-21 | 深圳市摩西尔电子有限公司 | A kind of method and apparatus of LED giant-screen computer-aided design |
US9124715B2 (en) * | 2011-03-15 | 2015-09-01 | Nokia Technologies Oy | Mobile user apparatus and a mobile accessory apparatus for the mobile user apparatus |
CN102157131A (en) * | 2011-04-15 | 2011-08-17 | 深圳市摩西尔电子有限公司 | LED (Light Emitting Diode) display screen and LED control system |
CN102184725A (en) * | 2011-05-09 | 2011-09-14 | 苏州佳世达电通有限公司 | Assembled display device, information display system and information display method |
TWI462583B (en) * | 2011-05-27 | 2014-11-21 | Qisda Corp | Tv wall system capable of displaying images according to a positioning signal |
US8958745B2 (en) * | 2011-06-21 | 2015-02-17 | Lg Electronics Inc. | Electronic device and operating method thereof |
TW201349018A (en) * | 2012-05-25 | 2013-12-01 | Hon Hai Prec Ind Co Ltd | Multi-monitor system and multi-monitor method |
US9058053B2 (en) * | 2012-10-26 | 2015-06-16 | The Boeing Company | Virtual reality display system |
US9400627B2 (en) * | 2012-12-07 | 2016-07-26 | Samsung Electronics Co., Ltd. | Display including signal transmission scheme using optical interconnection and electrical interconnection |
AU2014233524B2 (en) | 2013-03-15 | 2018-03-22 | The Coca-Cola Company | Display devices |
CN104933988B (en) * | 2015-06-24 | 2018-10-12 | 深圳市中庆光电显示科技开发有限公司 | LED control method, LED pipe reason method and LED display |
GB2545490A (en) | 2015-12-18 | 2017-06-21 | Dst Innovations Ltd | Display device and apparatus |
CN106525023B (en) * | 2016-08-30 | 2019-10-11 | 杭州可余文化创意有限公司 | A kind of array positioning device and the array localization method based on data analysis |
JP7074966B2 (en) | 2016-09-26 | 2022-05-25 | ザ コカ・コーラ カンパニー | Display device |
KR20190037869A (en) * | 2017-09-29 | 2019-04-08 | 삼성전자주식회사 | Display apparatus and controlling method thereof |
CN109523927A (en) * | 2018-12-20 | 2019-03-26 | 慧明光电(深圳)有限公司 | A kind of LED display and control method |
KR102289872B1 (en) * | 2018-12-31 | 2021-08-13 | 주식회사 럭스로보 | A plug and play module assembly and a plug and play system |
US11164934B2 (en) | 2019-03-12 | 2021-11-02 | X Display Company Technology Limited | Tiled displays with black-matrix support screens |
CN112292723B (en) * | 2019-03-13 | 2022-08-16 | 西安诺瓦星云科技股份有限公司 | Display screen configuration control method, device and system |
CN112150980B (en) * | 2019-06-28 | 2022-03-04 | 纬联电子科技(中山)有限公司 | Method for synchronously adjusting screen setting and multi-screen system |
CN112309313B (en) * | 2019-07-26 | 2021-10-01 | 西安诺瓦星云科技股份有限公司 | Module controller configuration method, device and system and computer readable storage medium |
CA3096633A1 (en) * | 2019-10-23 | 2021-04-23 | Cable Management Solutions, Inc. | Cable conveyance systems incorporating electronic visual displays |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050093768A1 (en) | 2003-10-31 | 2005-05-05 | Devos John A. | Display with interlockable display modules |
Family Cites Families (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4562450A (en) * | 1983-03-07 | 1985-12-31 | International Business Machines Corporation | Data management for plasma display |
US4566004A (en) * | 1983-03-07 | 1986-01-21 | International Business Machines Corporation | Data management for plasma display |
US4924410A (en) * | 1986-02-13 | 1990-05-08 | Hitachi, Ltd. | Display control method and system |
US5283861A (en) * | 1990-08-31 | 1994-02-01 | International Business Machines Corporation | Remote control of a local processor console |
DE4404962C2 (en) * | 1994-02-17 | 1999-12-16 | Heidelberger Druckmasch Ag | Method and arrangement for configuring functional units in a master-slave arrangement |
DE4424138C1 (en) * | 1994-07-08 | 1995-09-07 | Siemens Ag | Modular expandable electronic work surface |
EP0734011A3 (en) * | 1995-03-21 | 1999-01-20 | Sun Microsystems, Inc. | Field synchronization of independent frame buffers |
WO1997042597A1 (en) * | 1996-05-09 | 1997-11-13 | Citizen Watch Co., Ltd. | Storage medium system using contactless memory card |
US5986622A (en) * | 1996-05-24 | 1999-11-16 | Lucent Technologies Inc. | Panel display of multiple display units for multiple signal sources |
JPH10333631A (en) * | 1997-06-02 | 1998-12-18 | Daichiyuu Denshi:Kk | Expanded display device, and display system using expanded display device |
US6714172B2 (en) * | 1997-07-14 | 2004-03-30 | Canon Kabushiki Kaisha | Display control system and its control method, switching device, connection device, peripheral device, peripheral device system, and their control method, and computer readable memory |
WO1999039328A1 (en) * | 1998-01-31 | 1999-08-05 | Don William Lindsay | Multiscreen display system and method |
US6897855B1 (en) * | 1998-02-17 | 2005-05-24 | Sarnoff Corporation | Tiled electronic display structure |
US5970105A (en) * | 1998-05-11 | 1999-10-19 | Cleveland Medical Devices Inc. | Apparatus and method for efficient wireless communications in the presence of frequency error |
US6501441B1 (en) * | 1998-06-18 | 2002-12-31 | Sony Corporation | Method of and apparatus for partitioning, scaling and displaying video and/or graphics across several display devices |
JP3582382B2 (en) * | 1998-11-13 | 2004-10-27 | 株式会社日立製作所 | Display control device for multi-display device, display device, and multi-display device |
BE1012634A3 (en) * | 1999-04-28 | 2001-01-09 | Barco Nv | Method for displaying images on a display device, and display device used for this purpose. |
JP4172096B2 (en) * | 1999-06-14 | 2008-10-29 | 三菱電機株式会社 | Image signal generating device, image display device, and control method for image display device |
US6741222B1 (en) * | 1999-07-13 | 2004-05-25 | Daktronics, Inc. | Panelized/modular electronic display |
WO2001007999A1 (en) * | 1999-07-23 | 2001-02-01 | Walter Roland Chen | Modular lcd monitors |
JP3478192B2 (en) * | 1999-08-20 | 2003-12-15 | 日本電気株式会社 | Screen superimposed display type information input / output device |
US6859219B1 (en) * | 1999-10-08 | 2005-02-22 | Gateway, Inc. | Method and apparatus having multiple display devices |
JP4052498B2 (en) * | 1999-10-29 | 2008-02-27 | 株式会社リコー | Coordinate input apparatus and method |
US6489937B1 (en) * | 1999-11-15 | 2002-12-03 | 3Com Corporation | LED matrix control system with Field Programmable Gate Arrays |
US6970145B1 (en) * | 1999-11-19 | 2005-11-29 | Ricoh Company, Ltd. | Method and apparatus for controlling image-display devices collectively |
JP3468288B2 (en) * | 1999-11-30 | 2003-11-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Host device, image display device, image display system, image display method, panel attribute readout method, and image display control method |
JP4639447B2 (en) * | 2000-09-05 | 2011-02-23 | パナソニック株式会社 | Information processing device |
JP4176299B2 (en) * | 2000-09-29 | 2008-11-05 | 富士フイルム株式会社 | Medical image display system |
US6618628B1 (en) * | 2000-10-05 | 2003-09-09 | Karl A. Davlin | Distributed input/output control systems and methods |
US7145611B2 (en) * | 2000-12-22 | 2006-12-05 | Honeywell International, Inc. | Seamless tiled display system |
US20030061409A1 (en) * | 2001-02-23 | 2003-03-27 | Rudusky Daryl | System, method and article of manufacture for dynamic, automated product fulfillment for configuring a remotely located device |
US6529331B2 (en) * | 2001-04-20 | 2003-03-04 | Johns Hopkins University | Head mounted display with full field of view and high resolution |
DE10127998A1 (en) * | 2001-06-08 | 2003-01-09 | Deutsche Telekom Ag | Modular display for image and / or character reproduction |
US7358929B2 (en) * | 2001-09-17 | 2008-04-15 | Philips Solid-State Lighting Solutions, Inc. | Tile lighting methods and systems |
US6710754B2 (en) * | 2001-11-29 | 2004-03-23 | Palm, Inc. | Moveable output device |
KR100922029B1 (en) * | 2001-12-28 | 2009-10-19 | 소니 가부시끼 가이샤 | Display apparatus and control method |
EP1343315A1 (en) * | 2002-03-08 | 2003-09-10 | Synelec Telecom Multimedia | Video wall |
US20050122308A1 (en) * | 2002-05-28 | 2005-06-09 | Matthew Bell | Self-contained interactive video display system |
US6999045B2 (en) * | 2002-07-10 | 2006-02-14 | Eastman Kodak Company | Electronic system for tiled displays |
JP2004078814A (en) * | 2002-08-22 | 2004-03-11 | Project I:Kk | Control program for multi-display device |
US7019713B2 (en) * | 2002-10-30 | 2006-03-28 | The University Of Chicago | Methods and measurement engine for aligning multi-projector display systems |
US7561116B2 (en) * | 2003-01-31 | 2009-07-14 | Microsoft Corporation | Multiple display monitor |
US7155266B2 (en) * | 2004-04-21 | 2006-12-26 | Nokia Corporation | Hinge for fold phone |
ATE394769T1 (en) * | 2003-05-23 | 2008-05-15 | Barco Nv | METHOD FOR DISPLAYING IMAGES ON A LARGE SCREEN DISPLAY MADE OF ORGANIC LIGHT-LIGHT DIODES AND THE DISPLAY USED FOR THIS |
US8046701B2 (en) * | 2003-08-07 | 2011-10-25 | Fuji Xerox Co., Ltd. | Peer to peer gesture based modular presentation system |
EP1662402A1 (en) * | 2003-09-02 | 2006-05-31 | Nikon Corporation | Information processing apparatus and electronic device |
EP1513059A1 (en) * | 2003-09-08 | 2005-03-09 | Barco N.V. | A pixel module for use in a large-area display |
US20050128100A1 (en) * | 2003-09-25 | 2005-06-16 | Petrocy Richard J. | Self addressing control units and modular sign including plurality of self-addressing control units |
US7057590B2 (en) * | 2003-11-04 | 2006-06-06 | Infineon Technologies Ag | LED array implementation |
WO2005065180A2 (en) * | 2003-12-19 | 2005-07-21 | Speechgear, Inc. | Display of visual data as a function of position of display device |
US20050134525A1 (en) * | 2003-12-23 | 2005-06-23 | Gino Tanghe | Control system for a tiled large-screen emissive display |
US7986282B2 (en) * | 2003-12-31 | 2011-07-26 | Zerphy Byron L | Dynamic message sign display panel error detection, correction, and notification |
US7248229B2 (en) * | 2003-12-31 | 2007-07-24 | Zerphy Bryron L | Dynamic message sign display panel communication error detection and correction |
US7482995B2 (en) * | 2004-06-23 | 2009-01-27 | Panasonic Corporation | Control device for a plurality of display devices |
US7557774B2 (en) * | 2004-08-13 | 2009-07-07 | Microsoft Corporation | Displaying visually correct pointer movements on a multi-monitor display system |
US20060044215A1 (en) * | 2004-08-24 | 2006-03-02 | Brody Thomas P | Scalable tiled display assembly for forming a large-area flat-panel display by using modular display tiles |
US20060114172A1 (en) * | 2004-11-26 | 2006-06-01 | Giotti, Inc. | Method and apparatus for LED based modular display |
TW200636434A (en) * | 2004-12-14 | 2006-10-16 | Koninkl Philips Electronics Nv | Modular display super stick |
JP2006211164A (en) * | 2005-01-27 | 2006-08-10 | Hitachi Ltd | Multidisplay composing method and device |
US20070132659A1 (en) * | 2005-08-01 | 2007-06-14 | Sony Corporation | Apparatus and method for displaying image |
BRPI0520501A2 (en) * | 2005-09-02 | 2009-09-29 | G Lec Europ Gmbh | display system |
TW200714032A (en) * | 2005-09-16 | 2007-04-01 | Tatung Co Ltd | Single-to-multiple image division method |
US7636071B2 (en) * | 2005-11-30 | 2009-12-22 | Hewlett-Packard Development Company, L.P. | Providing information in a multi-screen device |
WO2007065244A1 (en) * | 2005-12-06 | 2007-06-14 | Dolby Laboratories Licensing Corporation | Modular electronic displays |
US7877910B2 (en) * | 2006-01-11 | 2011-02-01 | Barco, Inc. | Display system |
JP2007264141A (en) * | 2006-03-27 | 2007-10-11 | National Institute Of Advanced Industrial & Technology | Video display apparatus |
US7847754B2 (en) * | 2006-04-27 | 2010-12-07 | Kabushiki Kaisha Sega | Image processing program and image display device |
US20070279315A1 (en) * | 2006-06-01 | 2007-12-06 | Newsflex, Ltd. | Apparatus and method for displaying content on a portable electronic device |
US8111208B2 (en) * | 2006-06-06 | 2012-02-07 | Young Electric Sign Company | Front and rear removable panel for electronic displays |
US7782274B2 (en) * | 2006-06-09 | 2010-08-24 | Cfph, Llc | Folding multimedia display device |
US7893941B2 (en) * | 2006-09-15 | 2011-02-22 | Rgb Spectrum | Intelligent video graphics switcher |
-
2006
- 2006-11-09 US US11/558,014 patent/US7948450B2/en active Active
-
2007
- 2007-10-19 TW TW096139137A patent/TWI475554B/en active
- 2007-10-19 EP EP07868521.1A patent/EP2080189B1/en active Active
- 2007-10-19 WO PCT/US2007/082001 patent/WO2008060819A2/en active Application Filing
- 2007-10-19 ES ES07868521.1T patent/ES2691028T3/en active Active
- 2007-10-19 CN CN2007800417450A patent/CN101553864B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050093768A1 (en) | 2003-10-31 | 2005-05-05 | Devos John A. | Display with interlockable display modules |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102298917A (en) * | 2011-05-24 | 2011-12-28 | 福州瑞芯微电子有限公司 | Wireless automatic detection screen associated display method and devices |
Also Published As
Publication number | Publication date |
---|---|
TW200836161A (en) | 2008-09-01 |
WO2008060819A8 (en) | 2008-10-30 |
CN101553864A (en) | 2009-10-07 |
EP2080189A4 (en) | 2011-10-19 |
TWI475554B (en) | 2015-03-01 |
WO2008060819A3 (en) | 2008-08-07 |
US20080114476A1 (en) | 2008-05-15 |
EP2080189B1 (en) | 2018-07-18 |
ES2691028T3 (en) | 2018-11-23 |
EP2080189A2 (en) | 2009-07-22 |
US7948450B2 (en) | 2011-05-24 |
CN101553864B (en) | 2011-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7948450B2 (en) | Apparatus and method for allowing display modules to communicate information about themselves to other display modules in the same display panel | |
CN101395429B (en) | Air conditioner and address setting method in air conditioner | |
US9860772B2 (en) | Method and apparatus for determining connection relationship between an antenna feeding port of base station and an antenna port | |
EP1437636A1 (en) | Mobile robot, and system and method for autonomous navigation of the same | |
US20050146485A1 (en) | Automatic detection of dynamic message sign display panel configuration | |
GB2464204A (en) | RFID Providing Device Orientation Data | |
US7103433B1 (en) | Method for providing service for users to determine assembly match information of components | |
US7583193B2 (en) | Method for supporting an antenna wiring, and a system | |
US11726605B2 (en) | Touch sensing device | |
US11615217B2 (en) | Configuration update method for LED display screen, receiver card, LED display module, and LED display screen | |
CN103414020B (en) | A kind of aerial array control device, method and system | |
CN112995172B (en) | Communication method and communication system for butt joint between Internet of things equipment and Internet of things platform | |
KR101268099B1 (en) | Data update device for reprogramming ecu of automobile, connetion device and method thereof | |
WO2019071330A1 (en) | System for identification of the pairs of ports and of the respective patch cords in patch panels of telecommunication networks | |
CN108199935A (en) | Distribution code display methods, terminal, server and computer readable storage medium | |
US8064830B2 (en) | Wireless access system capable of controlling electronic devices and control method thereof | |
CN112506383A (en) | Control method and device of infrared touch screen and infrared touch screen | |
CN1179520C (en) | Apparatus and method for transmission of address, command and/or data telegrams | |
US6466989B1 (en) | Automatic network connection device for wiring to network cable | |
CN108141480A (en) | Addressing in interconnecting unit system | |
JP4234725B2 (en) | Mounting condition determining method, mounting condition determining apparatus, component mounting method, component mounter, and program | |
CN110517475A (en) | A kind of projection device start-up control method and equipment based on power supply timing device | |
US20090002168A1 (en) | Wireless tag reader/writer device and signal transmission/reception method thereof | |
KR102644759B1 (en) | System and Method for Mapping between Power Line and Power Equipment | |
CN112188250B (en) | Learning type process device, control method and remote controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200780041745.0 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07868521 Country of ref document: EP Kind code of ref document: A2 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007868521 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |