[go: up one dir, main page]

MXPA97003805A - System and method of communication with print - Google Patents

System and method of communication with print

Info

Publication number
MXPA97003805A
MXPA97003805A MXPA/A/1997/003805A MX9703805A MXPA97003805A MX PA97003805 A MXPA97003805 A MX PA97003805A MX 9703805 A MX9703805 A MX 9703805A MX PA97003805 A MXPA97003805 A MX PA97003805A
Authority
MX
Mexico
Prior art keywords
printer
host computer
command
processor
configuration
Prior art date
Application number
MXPA/A/1997/003805A
Other languages
Spanish (es)
Other versions
MX9703805A (en
Inventor
Carter Brown Rickey
Peterson Kolb Joseph
William Yohon Edward Jr
Marie Songer Gail
Original Assignee
Lexmark International Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/652,858 external-priority patent/US6246485B1/en
Application filed by Lexmark International Inc filed Critical Lexmark International Inc
Publication of MXPA97003805A publication Critical patent/MXPA97003805A/en
Publication of MX9703805A publication Critical patent/MX9703805A/en

Links

Abstract

A printer communication system includes a printer (20) having a printer driver (34) with memory (38) and a processor (38). The printer (20) receives and transmits information through a port (40) to which host computer (10) is coupled. The printer driver (34) can be programmed to be operable in order to receive commands relating to the configuration through the port (40), processes the commands relating to the configuration, received by the port, foresees immediately that a command is a secure command to process while the printer (20) is busy processing a print job. The printer (10) can respond to the host computer (10) by indicating that the change was successful or that the printer (20) must be taken offline before the change can be made. The printer driver (34) is programmed to be taken offline remotely and put back online. A list command of the symbol set can be used by the printer (20) to send sets of symbols to the host computer (10). The source information may also be sent to a host computer (10) by means of a printer (20) so that a source table that includes sets of associated symbols may be constructed on the computer (1).

Description

SYSTEM AND METHOD OF COMMUNICATION WITH PRINTER TECHNICAL FIELD OF THE INVENTION This invention relates in general to the control of printers, and more particularly to a system and method of communication with a printer. BACKGROUND OF THE INVENTION Printers receive printing data from a source such as a host computer and generate a printed representation of that printing data on a page. A printer can serve either single or multiple guests. For example, a printer can be wired directly to the host's serial or parallel port to serve that guest only. Alternatively, a printer that communicates with a network can be assigned to multiple guests residing in that network. Many printers have included in the past a board for manual monitoring and control of the printer. Manual control could be carried out by means of control devices such as push-button switches, which are sometimes permanently labeled and perform specific functions. A status indication and other monitoring functions can be implemented with the help of indicator lights on the dashboard or by audible alarms or messages sent on a liquid crystal display screen. Typically, such equipment provides control capabilities ranging from rudimentary power switching, an indication of whether the printer is online, or a state of availability, to a variety of more sophisticated functions such as the selection of the paper size, the paper source, font, dot size, density, manual or automatic feeding, printing orientation, duplex mode, lines per page, diagnostic examination and others. The monitoring functions may include providing any number of visual or audible indications that inform a user about the condition or service needs of the printer. These indications may take the form of status messages such as "available" or "busy" indicating the current condition of the printer. They can also take the form of assistance messages such as "paper jam", "paper loading", "low toner", or "open top cover", which ask for operator intervention, or can take the form of codes of Service error indicating problems that require the attention of a service technician. Efforts have been made to provide administrators and users of a network with some ability to monitor and control a remote printer.
An example of this are software programs to configure, manage and repair printers in a network, such as the Novell NetWare® network. Such a program allows a network administrator to perform a number of tasks in relation to a printer located anywhere in the network. For example, the administrator can collect status information and display the operational state and connection status of a given printer on the host computer screen when using a mouse or other pointing device. A printer can also be remotely configured to operate in either the remote printer mode or a standby online service mode. In online standby mode, a separate print service is not required. The printed data from a guest is communicated to a file server where they are wound onto a print waiting line. When the selected printer is available, a wait-line server transfers the job to the printer for printing. In the remote printer mode, the print data wrapped on the file server is copied to the selected printer by a specific print server. The program also allows a network administrator to add or omit online waiting services or files and to install, select or remotely remove the printer's actuators. Some prior art printers, locally connected to a host, have used bidirectional communications implemented with non-standard protocols to allow a guest user to monitor and control the printer. For example, other than an energy switch located anywhere in the printer, the Win Writer 600 operator panel manufactured by Lexmark International, Inc. includes only push buttons labeled "Pause / Summary" and "Cancel" and four labeled indicator lights to show if the printer is "available" or is busy "printing" or requires "paper" or "service". All other monitoring and control functions are available through a graphical user interface (GUI) generated by a Windows-based program that runs on the guest. Although printers of this type could be shared with users of the network to allow them to print jobs, the control and monitoring functions available to the user of the local host were not available to the users of the network. More recently, it has been suggested that dependence on the monitoring and selection functions available through the printer's board, which is part of the printer, is reduced. For this purpose, it has also been suggested that the functions and display of the board be repeated on a monitor. For example, Lexmark has a MarkVision product for this purpose. Although it allows remote access to the printer's board, this approach has maintained a dependency on the printer's control board. The coordination of sources and symbols establishments between a computer and a printer is an important task in the successful and efficient printing of documents. The "source" is simply a set of characters that share the same basic characteristics. Fonts usually take their names from the typeface: courier or helvetica, for example. Each type of letter is accompanied by a guest of specific attributes such as height, density (width), separation, style, symbol set, weight and stroke orientation. The "symbol set" for a font includes the actual characters that can be printed on it. For alphabetic characters and numbers, there is little difference between the sets of symbols, except that most US sources include the dollar sign where European sources is more likely to include the sign for sterling. The fonts and symbol sets available in the printer must be known to the user or otherwise communicated to the host computer to allow proper printing. If the set of symbols used by the computer's display monitor is not used by the printer, there will be differences or abnormal characters on the printed page. One way to address this situation is to know the fonts and symbol sets resident in the printer by using the printer manual and manually entering those into the memory of the host computer. This can be inefficient and does not allow easy changes of fonts and symbol sets in the printer. In this way, it would be desirable to provide information of the source and set of symbols in some automated way to the guest. Accordingly, the need arises for a communication system with the printer that reduces the drawbacks of the previous systems. There is an additional need for a system and method of communication with the printer that allows remote establishment of printer configuration variables and printer monitoring that is independent of a printer control board. There is an additional need for a communication system with the printer that efficiently allows a host computer to be aware of the source and symbol sets available in a printer. SUMMARY OF THE INVENTION The present invention relates to the method and apparatus that addresses the disadvantages, problems and needs established above. One aspect of the invention relates to a printer, which includes a printer driver having a memory for storing a plurality of printer and processor setups, and a port coupled to the printer controller which receives the signals from a host computer, wherein the printer driver receives the configuration change information through the port and processes the configuration change information to effect an update of one or more of the plurality of printer setups that uses the configuration change information while the printer is processing a current print job if the update does not adversely affect the processing of the current print job. According to another aspect of the present invention, a communication system is provided with the printer that will notify the host computer if a command is received with reference to the configuration that is not safe to process immediately, while the printer is busy with the printer. a print job, and will also inform the host computer that it must go offline in order to process the command with reference to the configuration. According to another aspect of the present invention, a printer driver is programmed to receive an off-line, remote command and remotely take the printer off line as soon as possible. According to another aspect of the present invention, a printer driver is programmed to receive an online, remote command and remotely take the printer offline in response to it. According to another aspect of the present invention, a printer driver is programmed to respond to a command of "list symbol sets" by transmitting the resident symbol sets to the host computer. A technical advantage of the present invention is that it allows remote control and monitoring of a printer, including configuration changes, independently of any control board in the printer. Another technical advantage of the present invention is that the independence of the communication system with the printer from the control board of the printer allows the elimination of the entire control panel of the printer. Another technical advantage of the present invention is that printer-configuration-by-security changes can be made immediately by the printer. Another technical advantage of the present invention is that the host computer does not need to know which commands are safe and which commands are insecure before sending a command concerning the configuration to the printer. Another technical advantage of the present invention is that the communication system with the printer will warn the host computer when it must be taken offline before accepting certain commands referring to the "unsafe" configuration. Yet another technical advantage of the present invention is that the information of the symbol set is provided to a host computer from the printer. Another technical advantage is that the symbol set information and the font information are efficiently transferred from the printer to the host without requiring duplicate information of the symbol set. Other features and advantages of the invention can be determined from the drawings and detailed description of the invention that follows. BRIEF DESCRIPTION OF THE DRAWINGS For a more complete understanding of the present invention and advantages thereof, reference is now made to the following description taken in conjunction with the accompanying drawings in which similar reference numerals indicate similar characteristics and where: Figure 1 is a partially graphic perspective illustration, partially schematic of a host computer and a bidirectional communication printer embodying the present invention; Fig. 2 is a block diagram illustrating functional components of the printer in Fig. 1; Figure 3 is a functional block diagram of the architecture of the printer controller 34 in Figures 1 and 2; Fig. 4 is a flow chart illustrating the handling of a packet of information NPAP by the printer 20 under certain conditions; Figure 5 is a flow chart illustrating the handling of an NPA command through the NPAP Work Unit 54 and the Remote Menu Interface 68; Figure 6 is a flow diagram illustrating the process of taking a printer offline remotely; Figure 7 is a functional block diagram demonstrating the transfer of information from the source and symbol set according to one aspect of the present invention; Figure 8 is a flowchart illustrating the transfer and monitoring of fonts and symbol sets by the printer 20; and Figure 9 is a flow chart illustrating the process for transferring information from the symbol set to host computer 10. DETAILED DESCRIPTION OF THE INVENTION Preferred embodiments of the present invention are illustrated in Figures 1-9, references being used similar numbers to refer to corresponding and similar parts of the various drawings. Referring to Figure 1, a typical host computer 10 having a keypad 12 and a display or display 14 associated therewith is shown. The computer 10 has a pointing device 16 such as a mouse, touch screen, rolling ball or hand-held device associated therewith. The pointing device 16 allows to "push" or otherwise indicate and select the features that appear on the display 14. The host computer 10 may be an IBM compatible type using an Intel 80X86 microprocessor such as an 80486 or Pentium. Host computer 10 will typically include components such as an internal hard disk drive or other suitable program memory and one or more disk drives 18 for loading programs and data. Computer 10 may also include other devices such as CD ROM transmission units, optical transmission units, and other devices known in the art. The computer 10 includes a sufficient amount of internal memory such as a random access memory (RAM) to support its operating system as well as any desired software application program to run on the host computer 10. The host computer 10 is also connected to the host computer 10. one or more printers 20 that can be connected to the host computer 10 either locally, such as by cable 22 to a port on the computer 10, or by means of a local area network (LAN) 24 through a card of commercially available network appropriate, installed in an expansion slot available in the host computer 10. A printer 20 installed in the network 24 is connected to the network through the use of an internal network adapter card (INA) or a network adapter external (ENA). The printer 20 can be physically located in a location near or remote to the computer 10. The printer 20 can be, for example, an Optra E laser printer, which is a product of Lexmark International Inc., but which has additional features such as will describe below additionally. The printer 20 may include an on / off switch 28, indicator lights 30, off-line / on-line selector 32, and other features that may be expected in a printer. However, it is understood that although the present invention is shown as a modified Lexmark Optra E laser printer, it can be used with any type of printer including other electrographic printers, inkjet printers, matrix printers, and other types. The computer 10 may include software programs that take advantage of aspects of the invention that are programmed into the printer 20 as will be described below. Through the programming of the computer 10, bidirectional communication between the host computer 10 and the printer 20 is possible. Referring now to Figure 2, a block diagram illustrating the aspects of the functional components of the printer 20 is shown. The printer 20 includes within it the which may be referred to as a computer or printer driver 34 having a microprocessor 36 and a memory 38. The processor 36 and the memory 38 may be coupled using techniques known in the art in such a way that the processor 36 can operate on instructions and data programmed into the memory 38. Additional commands and data can be received by the printer driver 34 through port 40. The printer controller 34 is coupled to a printing mechanism printing machine 42. The printing mechanism 42 can include all the necessary devices to receive signals and print exact information on paper by means such as a laser If the printing mechanism 42 is a laser device, the printing mechanism 42 can include devices for receiving signals from the controller 34, firing and moving the laser beam according to the signals, controlling the movement of the paper, sensitizing the paper to to accept the toner that forms the image, and merge the image on paper. Of course, the printing mechanism 42 can also use other technologies such as a print head used with a dot matrix printer, a print cartridge for use with an ink jet printer, a drum and films that can be used with a dye sublimation color printer, a paper train with color printing tapes that can be used with a color thermal printer, or other devices known in the art. The memory 38 may include a non-volatile random access memory (NVRAM) 44, fast memory 46 and other memory devices 48. The other memory devices 48 may include a random access memory (RAM), a read-only memory (ROM), a programmable cartridge, a hard drive, disks, an additional NVRAM, or other storage device. The controller 34 is programmable to provide the printer 20 with certain features. One of the features involves when and how the default settings are set in the printer 20. Typically, the default settings establishments include sets of instructions for controlling certain parameters of the printing operations carried out by the printer such as sources , paper sizes, page description languages, finishing options and exit deposits. The printer driver 34 is programmed in such a way that the configuration changes that are requested by an application running on the guest 10 are made immediately, if possible, instead of merely placing the demand for a configuration change in a waiting line behind other print jobs. In this way, as the configurations are changed, only certain "safe" demands to change the configuration will be allowed immediately. The term "secure" demands refers to those demands that can be executed by the printer 20 while the printer 20 is processing a print job, and by this means making substantially immediate changes in the configuration of the printer 20 without adversely affecting the processing of the printer. current print job. Other demands, such as, for example, changing data transmission rates, will require that the printer 20 be remotely taken offline before they are carried out. In addition, the printer 20 will indicate to the guest 10 when the guest 10 needs to take the printer remotely offline in order to properly process a demand for "unsafe" configuration change. Referring now to Figure 3, the controller based on a microprocessor 34 is shown with functional blocks. The controller 34 can carry out several tasks and have several programs or stored software codes that can be called by different tasks to carry out functions in support of the tasks. The controller 34 is capable of affecting the normal functions of the printer such as the interpretation of the received print jobs in one or more control languages of the printer by means of port 40, which may be a serial port, parallel port , and / or internal network adapter (INA), and graphically or progressively number the interpreted data to drive a printing machine or printing mechanism 42 in order to form a printed representation of the printing data on a page. The printer controller 34 is able to communicate bi-directionally with the host computer 10 by means of at least one communication channel using the Alliance Protocol with the Network Printer (hereinafter "NPAP"), the which is a published protocol specification of Level 1, Revision N, dated February 11, 1994. The NPAP is expressly incorporated herein, as a reference, in its entirety for all purposes. This communication channel can be port 40 or LAN 24 (figure 1). The port 40 may have a buffer associated with it. The connection of host computer 10 to port 40 may be made by any technique known in the art such as by cable communication 22, which may be a standard parallel interface for an IBM compatible personal computer in accordance with IEE 1284-1994. The main work unit for handling communications compliant with the NPAP is the NPAP Work Unit 54, which may have a buffer associated with it. The NPAP 54 Work Unit performs the functions of handling commands and data in the NPAP format. The NPAP Work Unit 54 supplies printer status information to any host computer 10 locally attached and / or subject to a network and receives requests for such information from guest computers 10. The NPAP 54 Work Unit can be activated periodically through a synchronizer. When activated, the NPAP 54 work unit calls port BIOS 56 of port 40 to determine if data has been received on port 40. If a command of NPAP or command extension of the type described below is received, the unit NPAP 54 Workstation responds through port 40 either directly or after obtaining necessary information from another function in the printer driver 34. It is possible to have the NPAP Work Unit 54"turned off" in such a way that the print data received by the BIOS port 56 can pass directly to the data stream manager 58. However, when the NPAP 54 work unit is "turned on", then only the data in the NPAP format will completely pass. - after removal of packers from NPAP or packaging - to the administrator of data stream 58. Information packaged without NPAP will be rejected. The NPAP 54 Work Unit can also be found in the "automatic" mode, in which the commands or data without NPAP are passed completely to the data stream manager 58 as if the NPAP were "turned off", but the information packaged by NPAP is handled through the NPAP 54 Work Unit when they are received as if the NPAP 54 Work Unit was in the "on" state. As will be further described below, many of the aspects of the invention relate to the transfer of information with the NPAP Work Unit 54 that assists in the handling of data or commands. The printer driver 34 includes an Emulation Administrator Work Unit 60 and interpreters 62. When none of the interpreters or emulators 62 are executed in order to provide data for the subsequent grid and progressive numbering in the printer 20, the Administrator of the Data Stream 58 searches for the print data on port 40 to be directed to the appropriate interpreter 62. In the absence of an active NPAP Work Unit 54, Emulation Manager 60 calls the functions of the Data Stream Manager 58 in order to transfer the print data from the BIOS port 56 to a buffer. If the NPAP Work Unit 54 is "turned on" for a particular port 40, the Data Stream Manager 58 accesses the data from an NPAP Work Unit buffer for that port 40. The Administrator Emulation 60 and the Data Stream Manager 58 cooperate to associate with a "working structure" with each print job received on port 40. The work structure is a set of data associated with each print job and is maintained in memory for a while. The work structure includes an identification number for the print job, an area to record the number of sides of the pages that have been printed, and information about the resolution and other specifications. If the work structure is incomplete, the default configuration of the printer can be consulted for the missing data. The data of the work structure are able to be modified during the printing process to update the status of the work. For example, since each side of the page to be printed is produced by a hardware or printing machine mechanism 42, the work structure is modified to reflect the term of the same. The Emulation Manager 60 also cooperates with the Data Stream Manager 58 to direct each print job to the appropriate interpreter (e.g., a PostScript® or PCL® interpreter). The Data Stream Manager 58 passes the data of the print job in the appropriate language to a selected one of the interpreters 62 until the end of the job, after which the Data Stream Manager 58 provides an end condition. from the-work to the interpreter 62. When the interpreter 62 ends with the print job, indicates its inactivity status to the Emulation Manager 60. As each page is produced, the page is provided to a graphics machine software and a printing mechanism hardware 42 for the eventual grid of the pages to be printed and numbering progressing of the bitmap information to the print mechanism 42. The non-volatile RAM manager 64 (hereinafter "NV Manager") provides a high-level interface through the NVRAM BIOS 66 to the non-RAM - volatile (NVRAM) 44. The NV 64 Administrator is used by the Emulation Manager 60 and the interpreters 62 in the creation of work structure information where such information is derived from values stored in the NVRAM 44. The Work Unit NPAP 54 can also communicate with Administrator NV 64 through the Administrator or Remote Menu Interface (RMI) 68 to read and write NVRAM 44 positioning. Operations can be operated almost immediately under certain conditions, such as when "safe" change demands have been processed. The Status Manager 70 is a unit of work that first learns of events external to the code controller 34 that may occur to the printer 20. The Status Manager 70 notes, for example, whether the printer cover has been opened and instrumented. the proportion of this information back to users such as the NPAP Work Unit 54. State Manager 70 will notice certain conditions due to hardware interruptions to the printer's microprocessor 20, while checking other status information using the 70 State Manager on a selective call basis. The printer configuration changes and the device status alerts are passed from the State Manager 70 to a NPAP Work Unit 54 for communication with the subject host computer 10 using the NPAP. The NPAP will be described in more detail below. The NPA protocol (NPAP) is a protocol that not only defines specific NPAP commands, but also allows other forms of commands or data to be packaged in order to allow the NPAP commands (or extensions) to be interspersed within the normal data stream transmitted through ports 52. When active, the NPAP 54 Work Unit is able to recognize and capture NPAP commands or command extensions from the data stream for special processing while allowing other information is processed in the normal way by means of the Data Stream Manager 58. As indicated in Figure 3, the NPAP 54 Work Unit is able to communicate with the NV 64 Administrator by means of the Menu Interface Remote (RMI) 68 in order to read data from or write information to NVRAM 44. The NPAP 54 Work Unit can also access and modify the information of the work stored. A NPAP communication packet is a structured field of digital information. An NPAP packet includes a packet start byte, a two-byte length field, an indicator byte, and a command byte, followed by a subcommand and / or data fields and associated error verification. For ease of description herein, the error verification bytes that can be placed at the end of each packet in a conventional manner will be omitted. The package structure is then: START LENGTH INDICATOR COMMAND DATA A5 XX XX XX XX XX The entries for the fields are eight-bit bytes shown in hexadecimal notation (hex). Thus, for example, the "start of packet" byte for an NPAP packet is hex A5 (decimal 165). The packet length field is a two-byte word that indicates the number of bytes in the packet, not including the length field itself or the packet start byte. The default value of NPAP for the maximum packet size is 64 bytes. Packages from guest computer 10 to printer 20 are often shorter, normally six to eight bytes long. As an example, a six-bit packet length would be indicated as 00 06. The NPAP Protocol identifies a command that allows a host computer 10 to set the maximum packet length that the host computer 10 will accept. Typically, if the host computer 10 communicates through a network such as LAN 24, the maximum receiver packet size is set to the packet size of the communication protocol used by the network. If the response from the printer 20 is greater than the packet size, the NPAP Work Unit 34 slides the response to two or more acceptably sized packets. The NPAP Work Unit 54 indicates that the next packet is a continuation of the current packet by setting bit 5 in the packet byte.
In the case of messages from the host computer 10 to the printer 20, the purpose of the indicator byte is to provide a single byte that the printer 20 can examine to obtain control information. Each bit of the indicator byte can be defined so that there is a meaning if the bit is set (logic one) or clear (logic zero). For current purposes, bits four and six are of interest (where bit zero is the least significant bit and bit seven is the most significant bit). If set, bit six indicates that the packet contains a message to be processed by the NPAP component of the printer driver 34. If bit six is cleared, the packet contains data for an interpreter of the printer. If set, bit four calls a response from printer 20. If, for example, both bits four and six are set (and no other bit is set), the flag byte is hex 50. In the case of communication from the printer 20 to a host computer 10, the purpose of the indicator byte is to provide a single byte which can examine the host computer 10 to obtain control information for the message and a quick view of the status of the printer 20. As in the case of communications from a host computer 10 to the printer 20, the indicator byte contains individually defined bits. It is of current interest, if established, that bit six indicates that the message is from the NPAP 54 Work Unit of the printer driver 34. If set, bit four means that a response was required by the computer guest 10 (requested through the four bit indicator in the message from the guest). The zero and one bits are set in the state in which the printer 20 is located at the time the response is sent from the printer 20. The meanings of the conditions of these bits (bit one-bit zero) are: 00 - the printer 20 is normally operable without alert conditions, 01- the printer is operable but there is a condition that the operator may wish to have knowledge about (such as a low toner warning), 10 - there is a condition that will prevent the subsequent printing, which can be remedied by the operator, and 11 - there is a condition that will prevent subsequent printing and which can only be remedied by a service / repair call. Returning to the format of a guest computer package 10 - for NPAP printer 20, the fifth byte is a command byte, whose meaning depends on the status of bit six in the indicator byte. If the six bit indicator is set, the command byte contains a command for the NPAP 54 Work Unit of the printer driver 34. If the six indicator bit is cleared, the command byte contains a logical unit designation for the controller. the printer 34. In the case of a reply message from a printer 20 to a host computer 10, the original command or logical unit identification of the guest computer message 10 is returned to the printer 20 which caused the response. If the message from the printer 20 is not requested (indicator bit four rinse and set of six indicator bits) and the command byte is hex Fx (where x is a valid hex digit), then the packet represents a hex type alert Fx. For example, a Device Status Alert (DSA) is indicated by a hex command byte FF. For packets emanating from a host computer 10, the bytes of data that follow the command byte have a meaning that depends on the identifier bit six. If bit identifier six is set, the data field contains either a data or command switch, depending on the command, for the NPAP 54 Work Unit of the printer driver 34. If bit identifier six is cleared, the data field contains data for the input queue of a logical unit inside the printer driver 34.
In the case of NPAP packets emanating from printer 20, when bit identifier six is set, the data field contains Alert data for a Hex Fx command byte or the packet contains error information or the data field contains a command response as called by the command returned in the command byte (set four of bit identifier). When the identifier bit six becomes clear, the data field contains a message from a Logical Unit within the controller 34 (such as an interpreter 62) and byte five identifies the Logical Unit from which the message originates. The published NPA protocol defines a number of commands and subcommands. These include various types of "alerts" proposed to be transmitted from a printer 20 to a host computer 10. These are useful for communicating standard error conditions or changes in printer status. The NPA protocol also provides custom commands or extensions. The use of the NPA commands and subcommands will be discussed below in an additional manner with respect to one embodiment of the present invention. One aspect of the present invention includes that the printer 20 can operate without requiring a front panel or depending on a front panel. This allows the operator panel 74, the BIOS board 76, and the menu manager at site 78 (all shown in dotted lines in Figure 3) to be removed from the printer driver 34. The commands and functions carried out they can now be handled by commands from a host computer 10 that are independently developed and interpreted by devices 74, 76 and 78. Figure 4 demonstrates how controller 34 handles information packaged by NPAP. The information or data packaged by NPAP is received in block 80. Next, it is determined whether the information received in block 80 constitutes an NPAP command as shown in question box 82. If it is a NPAP command, it is processed immediately as indicated in block 84. Below will be described, in addition, how the command is processed immediately. If the answer to question box 82 is negative, the information packed by NPAP is not a command, but data. The host computer 10 can selectively use a reject package option that is programmed into the controller 34. Assuming that the reject package option is selected and that the interrogation box 82 has been answered in negative, a determination is made as reflected by the interrogation box 86 of whether the memory associated with the NPAP Work Unit 54 is sufficiently available to receive the data, thus enabling immediate processing of any potential NPA command waiting in the buffer memory of BIOS port 56. If there is adequate space in the buffer of the NPAP Work Unit 54, the data is moved to the buffer memory as reflected in box 88. If not, the packet is rejected as shown in box 90. Assuming that an NPAP command has been sent, so that box 84 has been proceeded in figure 4, a process flow is shown in figure 5 call to handle the command. Starting at block 92, the first question that is arrived at is whether the command is a Remote Menu Interface (RMI) command as reflected by the interrogation box 94. If it is not an RMI command, the command is handled by the regular NPAP command processor of the NPAP Work Unit 54 as reflected by box 96. If the command is an RMI command, a determination is made in block 98 regarding the type of RMI command that is. There are two basic types of RMI commands, read-type commands (also referred to as type-obtaining commands) and write-type commands (also referred to as type-set commands). A read-type command will only involve reading information stored in the memory 38 (typically NVRAM 44) without modifying it. On the other hand, a write-type RMI command will change or write new configuration data in memory 38 (typically NVRAM 44). Write-type commands can be divided into two groups: "safe" commands and "unsafe" commands. All read-type commands are "safe". A "safe" command is one that can be executed without taking the printer 20 offline. A "non-secure" command is one for which the printer 20 must be taken offline before changing the variable related to the configuration involved. As an aspect of the present invention, the change of a default configuration in the memory 38 is carried out immediately if possible after receiving an appropriate command. That is, the commands do not sit on a waiting line until they are processed, but they are processed asynchronously when it is capable. However, there are times when it is not acceptable because a change in the default configuration would be a potential damage to print projects that are already handled or that are on the waiting line to be handled before the project for which you want the change. In this way, attention should be paid to whether the command should be handled immediately. For example, if you are using a serial port, you have a certain speed in bauds specified in the configuration information and you do not want to change that information while sending a serial job because it might confuse the current job. In this situation, it is desirable to wait until the print job (s) is complete before modifying the speed in bauds. In this way, a command requesting a change of speed in bauds would be recognized by the controller 34 as an unsafe command. In the preferred embodiment, a message is again sent to the user on the host computer 10 which indicates that the printer 20 must be taken offline for such a command to be carried out. This approach is beyond any precaution and efficiency in software programming. Alternatively, it is possible to program the controller 34 to keep the unsecured command demanded in the memory 38 until it is acceptable to change that portion of the configuration after the print job is completed. Referring again to Figure 5, if the command is a read-type RMI command, by definition it is secure, and therefore it is accepted and executed immediately. In this way, the flow proceeds to box 100 where the command is processed immediately. The immediate processing referred to in box 100 may include the quick reading of a variable from the configuration information stored in memory 38 and sending it to a user on host computer 10 as shown by block 102. If the response to question box 98 is negative, it is a write-type RMI command that can be harmful to other printing projects as described above, and therefore, it must be taken into consideration if the command involves a "safe" option as suggested by question box 104. If it is a "safe" option, the processing flow proceeds along path 106 to box 100 for immediate processing. In this case, the immediate processing can involve the immediate writing of a new value for a variable in relation to the configuration in the memory 38. Then, a response indicating that the positioning of the variable was successful can be sent to the host computer 10. as suggested by block 102. If the RMI command is not a secure option and the printer is not currently offline, a message is sent to the host computer 10 that the printer 20 should be taken offline so remote as indicated by the box 108. The programmer of the application software on the computer 10 may be chosen to handle this in several different ways. The demanded command that was unsafe can be stored in the memory of the computer 10 and a command can be generated and sent back to the printer 20, asking the printer 20 to get offline. As will be further described below, once the printer 20 goes offline in response to such a command, a notice to that effect will be sent back to the computer 10 and the application program can then resend the command Not sure, which has been keeping in memory. Note that a command to be taken offline can be sent in preparation to send what is known to be an unsafe command before executing the process shown in Figure 5. This eliminates the need for the process in Figure 5, and the controller the printer 34 immediately processes any received RMI command, regardless of whether the RMI commands are safe or not. However, the process reflected in Figure 5 ensures that the applications on the computer 10 are not required to know whether a command is safe or not since the printer 20 can make the determination and send an appropriate response to the computer 10 if the Printer 20 needs to get offline. As another alternative, the controller 34 may be programmed to contain the unsafe command itself for processing once the printer 20 is taken offline, and sending a response back to the host computer 10 (reference to block 108). ) could merely inform the user of the host computer 10 that there will be some delay in the processing of the command. In addition, the printer 20 can then send an alert to the host computer 10 (immediately after the printer has succeeded in setting up offline and in processing unsafe command (s)) to inform the host. host computer 10 that your claim has been processed. Assuming that the software on the computer 10 has now sent a command to the printer 20 asking that printer 20 to be taken offline, the processing is initiated in block 110 of figure 6. Proceeding from the start block 110, the remote off-line command is received in the printer 20 as indicated by block 112. The command is handled by the NPAP Work Unit 54 which communicates the command to the Remote Menu Interface 68 (Figure 3). The Remote Menu Interface 68 sends a message (inactive) or command to the Status Manager 70 which will handle the take of the printer 20 offline at the appropriate time. This step is reflected in block 114. Before the Status Manager 70 can cause the printer 20 to become inactive, the Emulation Manager 60 must be inactive. As indicated by block 116, State Manager 70 sends a request to be inactive to Emulation Manager 60. Before this claim can be accepted, Emulation Manager 60 should not be busy. The status of Emulation Manager 60 is considered in question box 118. If Emulation Manager 60 is busy, Emulation Manager 60 informs the State Manager 70 that the demand to be inactive was rejected as indicated by the block 120. Next, State Manager 70 waits for Emulation Manager 60 to send a message of inactivity as reflected by block 122. Once that message is received, the process continues back to block 116. If Administrator Emulation 60 is not busy, the process continues from interrogation block 118 to block 124. In block 124, Emulation Manager 60 sends a message to Status Manager 70 that Emulation Manager 60 remains inactive. Then, the State Manager 70 takes the printer 20 off-line and sends a message to the Remote Menu Interface 68 that the printer 20 is outside the line as reflected in block 126. At that point, the RMI 68 can send a remote out-of-line alert back to host computer 10 as reflected by block 128 and thus complete the remote off-line command process as reflected by block 130. At this point the computer 10 may re-send the unsafe command (s). After the termination of the claim (ie, once the printer has responded that the demand has been processed successfully), then the computer 10 can send a command to take the printer back online. Another aspect of the present invention involves the efficient communication of information from the printer 20 to the computer 10, particularly with respect to the font information and symbol set. Referring now to Figure 7, the printer 20 is shown having bidirectional communication with the host computer 10, and additional details of the host computer 10 are shown including the microprocessor 134, the memory 136, and the buffer 138. The controller 34 of the printer 20 is programmed to provide source and symbol set information to the computer 10. The source information is symbolically displayed stored in the memory 136 by a first source information packet 140, a second information packet of source 142 and a third source information packet 144. Any number of sources can be stored in memory 136; this is symbolically shown by the font n 145. The printer 20 is also programmed to communicate to a host computer 10 its symbol sets that are shown symbolically having been placed in the memory 136 as a first set of symbols 146 and a second set of symbols 148. Any number of symbol sets could be placed in the memory 136 as symbolically shown by the set of symbols m 149. The source 1 has a symbol set key 150. The second source pack 142 has a set key of symbols 152, and similarly, the third font pack 144 has a symbol set key 154. The source n 145 has its corresponding symbol set key 155. In an instrumented manner, the symbol set 146 has a key of symbol set 156, and a second set of symbols 148 has a symbol set key 158. The set of symbols m 149 has its corresponding symbol set key 159. By programming the printer 20 to send information in this manner, the bidirectional communication reflected by the arrow 160 is minimized because the source information packets 140, 142, 144, and 145 can be sent without requiring the symbol set information corresponding to continue with each package. Instead, the symbol set information can be sent once it is reflected by the symbol sets 146, 148, and 149. Once the source packets 140, 142, 144 and 145 and the symbol sets 146 , 148 and 149 are in memory 136, processor 134 can compare keys 150, 152, 154, and 155 with keys 156, 158, and 159 to determine which sets of symbols can be used with which sources. Through this process, the host computer 10 is capable of generating a table or index of source information that allows it to have source information and information of the coordinated set of symbols at its end for the purposes of using the printer 20, and is able to accomplish this with a minimum amount of communication 160. Referring now to Figure 8, a process flow starts at block 162 which reflects how printer 20 informs host computer 10 asynchronously about changes in font and / or set of symbols. As indicated in block 163, the printer 20 is first initialized in a manner that collects the fonts and symbol sets that reside in the printer 20. The fonts and symbol sets stored in the printer 20 are collected as the process checks of initialization for some source or set of symbols stored in memory 38. After the printer is initialized, the guest typically will demand the printer at a certain point, send the fonts and symbol sets as reflected in block 164. In at that point, the fonts and symbol sets are sent from the printer 20 to the host computer 10. As reflected by the interrogation box 166 and the iteration path 168 of FIG. 8, a portion of the softaware programmed into the memory 38 of the printer driver 34 will determine when a change has been made to any of the fonts or symbol sets that are resident in the 20. Once a change to a font or set of symbols has been made in the printer 20, an alert message is sent to the host computer 10 as indicated by block 170. Once the alert is received by a host computer 10, a request for additional changes can be sent via the computer 10 to the printer 20 and the corresponding information can be sent. Referring now to Figure 9, further details of how the symbol sets are transmitted from the printer 20 to the host computer 10 are shown with a flow chart starting at the start block 174. The first stage involves the initialization of the first element in the link list of the symbol set as reflected by box 176. Then, the ID of the symbol set and the character complement from the symbol set are loaded into a buffer as reflected in box 178. Then, the next item in the link list is considered as reflected by the box 180 This process continues as reflected by box 182 and path 184 until the last element is reached, which ends the process as reflected by box 186. Once all this information of the symbol set is collected in the buffer can then be sent from the printer 20 to the host 10 using the "list of symbol set" command described below. At a more detailed level of aspects that implement the invention discussed above, the interface of Remote Menu 68 can be built using standard NPA commands and some non-standard commands (extensions). These non-standard commands and some of the standard commands are discussed below. The commands processed by the RMI 68 can be used to set variables in the memory 38, including those not found in the NVRAM 4. For example, variables that are not stored in the NVRAM, for example, lines per page, are also accessible through commands that are previously applied to the NVRAM variables exclusively. In addition, the variable positioning command with validation can do more than change the values stored in the NVRAM 44; if appropriate, other variables and configurations can also be changed. For example, when the command is issued to set the resolution-x to 600, then the resolution-y in the printer 20 can be automatically set to 600 as well. Another example would be that a command to change the parallel protocol from standard to fast bytes would not only update the NVRAM variable, but would also require that BIOS be called immediately to change the protocol. To read the variables in the printer 20, the extensions to the set of NPA commands set forth in Table 1 are appropriate.
Table Note: The size of the answer depends on the specific variable. The variables vary in size from 1 byte to 33 bytes. Also, since some of the variables are specific to emulators (PS, PCL, etc.), the data format of these variables may be different.
TABLE 1: Host Command Read and Printer Response Variables To implement the commands, there must be a unique NPA identification for each variable, such as, for example, those shown in Table 2.
TABLE 2: Identifications of NPA To establish the variables, the elaboration of other automatic configuration changes as necessary, as described above, consider the following extension and response shown in Table 3: Table Notes: • The command will be rejected if the ID option is not found. • Data validation is carried out, the whole operation is not carried out if the data validation fails. • If the variable set was classified as "delayed" then the variable will not change until the printer receives and processes the remote off-line command. TABLE 3: Set Variables With Host Command Validation and Printer Response As shown in Table 3, the format of the printer response to this command contains a return code byte that indicates whether the write was successful or not. As reflected by the second of the last row in the above table, a return code of "0" indicates that an error occurred. A return code of "1" indicates that the writing was successful. A return code of "2" indicates that the write can not occur until the user has taken the printer 20 offline by issuing a "offline-offline-line" command. Following this return code is the establishment of the option that is being established. If the set was successful, then it must match the value sent by the user in the "set" command. Otherwise, this value will be the old value or without change of the option. As previously noted, in order to change an unsafe option, it must be issued in command to take the printer offline remotely, and thus enhance the "offline-offline-line" command. As previously discussed, a "non-secure" command can include such things as to establish the link protocol options (speed in bauds, fast byte on / off), or commands that affect the BIOS such as a print contrast. If the user tries to change one of these "unsafe" options before taking the printer offline remotely, the response of the printer to set the command will include a return code of "2" indicating that the option it can not be changed until the user takes the printer offline remotely. The NPA command to take the printer offline remotely can be as shown in Table 4: has asked the printer to go offline. If an off-line request is accepted, then the printer will be offline as soon as the printer no longer has print jobs to process. The maximum wait for the guest is indefinite. Once the printer has been taken offline, an alert will be sent to registered guests. TABLE 4: ONLINE-OUT OF LINE Remote Host Command and Printer Response It is expected that the user on computer 10 will take the printer back online remotely after having set the desired options by using the "Online-Off-Line Remote" command described above. However, to avoid the situation where the printer 20 is immobilized by a user who takes the printer offline remotely and does not return it online, the printer driver 34 of the printer 20 is programmed to automatically return to the printer. line, the printer driver 34 of the printer 20 is programmed to automatically return to online after a specific timeout period. The user can specify the length of that timeout period in the timeout byte that is part of the remote off-line command. The valid range of values for the waiting times are preferably from one minute to 60 minutes. The waiting time is set as soon as the printer 20 is really taken offline. When the Remote Menu Interface 68 is used to take the printer 20 off line, the board indications 30 (Fig. 1) may indicate the change. Another option to drive the printer 20 back to online is to press the appropriate button, for example, button 32, at its point. Similarly, resetting a front panel can be used to drive it back online as well. A remote offline command is not executed until the printer 20 becomes inactive and an off-line command may be pending. If a remote offline command is sent to the printer 20, but another remote offline request is pending, the second command will be rejected. This ensures that only a host computer 10 attached to the printer 20 can make configuration changes at any given time. If a guest's request is rejected for taking the printer offline remotely, then the guest waits until the printer indicates that they are online again (through an "Online-Offline Alert") before trying to send the demand again. When the host computer 10 has asked the printer 20 to go offline, the printer 20 must again notify the computer 10 when it has been successfully taken offline, and at the appropriate time it is also necessary to notify when it has been put back on. line. The offline-line-out-of-line alert is used for this purpose; An example of this alert is shown in Table 5.
TABLE 5: Remote Alert IN LINE-OUT OF LINE This requires the host computer 10 to first register the extension alerts, as will be described below. The commands that can be used to implement a mode of the present invention that involves the transmission of symbol sets and sources from the printer 20 to the host computer 10 are now dealt with. A command that facilitates this is the list command of the symbol set. This command returns a list of all known symbol sets that are currently available in the printer 20. For each set of symbols, the printer can provide a response that gives the identification of the symbol set and an 8-character character complement. . The user can then take this character complement from the set of symbols and logically AND this one with the character complement of any source, that is, use what was symbolically referred to as keys 150-159 in figure 7 to build a table of characters. sources or index of sources and sets of symbols on the computer 10. Using a specific AND-logical approach, if the result of the AND is "0", then it indicates that the source supports the set of symbols. The NPA command to obtain the symbol sets can be as shown in Table 6.
TABLE 6: Host Command of the Printer Symbols and Response Set List In addition to the symbol set information, the source information is needed by the computer 10. The get-information-current-source command, which is shown in Table 7 below, returns four information items that identify unique to the current default font: the origin of the font, the identification of the symbol set, and the point or density. Concerning this last item of information, the value of the point will be returned if a source is a proportional bitmap or a proportional off-line source, and the density value will be returned if the source is a fixed bitmap or a source offline monoseparada.
TABLE 7: Guest Command to Get Current Source Information and Printer Response It is also desirable to be able to set the current default source using the origin of the source, the position of the source, the identification of the symbol set and the point or density as described above. The printer 20 can respond with a return code. If any of the four parameters for the unique identification of the source are invalid when they are sent to the printer 20, or the given set of symbols is not supported by the given source, then the return code from the printer 20 will indicate to the computer 10 that there is a problem and that no changes will be made to the printer options. The response back to the computer 10 may include "invalid source or position", "invalid SSID", or "invalid point or density". An appropriate NPA extension is shown in Table 8: TABLE 8: Guest Command of Current Source Information in Printer Set and Response Alerts may be used to inform the host computer 10 when the printer 20 goes offline or online remotely and when the fonts or symbol sets are added to or omitted from the memory 38. To use these alerts, the host computer 10 must first register the extension alerts, as described below. One technique to accomplish this is to use bit 6 (remote online-out-of-line alert) and bit 1 (instant alert / disk or memory) of the bit-coded byte of this set of commands. Bit 6 can indicate to the printer 20 to send alerts indicating when it has succeeded in taking the printer offline-online remotely. Bit 1 may indicate to the printer 20 to send alerts as long as the state of the instant 46 and / or disk 48 changes. For example, the change may include the omission or copying of a source or set of symbols. With respect to this, consider the following set of commands established in Table 9: Note to the Table: A bit value of 1 allows a bit, a value of 0 disables a bit. TABLE 9: Record for Guest Command of Extension Alerts and Printer Response If a device alert sent by the printer 20 to the host computer 10 indicates that the sources and / or symbol sets have been omitted from or copied to the memory 38, then the host computer 10 responds by updating the information table of dynamic sources with the font information of the printer / symbol set, current. An application based on a host computer 10 may require real-time access to the relatively large amount of information associated with the fonts and symbol sets available in the printer 20 in order to display lists. For example, for a given source source, the host-based application may wish to display a list of all the available sources by name, and for a given source, the application may wish to display a list of all legitimate symbol sets. With a relatively slow transfer rate of printer-to-host data (through an IEEE-1284 quartet mode acknowledgment, or similar), the transfer could take an unacceptable amount of time. The Remote Menu Interface 68 offers commands that efficiently provide the information of the collective source and the set of symbols that an application based on a guest may need to build such lists. The transfer of source information will typically involve the standard NPA command: "interpreter characteristics demand - source details". This command returns a list of all available permanent sources associated with the given interpreter or emulator, for example, PCL, and a given source source. The list includes all the details associated with each source with the exception of valid symbol sets for each source. Next, the symbol-set-list command can be used to return all the permanent symbol sets currently active in the printer. The list of the symbol set contains a representation of the character complement for each symbol set, ie, what was symbolically displayed by keys 156, 158, and 159 in figure 7. Once the application based on the host has these two lists, can determine which sets of symbols are valid for which sources when logically ANDing the representation of the character complement of a given source, that is keys 150 to 155 of Figure 7, with the representation of the character complement of a set of given symbols, ie keys 156 to 159 of Figure 7. For example, if the logical AND of the two character complements results in zero, then the given set of symbols is valid for that source. Because the fonts and symbol sets can be added or omitted from the printer 20 at any time, the printer 20 must be able to inform asynchronously to the host computer 10 that such a change is taking place. This allows the host-based application to maintain its own dynamic source information tables in an efficient manner that requires only a minimum number of demands on the printer 20 to obtain the data from the collective source and the set of symbols. The host-based application on the computer 10 can monitor the permanent activity of the source or set of symbols in the memory 38 of the printer 20. To monitor this information, the application based on the guest can first send the command to register extension alerts. This command allows the printer 20 to send device alerts as long as the sources and / or set of symbols are added to or omit the impulse 46 or disks 48 of the memory 38. Next, when the printer 20 sends a device alert, the host computer 10 must determine if the alert means an omission or copy of a font or set of symbols. If either is true, then the table of dynamic source information based on the guest is now out of date compared to the information resident in the printer 20. Alternatively, this can be done for the RAM using the command Existing NPAs as will be discussed immediately below. To monitor the permanent activity of the source or set of symbols in the RAM, the application based on the guest can send a status alert command of the control selection device for the configuration of the printer with 1 bit of configuration change set in order to allow the printer 20 to send status alerts of the device at any time that the sources or set of permanent symbols are transferred or removed from the printer memory 38. When the printer 20 sends a status alert of the device, the host computer 10 must determine whether the configuration change bit is set to the third byte coded by bit of the alert. If this bit is set. , the computer 10 must then issue a change-of-configuration-of-state-command of the demand-device. The printer 20 can respond to this command by indicating the nature of the configuration change.
If a response by the printer 20 indicates that a permanent font or set of symbols has been transferred or removed from the memory of the printer 38, then the table of dynamic source information based on the host no longer reflects the source information in the printer 20. Therefore, it may be desirable to update the appropriate tables by issuing the "Request for the Interpreter Characteristics - Source Details" command for transferred fonts, as well as the "Symbolset List" command. Individual source details can be obtained using the Read Variables command. This command will allow one to obtain variable information from the source, one variable at a time. However, when the current default source is obtained, it is preferable to obtain all the vital details that uniquely identify the source at a time. The "Get Current Font Information" command returns the origin of the current font, the position of the font, the symbol set, and the point or density. The application based on the host can then determine if the fourth parameter is the density or the point when analyzing the table of source information that is maintained. If the returned information does not identify a source in the source information table based on the host, then the application based on the guest needs to update its table. The details of the individual source can be easily updated using the "Set Variables with Validation" command. This command will allow the details of the individual source to set one variable at a time. However, the updating or establishment of the current source in the printer 20 is preferably carried out with the command "Establish Information of the Current Source", which requires the source of the demanded source, the position of the source, the set of symbols, and the density or point in a command. When the printer 20 receives this command, it will first check whether it is a valid combination of the font details. If it is not a valid combination, the printer 20 will not change the current font, and will return in response to a code indicating why this combination is not valid. If it is valid, the printer 20 will change the current source information and respond with a return code "OK". Although the present invention has been described in detail with reference to the preferred embodiments, it should be understood that various changes, substitutions and alterations may be made thereto without departing from the spirit and scope of the invention as defined by the following claims.

Claims (25)

  1. NOVELTY OF THE INVENTION Having described the present invention, it is considered as a novelty and therefore the property described in the following claims is claimed as property. A printer, comprising: a printer driver having a memory for storing a plurality of printer configuration settings, and a processor; and a port coupled to said printer driver that receives the signals from a host computer, wherein said printer driver receives configuration change information through said port and processes said configuration change information to effect an update of one. or more of said plurality of printer configuration positions using said configuration change information while said printer processes a current print job if said updating does not adversely affect the processing of said current print job. The printer according to claim 1, characterized in that said processor of the printer processes said configuration change information to effect a substantially immediate update of said one or more of said plurality of printer configuration positions utilizing said change information. Of configuration. 3. The printer according to claim 2, characterized in that said printer processor further informs the host computer when said changes have been made. The printer according to claim 1, characterized in that after updating said printer configuration settings, said processor further updates the printer configuration environment associated with the updated settings even though said printer is processing said current print job. The printer according to claim 1, characterized in that said printer driver is further programmed to notify the host computer if a command received with said configuration change information is not sure to be processed immediately even if the printer is busy processing said command. current print job, informing the host computer to go offline. The printer according to claim 1, characterized in that the printer controller is further programmed to take the printer off-line as soon as possible after receiving a remote off-line command from said host computer. The printer according to claim 6, characterized in that the printer driver is further programmed to notify said host computer when the printer has been taken offline in response to said remote command off line. The printer according to claim 6, characterized in that the printer controller is further programmed to respond to a remote online command received from said host computer when backing up online. The printer according to claim 8, characterized in that the printer controller is further programmed to provide a confirmation response to said host computer after successfully backing online. The printer according to claim 1, characterized in that the printer controller is further programmed to: collect all the information from the resident sources and the set of symbols; identify each source by a predetermined number of variables; and sending said predetermined number of variables for each information of the source and the set of symbols to said host computer. ll. The printer according to claim 10, characterized in that said printer driver is further programmed to generate and send an alert to said host computer if any of the source or set of symbols in said printer's memory is modified. 12. A printer for preparing printed pages of information from signals transmitted by a host computer, the printer comprises: a port to receive signals from the host computer; a processor coupled to the port; a printer memory device coupled to the processor to contain instructions and encoded data; and a printing machine coupled to the processor to receive signals from the processor and print pages of information in response thereto, wherein the instructions encoded in the memory of the printer in conjunction with the processor are operable to send sets of symbols that they are resident in the memory device for the host computer. 13. A printer communication system that includes a host computer, a printer, and a communication means for coupling the host computer and the printer to provide bi-directional signal communication between them, wherein the printer comprises: a docked port to the communication means to receive signals from the host computer through the means of communication and transmit signals to the host computer; a printer driver coupled to the port, wherein the printer driver comprises a printer microprocessor, and a printer memory device coupled to the processor, the printer memory device for containing instructions and encoded data; and a printing machine coupled to the printer controller to receive the signals from the printer processor and print pages of information in response to them, wherein the encoded instructions and the printer processor are operable to: (a) send sets of symbols that are resident in the memory device of the printer to the host computer, (b) send source information resident in the memory of the printer to the host computer, and (c) receive commands relating to the configuration from the computer host and accept them and execute them immediately if the command concerning the configuration does not interfere with any current printer activity and inform the host computer if the command concerning the configuration would interfere with the current activities of the printer. The printer communication system according to claim 13, characterized in that the encoded instructions and the printer processor are further operable to receive a remote off-line command requesting that the printer be taken to an off-line state and Take the printer offline in the next available moment. The printer communication system according to claim 13, characterized in that the encoded instructions and the printer processor are further operable to send sets of symbols that are resident in the memory device of the printer to the host computer; and send source information resident in the memory of the printer to the host computer. 16. The printer communication system according to claim 15, characterized in that the encoded instructions and the printer processor are further operable to send an alert message to the host computer as soon as the printer is taken offline. The printer communication system according to claim 16, characterized in that the encoded instructions and the printer processor are further operable to receive an online command through the port and remotely take the printer back online. 18. The communication system of the printer according to claim 17, characterized in that the encoded instructions and the printer processor are further operable to send an alert to the host computer when the printer has been placed back online. The printer communication system according to claim 17, characterized in that the encoded instructions and the printer processor are further operable to return to online automatically if a remote online command does not follow a remote off-line command after of a specific waiting time during which no activity takes place. The communication system of the printer according to claim 15, characterized in that the encoded instructions and the printer processor are further operable to send an alert to the host computer as long as any source information or set of symbols in the host is modified. the memory of the printer. 21. The printer communication system according to claim 13, characterized in that the host computer includes an operable processor and memory to send a command to change a current source positioning in the printer that contains four variables that uniquely describe the desired source, and where the encoded instructions and the printer's processor are also operable to receive the command to change the current source and to allow the change of the current source only if the variables in the modified current source command identify a valid source in printer memory. 22. The printer communication system according to claim 13, characterized in that the host computer is programmed to construct a dynamic source table from the source information and symbol sets sent by the printer. 23. A method for updating the positioning of operating configuration of a printing apparatus, comprising the steps of: receiving configuration change information from a host computer; process said configuration change information; and updating one or more of said configuration positions using said configuration change information while said printing apparatus is processing the current print job if said update does not negatively affect the processing of said current print job. 24. The method according to claim 23, characterized in that said update step further comprises substantially immediately updating said one or more said configuration positions after processing said configuration change information. The method according to claim 23, characterized in that it further comprises the step of updating a configuration environment associated with said updated positions after said updating of said configuration positions while said printer is processing said current print job.
MX9703805A 1996-05-23 1997-05-23 Printer communication system and method. MX9703805A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08652858 1996-05-23
US08/652,858 US6246485B1 (en) 1996-05-23 1996-05-23 Printer communication system and method

Publications (2)

Publication Number Publication Date
MXPA97003805A true MXPA97003805A (en) 1998-04-01
MX9703805A MX9703805A (en) 1998-04-30

Family

ID=24618471

Family Applications (1)

Application Number Title Priority Date Filing Date
MX9703805A MX9703805A (en) 1996-05-23 1997-05-23 Printer communication system and method.

Country Status (8)

Country Link
US (1) US6246485B1 (en)
EP (1) EP0809176B1 (en)
JP (1) JPH10129083A (en)
KR (1) KR100472799B1 (en)
AU (1) AU719748B2 (en)
CA (1) CA2203445A1 (en)
DE (1) DE69725778T2 (en)
MX (1) MX9703805A (en)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7428575B1 (en) * 1998-11-17 2008-09-23 Ricoh Company, Ltd. Method and system for communicating with a device attached to a computer using electronic mail messages
US6473811B1 (en) * 1998-03-13 2002-10-29 Canon Kabushiki Kaisha Method and apparatus for displaying a connection status of a device based on connection information
JP3711433B2 (en) * 1998-05-06 2005-11-02 セイコーエプソン株式会社 Printing control method and system, and recording medium
DE69939238D1 (en) * 1998-06-25 2008-09-18 Canon Europa Nv Method and device for controlling the processing of an electronic document
US6556875B1 (en) * 1998-06-30 2003-04-29 Seiko Epson Corporation Device control system
JP4086372B2 (en) * 1998-08-28 2008-05-14 キヤノン株式会社 COMMUNICATION SYSTEM, INFORMATION PROCESSING DEVICE, OUTPUT DEVICE, CONTROL METHOD, AND STORAGE MEDIUM
US6683696B1 (en) * 1998-10-27 2004-01-27 Hewlett-Packard Development Company, L.P. Filter based data imaging method for an image forming device
US6424424B1 (en) * 1999-01-19 2002-07-23 Hewlett-Packard Company Method and apparatus for automatic installation of shared printers over a network
US6618162B1 (en) * 1999-01-26 2003-09-09 Intermec Ip Corp. Apparatus and method to configure a device, such as a printer, over a network
US6857013B2 (en) 1999-01-29 2005-02-15 Intermec Ip.Corp. Remote anomaly diagnosis and reconfiguration of an automatic data collection device platform over a telecommunications network
JP2000305731A (en) * 1999-02-17 2000-11-02 Canon Europa Nv Automatic configuration method and device
US7054015B1 (en) 1999-07-02 2006-05-30 Electronics For Imaging, Inc. Printer description file format generator
US7143150B1 (en) * 1999-12-09 2006-11-28 Ricoh Company, Ltd. Method of configuring a computer to include the available options of a printer
US6789111B1 (en) * 1999-12-09 2004-09-07 Microsoft Corporation Automatic detection and installation of client peripheral devices by a server
CN1272695C (en) * 2000-03-17 2006-08-30 精工爱普生株式会社 Communication terminal equipment, processing method of communication data nad recording medium
JPWO2001077844A1 (en) * 2000-04-10 2004-04-30 富士通株式会社 Information processing system and method, and server
US6741262B1 (en) 2000-05-12 2004-05-25 Electronics For Imaging, Inc. Expert color management settings method and interface
US7117239B1 (en) 2000-07-28 2006-10-03 Axeda Corporation Reporting the state of an apparatus to a remote computer
US6814510B1 (en) * 2000-08-02 2004-11-09 Xerox Corporation Method and apparatus for automatic update of a printer driver configuration and status
US8108543B2 (en) 2000-09-22 2012-01-31 Axeda Corporation Retrieving data from a server
US7185014B1 (en) 2000-09-22 2007-02-27 Axeda Corporation Retrieving data from a server
US7149792B1 (en) 2000-11-20 2006-12-12 Axeda Corporation Device registration mechanism
JP3977059B2 (en) * 2000-12-22 2007-09-19 キヤノン株式会社 Information processing apparatus, method, and control program
JP2002290351A (en) * 2001-03-22 2002-10-04 Dainippon Printing Co Ltd Method for extending function of digital data broadcast system
US7428066B2 (en) * 2001-04-09 2008-09-23 Canon Kabushiki Kaisha Printing apparatus and method for verifying a printer controller
JP4596696B2 (en) * 2001-07-16 2010-12-08 キヤノン株式会社 Information processing apparatus and printing apparatus
US7254601B2 (en) 2001-12-20 2007-08-07 Questra Corporation Method and apparatus for managing intelligent assets in a distributed environment
JP4027102B2 (en) * 2002-01-31 2007-12-26 キヤノン株式会社 Information processing apparatus, information processing method, and control program
US20030184782A1 (en) * 2002-03-27 2003-10-02 Perkins Gregory E. Printer driver configured to dynamically receive printer self-description
US7178149B2 (en) 2002-04-17 2007-02-13 Axeda Corporation XML scripting of soap commands
US20030200353A1 (en) * 2002-04-19 2003-10-23 Vikas Dogra Browser-implemented upload/download of a driver
US7283268B2 (en) * 2002-07-11 2007-10-16 Paxar Corporation Printer with interpreter
US7327482B2 (en) 2002-10-15 2008-02-05 Sharp Laboratories Of America, Inc. Integrated printer monitoring
US20050057780A1 (en) 2002-11-19 2005-03-17 Canon Denshi Kabushiki Kaisha Network scanning system
US20040145768A1 (en) * 2003-01-28 2004-07-29 Stringham Gary Glen Print job clues
US7966418B2 (en) 2003-02-21 2011-06-21 Axeda Corporation Establishing a virtual tunnel between two computer programs
US20040165011A1 (en) * 2003-02-26 2004-08-26 David Quijano Systems and methods for controlling user-controlled devices using data stored on a portable storage medium
US9106526B2 (en) * 2003-03-21 2015-08-11 Hewlett-Packard Development Company, L.P. Traversing firewalls
JP4402370B2 (en) 2003-05-14 2010-01-20 キヤノン株式会社 Service providing apparatus and information processing method
JP4120482B2 (en) * 2003-06-06 2008-07-16 コニカミノルタビジネステクノロジーズ株式会社 Printing apparatus, print job transmission apparatus, and printing method
US7275213B2 (en) * 2003-08-11 2007-09-25 Ricoh Company, Ltd. Configuring a graphical user interface on a multifunction peripheral
US20050094172A1 (en) * 2003-10-30 2005-05-05 International Business Machines Corporation Linking font resources in a printing system
US7631198B2 (en) * 2005-05-10 2009-12-08 Seagate Technology Protocol scripting language for safe execution in embedded system
KR100941540B1 (en) * 2005-06-02 2010-02-10 엘지전자 주식회사 Device management system and setting-value setting method in the system
US7761864B2 (en) 2005-08-09 2010-07-20 Intermec Ip Corp. Method, apparatus and article to load new instructions on processor based devices, for example, automatic data collection devices
US8944332B2 (en) 2006-08-04 2015-02-03 Intermec Ip Corp. Testing automatic data collection devices, such as barcode, RFID and/or magnetic stripe readers
US8370479B2 (en) 2006-10-03 2013-02-05 Axeda Acquisition Corporation System and method for dynamically grouping devices based on present device conditions
US8065397B2 (en) 2006-12-26 2011-11-22 Axeda Acquisition Corporation Managing configurations of distributed devices
US8478861B2 (en) 2007-07-06 2013-07-02 Axeda Acquisition Corp. Managing distributed devices with limited connectivity
JP5116539B2 (en) * 2008-04-08 2013-01-09 キヤノン株式会社 Job processing apparatus, method for controlling job processing apparatus, storage medium, and program
JP4513038B2 (en) 2008-04-28 2010-07-28 ブラザー工業株式会社 Image forming system, image forming apparatus, and restriction changing program
JP4663774B2 (en) * 2008-11-10 2011-04-06 キヤノン株式会社 Printing system, information processing apparatus, print job processing method, information processing method, printing apparatus, print control method, and program
US8312378B2 (en) * 2009-12-23 2012-11-13 Xerox Corporation Universally accessible printer configuration page
US8312324B2 (en) * 2010-01-28 2012-11-13 Xerox Corporation Remote diagnostic system and method based on device data classification
JP5704904B2 (en) * 2010-11-29 2015-04-22 キヤノン株式会社 DATA PROCESSING DEVICE, DATA PROCESSING DEVICE CONTROL METHOD, AND PROGRAM
CN103358727B (en) * 2012-03-26 2017-09-19 精工爱普生株式会社 Recording device and method for controlling the recording device
JP5743333B2 (en) * 2012-08-02 2015-07-01 京セラドキュメントソリューションズ株式会社 Image forming system and program for image forming system
JP2018107768A (en) * 2016-12-28 2018-07-05 キヤノン株式会社 Image processing apparatus, information processing method, and program

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220674A (en) 1987-07-17 1993-06-15 Digital Equipment Corporation Local area print server for requesting and storing required resource data and forwarding printer status message to selected destination
US5297246A (en) 1988-03-11 1994-03-22 Hitachi, Ltd. Printer system and operating method therefor
JPH01229664A (en) * 1988-03-11 1989-09-13 Hitachi Ltd Printer character pattern data transfer method
JPH01269565A (en) * 1988-04-22 1989-10-27 Canon Inc Printer
JPH02150377A (en) * 1988-12-02 1990-06-08 Ricoh Co Ltd Mode setting change device in printer
US5220566A (en) 1989-02-10 1993-06-15 Minolta Camera Kabushiki Kaisha Multiplexer for use in data processing system
US5050098A (en) * 1989-08-25 1991-09-17 Lexmark International, Inc. Printer initialization system
US5214772A (en) 1989-12-13 1993-05-25 Joseph Weinberger System for automatically monitoring copiers from a remote location
US5333286A (en) 1989-12-13 1994-07-26 Joseph Weinberger Two way copier monitoring system
US5084875A (en) 1989-12-13 1992-01-28 Joseph Weinberger System for automatically monitoring copiers from a remote location
US5075875A (en) 1990-04-20 1991-12-24 Acuprint, Inc. Printer control system
US5303336A (en) 1990-05-14 1994-04-12 Hitachi, Ltd. Printing system including print server
US5268993A (en) * 1990-06-04 1993-12-07 Minolta Camera Kabushiki Kaisha Printer
US5164842A (en) 1990-06-29 1992-11-17 Xerox Corporation Job/page proofing for electronic printers
JPH0486838A (en) * 1990-07-31 1992-03-19 Toshiba Corp Image forming device
US5271065A (en) 1990-09-28 1993-12-14 Xerox Corporation Electronic printing system for printing signatures
US5247623A (en) 1991-08-15 1993-09-21 Primax Electronics Ltd. Automatic multiple personal computer/computer printer connecting system
US5353388A (en) 1991-10-17 1994-10-04 Ricoh Company, Ltd. System and method for document processing
EP0556994B1 (en) 1992-02-10 2001-08-29 Canon Kabushiki Kaisha Output method and unit
US5226112A (en) 1992-06-12 1993-07-06 Xerox Corporation Method for translating a plurality of printer page description languages
JP3017605B2 (en) 1992-06-19 2000-03-13 キヤノン株式会社 Printer control method and control system thereof
US5613160A (en) 1992-11-18 1997-03-18 Canon Kabushiki Kaisha In an interactive network board, method and apparatus for placing a network peripheral in a default configuration
EP0599488B1 (en) 1992-11-18 1999-10-06 Canon Information Systems, Inc. Method and apparatus for testing an interface board
US5323393A (en) 1992-11-18 1994-06-21 Canon Information Systems, Inc. Method and apparatus for obtaining and for controlling the status of a networked peripheral
ATE199599T1 (en) 1992-12-18 2001-03-15 Hitachi Koki Imaging Solutions VIRTUAL PRINTER
JP3222668B2 (en) * 1993-12-17 2001-10-29 キヤノン株式会社 Print control apparatus and method
JP3199544B2 (en) * 1993-12-17 2001-08-20 キヤノン株式会社 Printing apparatus and printing control method
JP3271862B2 (en) * 1994-03-10 2002-04-08 株式会社リコー Page printer
US5580177A (en) * 1994-03-29 1996-12-03 Hewlett-Packard Company Printer/client network with centrally updated printer drivers and printer status monitoring
US5559933A (en) * 1994-04-22 1996-09-24 Unisys Corporation Distributed enterprise print controller
DE69532780D1 (en) * 1994-05-20 2004-05-06 Canon Kk Printer, printer system and method for experiencing the drawing resources of the printer system
JP3604726B2 (en) * 1994-05-20 2004-12-22 キヤノン株式会社 External device and print processing method
US5699494A (en) * 1995-02-24 1997-12-16 Lexmark International, Inc. Remote replication of printer operator panel

Similar Documents

Publication Publication Date Title
MXPA97003805A (en) System and method of communication with print
EP0809176B1 (en) Printer communication system and method
US5727135A (en) Multiple printer status information indication
US5699494A (en) Remote replication of printer operator panel
US6369905B1 (en) Information processing apparatus and output apparatus
US5873659A (en) Method and apparatus for providing a printer having internal queue job management
US7061635B1 (en) Information processing apparatus, distributed printing method, and storage medium
CN1333330C (en) Proxy printing system, information processing apparatus, and controlling method
EP0943985B1 (en) User interface for an information processing system, with job monitoring
US6856413B1 (en) User interface for an information-processing system
KR100720922B1 (en) Computer storing print control program, and storing medium recording the program and capable of being read by computer
JP2000035864A (en) Printing controller
JP3689445B2 (en) Printing apparatus and system, and control method
JP2003140867A (en) Network print system and information processing device
JPH09305334A (en) Printer system and printer monitoring method
JP7245027B2 (en) Information processing apparatus, printing system, and printing control method
JPH07160441A (en) Information processing method and output method
JPH08156371A (en) Image output device, host computer and network housing both of them
JPH08166926A (en) Electronic unit, data processing system having the unit and data processing method in the unit
JP2000172466A (en) System and method for information processing
JP2004050661A (en) Printer
JPH08156370A (en) Printing mechanism and printing state altering method
JPH10301725A (en) Printing device and information processor, system and control method therefor and storage medium
JPH08108600A (en) Information processing apparatus and peripheral device, and information processing system having the information processing apparatus and the peripheral device, and method for indicating resource information for the information processing system
JP2001322340A (en) Image processing system and its message displaying method