Patent Description:
In the digital LEDs manufacturer industries, many different formats or standards exist for controlling the data sequence of digital LED. <CIT> discloses a DALI System comprising a controller receiving an input signal comprising a converting module for converting a received second data format to a first data format or to bypass a received first data format as an output signal and having a data output module being connected to first type of LED device. <CIT> discloses a lighting network with a serial data input, serial data outputs, light sources and a lighting driver. A lighting unit receives serial input data and in response, outputs serial output data to a lightning driver which in turn, drives light sources. When the user purchases different types of digital LEDs from different manufacturers, he or she also needs to replace the whole set of controllers to adapt the new digital LEDs. The reconfiguration of the hardware settings or reinstallation of the software for meeting different types of digital LEDs' data communication sequence is troublesome to the users. Therefore, there's a need in the field to develop new and effective digital LED controllers.

Embodiments of the present disclosure generally relate to a digital LED controller for an illumination device in accordance with the appended claims.

In another embodiment, a method for controlling an illumination device is disclosed.

The above and other embodiments of the present disclosure are described in more details in the following contexts.

So that the manner in which the above described features of the present disclosure can be understood, a more specific description of the disclosure, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. However, the appended drawings only illustrate exemplary embodiments of this disclosure. It is to be understood that the disclosure may admit to other equally effective embodiments, and therefore the appended drawings should not be considered as limiting the scope of the present disclosure.

To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common in the figures. For the sake of clarity, the various embodiments shown in the figures are not necessarily drawn to scale and are illustrative representations.

Now the embodiments of the present disclosure will be described in details with reference to the drawings.

<FIG> illustrates a block diagram of a digital LED controller <NUM> for an illumination device according to an embodiment of the present disclosure. As shown in <FIG>, the digital LED controller <NUM> may include a data input module <NUM>, a determining module <NUM>, a data output module <NUM>, and a command input module <NUM>.

The data input module <NUM> is configured to receive an input signal and send the input signal to the determining module <NUM>. The input signal is transmitted from a computing system to the data input module <NUM>. The computing system can be any kind of physical computing system with a communicating interface, such as a desktop computer, laptop computer, mobile device, tablet computer, microprocessor, Application-specific integrated circuit (ASIC), System on a Chip (SoC), Field Programmable Gate Array (FPGA), and the like.

The determining module <NUM> stores one or more data format for driving different types of digital LED device, and is configured to determine whether the input signal received from the data input module belongs to the data format for driving the existing type of digital LED device, and then generate an output signal based on the input signal. That is, the determining module <NUM> reformats the input signal based on the data format to generate the output signal. Then, the determining module <NUM> sends the output signal to the data output module <NUM>. Conversely, if the determining module <NUM> determines that the input signal received from the data input module belongs to the data format for driving the existing type of digital LED device, the determining module <NUM> will bypass the input signal as an output signal to the data output module <NUM>.

The data output module <NUM> receives the output signal from the determining module <NUM>, and is configured to output the output signal to drive the illumination device. In such way, the input signal transmitted by the computing system drives the illumination device through the digital LED controller <NUM>.

As shown in <FIG>, the command input module <NUM> may be communicably coupled to the determining module <NUM>, and may receive a command from a user. The command input module <NUM> is able to construct one or more data format on the determining module <NUM> based the user's command. In an example, if there is no data format stored on the determining module <NUM> prior to receiving the command on the command input module <NUM>, the command input module <NUM> may construct the one or more data format on the determining module <NUM> based on the user's command. In another embodiment, one or more default data format is stored on the determining module <NUM> in advance. Upon receiving the command on the command input module <NUM>, the command input module <NUM> may re-construct one or more data format on the determining module <NUM> based the user's command In such way, the user may re-construct one or more data format in the controller by the command to adapt for all different types of digital LEDs.

<FIG> illustrates a block diagram of the determining module <NUM> of the controller <NUM> of <FIG>. The determining module <NUM> further includes a converting module <NUM> and a storage <NUM>. The converting module <NUM> is configured to convert the input signal into the output signal, which drives the existing type of digital LED device of the illumination device. The storage <NUM> stores a first data format used to drive a first type of digital LED device and a second data format used to drive a second type of digital LED device. When the illumination device only includes the second type of digital LED device, the determining module <NUM> determines whether the input signal belongs to the second data format. If the input signal is determined different from the second data format by the determining module <NUM>, the converting module <NUM> converts the input signal into the second data format. Conversely, when the illumination device only includes the first type of digital LED device, the determining module <NUM> determines whether the input signal belongs to the first data format. If the input signal is determined different from the first data format by the determining module <NUM>, the converting module <NUM> converts the input signal into the first data format. In such way, the user may change the type of the digital LED device without reconfiguring the hardware setting or reinstalling the software to meet the new type of the digital LED device.

In an example, if there is no data format stored on the storage <NUM> prior to receiving the command on the command input module <NUM>, the command input module <NUM> may construct the first data format and the second data format on the storage <NUM> based on the command. In another embodiment, the first default data format and the second default data format are stored on the storage <NUM> in advance. Upon receiving the command on the command input module <NUM>, the command input module <NUM> may re-construct the first data format and the second data format on the storage <NUM> based the command. Usually, the data format for driving the conventional LED may be single-signal type or dual-signal type. The single-signal type also refers to a signal that can be decoded without the need for a separate clock signal, and the dual-signal type refers to a signal that can be decoded with the need for a separate clock signal. In one embodiment, the first data format may include a clock signal and a data signal, and the second data format may include a data signal without a clock signal. In another embodiment, the first data format may include a data signal without a clock signal, and the second data format may include a clock signal and a data signal. In still another embodiment, both the first data format and the second data format may include a data signal without a clock signal. In still another embodiment, both the first data format and the second data format may include a data signal and a clock signal. In such way, the user may change one digital LED device driven by a clock signal and a data signal to another digital LED device driven by a data signal without a clock signal, and vice versa.

<FIG> is a flow diagram illustrating a method <NUM> for controlling an illumination device according an embodiment of the present disclosure with the digital LED controller <NUM> of <FIG>. As shown, the method <NUM> begins with step <NUM>, wherein the data input module <NUM> of the digital LED controller <NUM> receives an input signal from a computing system. The input signal is then transmitted from the data input module <NUM> to the determining module <NUM>. Next, at step <NUM>, the determining module <NUM> of the digital LED controller <NUM> determines whether the input signal received from the data input module <NUM> belongs to the at least one data format and generate an output signal based on the input signal. As stated above with reference to <FIG>, the determining module <NUM> is configured with at least one data format stored thereon for driving at least one type of digital LED device. In one embodiment, the at least one data format is stored on the determining module <NUM> prior to receiving the input signal from the data input module <NUM>. After the determining module <NUM> generates the output signal, it passes the output signal to the data output module <NUM>. At step <NUM>, the data output module <NUM> may drive the illumination device based on the output signal received from the determining module <NUM>.

<FIG> is a flow diagram illustrating another method <NUM> for controlling an illumination device with the digital LED controller <NUM> of <FIG>. As shown, the method <NUM> begins with step <NUM>, wherein the command input module <NUM> of the digital LED controller <NUM> receives a command from a user. There is no data format stored on the determining module <NUM> prior to receiving the command on the command input module <NUM>, and the command input module <NUM> may construct the at least one data format on the determining module <NUM> based the command. At step <NUM>, the data input module <NUM> of the digital LED controller <NUM> receives an input signal from a computing system. The input signal is then transmitted from the data input module <NUM> to the determining module <NUM>. Next, at step <NUM>, the determining module <NUM> of the digital LED controller <NUM> determines whether the input signal received from the data input module <NUM> belongs to the at least one data format and generates an output signal based on the input signal. As stated above with reference to <FIG>, the determining module <NUM> is configured with at least one data format stored thereon for driving at least one type of digital LED device. After the determining module <NUM> generates the output signal, it passes the output signal to the data output module <NUM>. At step <NUM>, the data output module <NUM> drives the illumination device based on the output signal received from the determining module <NUM>.

As described herein, the computing system may include a central processing unit (CPU), a memory, and a storage device. The computing system may also include an I/O device interface connecting I/O devices (e.g., keyboard, mouse, and display devices) to the computing system. The CPU extracts and executes programming instructions stored in the memory. A bus can be used to transmit programming instructions between the CPU, the I/O device interface, the storage device, and the memory. The CPU may be a single CPU, multiple CPUs, a single CPU with multiple processing cores, and the likes. Memory may be a random access memory. Storage may be a disk drive storage device or a combination of fixed and/or removable storage devices, such as fixed disc drives, removable memory cards, or optical storage.

One or more computer-readable storage media store computer-executable instructions, that when being executed, cause a digital LED controller <NUM> to perform the method <NUM>, <NUM>.

As will be understood by one skilled in the art, aspects of the present disclosure may be embodied as a system, method or computer program product. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, software, micro-code, etc.) or an embodiment combining software and hardware. Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable mediums having computer readable program code embodied thereon.

A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More specific examples of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In addition, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.

Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C#, Smalltalk, C++ or the likes and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, or partly on the user's computer and partly on a remote computer.

Aspects of the present disclosure are described above with reference to flowchart and block diagrams of methods, apparatus and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart and block diagrams, and combinations of blocks in the flowchart and block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, implement the functions specified in the flowchart and block diagram block or blocks.

These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function specified in the flowchart and block diagram block or blocks.

For example, two blocks shown in succession may, in fact, be executed substantially concurrently, executed in parallel, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and flowchart illustration, and combinations of blocks in the block diagrams and flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.

Claim 1:
A digital LED controller (<NUM>) for an illumination device, comprising:
a data input module (<NUM>) configured to receive an input signal and to send the input signal to a determining module (<NUM>);
the determining module (<NUM>) comprising a converting module (<NUM>) and a storage (<NUM>);
wherein the converting module (<NUM>) is configured to convert the input signal into an output signal, which output signal drives an existing type of digital LED device of the illumination device; and
wherein the storage (<NUM>) stores a first data format used to drive a first type of digital LED device and a second data format used to drive a second type of digital LED device; and
wherein the determining module (<NUM>) is configured to:
(a) determine whether the input signal belongs to the second data format when the illumination device only comprises the second type of LED device; and if the input signal is different from the second data format, the converting module (<NUM>) converts the input signal into the second data format; and
(b) determines whether the input signal belongs to the first data format when the illumination device only comprises the first type of LED device; and if the input signal is different from the first data format, the converting module (<NUM>) converts the input signal into the first data format; and
(c) wherein when the determining module (<NUM>) determines that the input signal received from the data input module (<NUM>) belongs to the data format for driving the existing type of digital LED device, the determining module (<NUM>) will bypass the input signal as the output signal; and
wherein the existing type of digital LED device is one of the first type of digital LED device and the second type of digital LED device; and
wherein the digital LED controller comprises a data output module (<NUM>) configured to drive the illumination device based on the output signal received from the determining module (<NUM>).