Postage meter transparent I/O interface
This is a continuation of application Ser. No. 146,919, filed Jan. 22, 1988, now abandoned. 
    
    
     BACKGROUND OF THE INVENTION 
     Postage meters (hereinafter called &#34;meters&#34;) are well known devices for printing postage impressions of desired value. A meter generally has a set of registers, a print mechanism, and a controlling mechanism. The controlling mechanism acts to interlock the print mechanism and registers to ensure that all postage printed is accounted for. The registers, the print mechanism, and the meter controller are enclosed within a secure housing so as to be inaccessible to the user. 
     In modern electronic meters, the controlling mechanism is a microprocessor (hereinafter called &#34;meter controller&#34;) and the registers are implemented as locations in random access memory (hereinafter called &#34;meter memory&#34;). The meter memory can be expanded to include accounting, cost allocation, or non-revenue information. External and permanently affixed to the housing is a keyboard for data entry to the meter controller and a display for data output to the user. In addition, an input/output port (hereinafter called &#34;I/O port&#34;) may be provided so the meter controller can communicate with external devices. Many prior security measures are retained or improved. For example, the meter housing is still utilized to maintain physical security. The meter controller may utilize new techniques unique to electronic equipment to increase security for the meter memory. 
     In a typical configuration the meter is placed on a base from which it derives power. The base performs envelope handling and similar functions, and may include an input/output facility (hereinafter called &#34;I/O device&#34;). The I/O device can communicate with the meter through the meter&#39;s I/O port. The I/O device can also communicate with other peripherals external to the base such as scales and printers. For example, a scale may be used to weigh an article, calculate the cost of sending the article through the mail, and send that cost to the I/O device. The I/O device then tells the meter the denomination of postage to print. A user can also use an external user interface, such as the keyboard and display on a scale, to command the I/O device to generate a preprogrammed report. The I/O device then queries the meter for certain accounting or non-revenue information contained in the meter memory, formats that information, then commands a printer to print the report. However, in each case the meter does not initiate any commands to the I/O device, the meter merely responds to commands from the I/O device. 
     SUMMARY OF THE INVENTION 
     The present invention is an electronic postage meter having enhanced I/O capability. This is achieved by providing the meter, in addition to its normal mode of operation, a so-called &#34;transparent&#34; mode of operation wherein the keyboard and display can be utilized as a user interface to the I/O device. In the transparent mode of operation, the meter controller determines whether a key press sequence on the keyboard has occurred, generates a command describing the key press sequence, then transmits that command through the I/O port to the I/O device. In addition, the I/O device can command the meter controller to put data onto the display. As a result, the user is able to communicate directly with the I/O device without requiring additional peripheral equipment. 
     In a preferred embodiment, when the meter in the normal mode sees an unknown key press sequence, it automatically generates a command describing the key press sequence and transmits that command to the I/O device. If the key press sequence is unknown to the I/O device, it is ignored, otherwise the I/O device will perform the command. As a result, limited communication with the I/O device is available to the user when the meter is in the normal mode. It is through this process that the user can use the keyboard to tell the I/O device to command the meter to enter the transparent mode. 
     While in the transparent mode, any key press sequence on the keyboard is passed directly to the I/O device by the meter controller. In addition, the display shows only data which the I/O device commands the meter to put on the display. The meter does not respond to the contents of the keyboard entries nor does it generate data to put on the display. 
     Because the keyboard and display are not under the control of the meter, the user is unable to control the meter printing function. The meter does not respond to the keyboard entries and the display does not tell the user what printing functions are occurring. Therefore, with current applications, meter printing is disabled when the meter is in the transparent mode. However, future applications may allow the I/O device to actuate the primary function under the control and security of the meter controller. 
     In order to go from the transparent mode back to the normal mode, the user merely enters a predetermined command on the keyboard which is passed by the meter controller to the I/O device. The I/O device then commands the meter to return to the normal mode of operation. The meter also returns to the normal mode if it is powered down, then powered up again. However, if the I/O device is still in communication with the meter, it may command the meter to return to the transparent mode. 
     The above functions require changes to the protocol between the meter controller and the I/O device. The meter controller can now initiate communication with the status command and with commands describing what keys have been pressed by the user. In addition, the I/O device has new commands including commanding the meter controller to put certain data on the display. 
     Security is maintained in the transparent mode because the meter controller maintains control of communications between the meter memory and the I/O device thereby protecting the meter memory from unauthorized access or use. In addition, the meter controller does not respond to the keyboard entries because if the meter controller responded to both the keyboard entries and the I/O device, potential conflicts could occur. Furthermore, the printing function is disabled with current applications to maintain security and prevent user confusion. 
     A further understanding of the nature and advantages of the present invention can be realized by reference to the remaining portions of the specification and attached drawings. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram showing a prior art or normal mode configuration of the meter in communication with external devices; and 
     FIG. 2 schematically shows the meter in communication with external devices while the meter is in the transparent mode. 
     FIG. 3 is a flow chart showing user communication with the meter controller and the I/O device through the keyboard. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     FIG. 1 is a block diagram showing a prior art or normal mode configuration of a meter in communication with external devices. 
     A meter 5 includes a secure meter housing 10 in which are located a meter controller 12, a meter memory 14, a print mechanism 16, and an I/O port 18. The meter controller communicates directly with each of the devices located in the housing and with a keyboard 20 and a display 22 that are external to the housing. Meter controller 12 controls the actions of and maintains the security for the devices located in the housing. The meter controller also communicates through the I/O port to an I/O device 24 located in a meter base 26. The I/O device communicates directly with one or more peripheral devices 28 such as scales, printers, modems, computers, and the like. 
     The meter controller communicates with the user through the keyboard and display, and can respond to commands from the I/O board. However, the meter cannot initiate commands to the I/O board. The I/O board communicates with the user through one of the peripheral devices. 
     FIG. 2 schematically shows the meter in communication with external devices while the meter is in the transparent mode. Reference numbers corresponding to FIG. 1 will be used. 
     A modified meter controller 12&#39; continues to control the actions of and maintain the security for the meter memory 14, print mechanism 16, and I/O device 18 located in the secure housing 10. The printing mechanism has been disabled and is not known. 
     The meter controller determines whether a key press sequence on the keyboard 20 has occurred, generates a command describing the key press sequence, and transmits that command through the I/O port 18 to a modified I/O device 24&#39;. The I/O device can command the meter controller to put data on the display 22. As a result, the user is able to communicate directly with the I/O device. In addition, the meter controller does not respond to the key entries nor does it generate data to put on the display. 
     FIG. 3 is a flow chart showing user communication with the meter controller and the I/O device through the keyboard. 
     The user enters a key press sequence on the keyboard (100). The meter controller reads the key press sequence by scanning the keyboard (102). The meter controller then checks a software switch to determine whether the meter is in the normal mode or transparent mode (104). If the meter is in the normal mode, the meter controller looks at a function table in memory to determine whether the key press sequence references a valid meter function (106). If the key press sequence does describe a valid meter function, then the meter performs the function (108). Examples of valid meter functions include printing postage, displaying some data contained in memory, etc. 
     If the meter is in the transparent mode or if the key press sequence is not a valid meter function, then the meter generates a command describing the key press sequence and transmits that command to the I/O device (110). The command includes an opcode and a variable length data field. In this case, the opcode states that the command is describing a key press sequence. The data field describes the key press sequence. The I/O device then determines whether the key press sequence references a valid I/O device function (112). If the key press sequence does reference a valid function, the I/O device performs that function (114). 
     The user is able to utilize this process to tell the I/O device to command the meter to go into the transparent mode. In the present embodiment, the user presses *1 on the keyboard while the meter is in normal mode. Because *1 does not reference a valid meter function, the meter controller generates a command describing the *1 key press sequence and transmits the command to the I/O device. The I/O device recognizes the *1 sequence as a command to cause the meter to go into transparent mode. The I/O device then generates a command instructing the meter to go into the transparent mode and transmits that command to the meter controller. The meter controller then causes the meter to go into the transparent mode, then passes a command back to the I/O device telling it whether the change to transparent mode was successful.