Plaque It!
Sponsored by: Flash of Genius |
[0001] The present invention relates generally to the field of peripheral devices, and more particularly, to initialization operations for such devices.
[0002] Printers and other peripheral type devices store programs and data in RAM, such as soft fonts, templates, forms, and various other items. However, when the peripheral device loses power, those programs, data, and other items are lost. When power is restored to the peripheral device, those programs, files, and other items must be re-downloaded into the peripheral device. Having a hard disk installed on the peripheral device solved some of these problems. However, many peripheral devices do not contain hard disks, and it would be expensive to install hard disks thereon.
[0003] Briefly, the present invention comprises in one embodiment, a method for customizing a network peripheral device, comprising the steps of: sending a request with an ID for the peripheral device to a computer on the network requesting at least one initialization task; the computer searching a memory for the initialization task based on the peripheral device ID and retrieve that initialization task; and executing the retrieved task to cause a communication with the peripheral device to initialize the peripheral device.
[0004] In a variation of the present invention, the ID for the peripheral device is an IP address.
[0005] In a further variation of the present invention, the IP address is stored in a non-volatile memory of the peripheral device.
[0006] In a further variation of the present invention, the sending a request step comprises: obtaining a MAC address or equivalent for the peripheral device; broadcasting the MAC address on the network or on a subnet; obtaining an IP address that correlates to the MAC address; and sending the IP address as the ID of the peripheral device to the computer and requesting at least one initialization task.
[0007] In a further variation of the present invention, the initialization task is a script.
[0008] In a further variation of the present invention, the initialization task obtains a font from a location on the network and downloads the font to initialize the peripheral device with the font.
[0009] In a further variation of the present invention, the initialization task obtains a list and location of forms and/or templates from a location on the network and downloads them to initialize the peripheral device.
[0010] In a further variation of the present invention, the initialization task obtains a set of security keys, permissions, and/or passwords from a location on the network and downloads them a memory to initialize the peripheral device.
[0011] In a further variation of the present invention, the peripheral device ID is contained within a URL, and wherein the URL contains an address to a computer on the network, and the URL is used to request execution of the initialization task.
[0012] In a further variation of the present invention, the peripheral device is a printer.
[0013] In a further variation of the present invention, the sending step comprises broadcasting the request on the network.
[0014] In a further variation of the present invention, each of a plurality of different computers on the network retrieves a different initialization task and executes its respective retrieved initialization task to cause a communication with the peripheral device to initialize a different aspect of the peripheral device.
[0015] In a further variation of the present invention, each of the different initialization tasks has a priority, and wherein the peripheral device receives the different communications and then initializes in the sequence of the priority.
[0016] In a further embodiment of the present invention, a peripheral device is provided, comprising: a device functional engine; a network communications module; a small non-volatile memory containing an ID or a reference for an ID for the peripheral device; and a boot program that sends a request via the network communications module for an initialization task and receives a communication from the network that initializes the peripheral device.
[0017] In a further variation of the present invention, the network includes a plurality of listening computers, and wherein the boot program contains code to send the request for an initialization task via the network communications module to the plurality of listening computers, and wherein the peripheral device receives a different communication from a plurality of the different listening computers, with each communication initializing a different aspect of the peripheral device.
[0018]
[0019]
[0020]
[0021] Referring now to
[0022] The nonvolatile memory
[0023] Referring now to
[0024] Referring to block
[0025] Referring now to block
[0026] Referring to block
[0027] Referring now to block
[0028] Referring now to the initialization task, a variety of different initialization tasks may be accessed. By way of example, such an initialization task, which may be set forth in script, might include such items as a list and location of soft fonts to download; a list and location of forms and templates to download; a location of a localization file to download and use; a set of security keys, permissions, passwords, and other similar security information that is to be stored in the RAM for the peripheral device; a URL of a timeserver from which to set the real-time clock for the peripheral device; and a list of network drives to mount. As a further example of a typical initialization task, an appendix is set forth with an example. This appendix describes a first line of script comprising a command to cause a computer to send to a printer
[0029] Referring now to block
[0030] Referring now to
[0031] Referring to block
[0032] Referring now to block
[0033] Referring to block
[0034] Referring to block
[0035] Referring to block
[0036] Referring to block
[0037] It can be seen that more than one computer may respond to the request on the subnet or the network for an initialization task. Accordingly, multiple initialization communications may occur either simultaneously or within a short period of time. There will be situations where certain of the initialization tasks must be performed before other of the initialization tasks. In order to accomplish this sequence of task performance, each of the initialization tasks can be given a priority designation, with the peripheral device loading or otherwise initializing in accordance with this priority.
[0038] The foregoing description of a preferred embodiment of the invention has been presented for purpose of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and modifications and variations are possible in light of the teachings or may be acquired from practice of the invention. The embodiment was chosen and described in order to explain the principles of the invention and its practical application to enable one skilled in the art to utilize the invention in various embodiments and with various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the claims appended hereto, and their equivalent.