IP Library Granted Patent US 9,436,422
Granted Patent B2
US 9,436,422 · App. 13/576,210 · Granted Sep 6, 2016

System and method for printer emulation on a computing device not being connected to the printer

Inventors: Staffan Gribel (Gothenburg, SE); Peter Jonsson (Gothenburg, SE)
Assignee: SATO HOLDINGS KABUSHIKI KAISHA
G06F3/1285G06F3/1205G06F3/1256
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,436,422
App. No.
13/576,210
Granted
Sep 6, 2016
Kind
B2
Abstract

A system and method are provided for accurately emulating a printer on a computing device that is not connected to the printer. The computing device is provided with firmware and programming code that interfaces with the firmware for a customized printing operation. The firmware is provided with the printer and the computing device. The programming code is provided with the computing device, and the computing device runs the programming code. The programming code interfaces with the firmware provided with the computing device and causes the computing device to emulate the printer, when the printer runs the programming code. The computing device and the printer are not connected.

Claims (50)

1. A method of emulating a printer on a computing device, the computing device not being connected to the printer, and the computing device being provided with a first portion of printer firmware and programming code that interfaces with the first portion of printer firmware for a customized printing operation, the method comprising the steps of:

providing the first portion of printer firmware to the computing device, the first portion of printer firmware being shared by the computing device and the printer, wherein the first portion of printer firmware is operable on the computing device as a function of at least one application programming interface provided to the computing device, a copy of the first portion of printer firmware being operable on the printer as a function of a copy of the at least one application program interface being executed on the printer, the first portion of printer firmware being different from a second portion of printer firmware, the second portion of printer firmware being provided to the printer, but not being shared with the computing device;

providing the programming code to the computing device; and

running the programming code on the computing device so as to emulate the printer running the programming code on the computing device,

wherein the programming code runs on the computing device and interfaces with the first portion of printer firmware provided to the computing device so as to cause the computing device to emulate the printer running the programming code, thereby accurately representing a printer output and the functioning of the printer, and

the computing device and the printer are not connected to each other so that image data cannot be transmitted from the printer to the computing device.

2. The method of claim 1 , further comprising:

providing the programming code to the printer; and

running the programming code on the printer, p 1 wherein the printer running the programming code is emulated by the computing device when the computing device runs the programming code.

3. The method of claim 1 , wherein the programming code is a label generation software application.

4. The method of claim 3 , further comprising:

generating a signal by the computing device so as to cause an electronic computer display to display a virtual label generated by the programming code,

wherein the displayed virtual label has a same appearance as a physical label printed as a function of the printer running the programming code.

5. The method of claim 3 , further comprising:

providing an integrated development environment to the computing device; and

configuring the computing device by the integrated development environment for a user to develop the programming code.

6. The method of claim 5 , wherein the integrated development environment includes a label format section, and the method further comprises:

configuring the computing device for a user to develop a label format on the label format section.

7. The method of claim 6 , further comprising:

providing at least one data source of information for the label; and

configuring the computing device by the integrated development environment for a user to provide the information for the label when the label is generated by the printer.

8. The method of claim 6 , further comprising:

providing a program code editor for the integrated development environment; and

configuring the computing device by the integrated development environment for a user to develop the programming code.

9. The method of claim 1 , wherein the programming code is written in a scripting language, and running the programming code on the printer modifies a portion of the functionality of the printer.

10. The method of claim 1 , further comprising displaying a representation of the printer when the computing device is caused to emulate the printer.

11. A system comprising a printer and a computing device for emulating the printer on the computing device, the computing device not being connected to the printer, and the computing device being provided with a first portion of printer firmware and programming code that interfaces with the first portion of printer firmware for a customized printing operation, the system comprising:

at least one application programming interface configured to be executed on the computing device, a copy of the application program interface being operable on the printer;

the first portion of printer firmware being configured to be executed on the computing device, the first portion of printer firmware being shared by the computing device and the printer, wherein the printer firmware is operable on the computing device as a function of the at least one application programming interface, a copy of the first portion of printer firmware being operable on the printer as a function of the copy of the application program interface, the first portion of printer firmware being different from a second portion of printer firmware, the second portion of printer firmware being provided to the printer, but not being shared with the computing device;

the programming code being configured to be executed on the computing device, wherein the programming code runs on the computing device and interfaces with the first portion of printer firmware on the computing device so as to cause the computing device to emulate the printer running the programming code, thereby accurately representing a printer output and the functioning of the printer;

wherein the computing device and the printer are not connected to each other so that image data cannot be transmitted from the printer to the computing device.

12. The system of claim 11 , wherein a copy of the programming code is provided on the printer, and the printer runs the copy of the programming code, and

wherein the printer running the copy of the programming code is emulated by the computing device when the computing device runs the programming code.

13. The system of claim 11 , wherein the programming code is a label generation software application.

14. The system of claim 13 , wherein the computing device is configured to generate a signal for causing an electronic computer display to display a virtual label generated by the programming code, wherein the displayed virtual label appears the same as a physical label printed as a function of the printer running the copy of the programming code.

15. The system of claim 13 , further comprising an integrated development environment configured to be executed on the computing device, wherein the integrated development environment configures the computing device for a user to develop the programming code.

16. The system of claim 15 , wherein the integrated development environment includes a label format section that configures the computing device for a user to develop a label format.

17. The system of claim 16 , further comprising at least one data source of information for the label, wherein the integrated development environment further configures the computing device for a user to provide the information in the label when the label is generated by the printer or by the computing device.

18. The system of claim 16 , further comprising a program code editor for the integrated development environment, wherein the integrated development environment provided with the program code editor further configures the computing device for a user to develop the programming code.

19. The system of claim 11 , wherein the programming code is written in a scripting language, and running the programming code on the printer modifies a portion of the functionality of the printer.

20. The system of claim 11 , wherein a representation of the printer is displayed when the computing device is caused to emulate the printer.

21. A method of providing customized printer software, the method comprising the steps of:

receiving from a first computing device an electronic request for the customized printer software compatible to be run on a printer that is configured with a first portion of printer firmware and a second portion of printer firmware, the first portion of printer firmware being shared by the printer and a second computing device, wherein the request includes at least one specification related to the customized printer software;

developing, on the second computing device, the customized printer software, wherein the second computing device is configured with the first portion of printer firmware, the first portion of printer firmware being different from the second portion of printer firmware, the second portion of printer firmware not being shared with the second computing device;

running the customized printer software on the second computing device so as to verify that the customized printer software satisfies the electronic request;

emulating the printer running the customized printer software on the second computing device when the customized printer software runs on the second computing device, the emulating occurring as a result of the customized printer software running on the second computing device and interfacing with the first portion of printer firmware on the second computing device, thereby accurately representing a printer output and the functioning of the printer;

modifying the customized printer software and running the modified customized printer software on the second computing device when the customized printer software is not verified; and

sending the customized printer software to the first computing device when the customized printer software is verified,

wherein the second computing device and the printer are not connected to each other so that image data cannot be transmitted from the printer to the second computing device.

22. The method of claim 21 , wherein the customized printer software is written in a scripting language, and running the customized printer software on the printer modifies a portion of the functionality of the printer.

Assignments (3)
CHANGE OF NAME Recorded Mar 5, 2026
From: SATO HOLDINGS KABUSHIKI KAISHA
To: SATO CORPORATION
Reel/Frame 075020/0001 →
MERGER Recorded Jun 17, 2016
From: KABUSHIKI KAISHA SATO CHISHIKI ZAISAN KENKYUSYO
To: SATO HOLDINGS KABUSHIKI KAISHA
Reel/Frame 038939/0920 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2012
From: GRIBEL, STAFFAN; JONSSON, PETER
To: SATO HOLDINGS KABUSHIKI KAISHA; KABUSHIKI KAISHA SATO CHISHIKI ZAISAN KENKYUSYO
Reel/Frame 028684/0971 →
Continuity (1)
Related Publication 20120293823A1 · Nov 22, 2012