Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer peripheral, comprising: an image array; at least one motion sensor; a computer interface; and control circuitry adapted to: read a plurality of values from the at least one motion sensor and, using the read values, generate a plurality of instances of a cumulative position value; trigger the image array to capture a plurality of images; and transfer image data from the image array and the plurality of instances of the cumulative position value through the computer interface in a format that associates the image data with the instances of the cumulative position value by appending an instance of the cumulative position value to a respective image frame comprising data of an image of the plurality of images, the instance of the cumulative position value being associated with a time at which the image array is triggered to capture an image of the plurality of images, wherein: the computer peripheral has a plurality of memory locations, each associated with a respective cumulative position value for a motion sensor of the at least one motion sensor; and the control circuitry is further adapted to generate an instance of the cumulative position value of the plurality of instances of the cumulative position value by adding to a value in a respective memory location of the plurality of memory locations a value read from the respective motion sensor of the at least one motion sensor.
2. The computer peripheral of claim 1 , wherein: the control circuitry is adapted to receive a first input indicating a beginning of a scan mode and a second input indicating an end of the scan mode; and between the first input and the second input, the control circuitry is adapted to repeatedly: read a value from the at least one motion sensor and, using the read value, generate an instance of the cumulative position value of the plurality of cumulative position values; and transfer image data of the plurality of images from the image array and an instance of the cumulative position value through the computer interface in a format that associates the image data with the instance of the cumulative position value, the instance of the cumulative position value being associated with the time at which the image array captures the image.
3. The computer peripheral of claim 2 , wherein: the computer peripheral comprises a handheld scanner; and the control circuitry is adapted to, when operating in a mouse mode, different than the scan mode, repeatedly transfer a value from the motion sensor through the computer interface without transferring image data from the image array.
4. The computer peripheral of claim 3 , further comprising a user-operable control coupled to the control circuitry, the user-operable control generating the first input when operated by a user.
5. The computer peripheral of claim 4 , wherein: the computer peripheral further comprises a housing having a lower surface, the lower surface having a viewing window and a side surface transverse to the lower surface; and the user-operable control comprises a button disposed on the side surface.
6. The computer peripheral of claim 3 , wherein appending the instance of the cumulative position value to the respective image frame comprises appending the instance of the cumulative position value to an end of the respective image frame as a footer of the respective image frame.
7. The computer peripheral of claim 1 , wherein: the at least one motion sensor comprises an accumulated motion register; and the control circuitry is further adapted to reset the accumulated motion register upon reading the sensor.
8. The computer peripheral of claim 1 , wherein the computer interface is a USB interface.
9. The computer peripheral of claim 1 , wherein the computer peripheral is a cell phone.
10. A method of operating a computer peripheral comprising an image array, a plurality of motion sensors and a computer interface, the method comprising: at each of a plurality of times, generating multi-dimensional position information using the plurality of motion sensors; repeatedly capturing images with the image array, each image being captured at a respective time, and generating associated image data; and transferring the image data associated with each of a plurality of captured images through the computer interface, the image data for each image being transferred in a format that associates the image data with the multi-dimension position information by appending the multi-dimension position information to an image frame comprising image data for an image of the repeatedly captured images, the multi-dimension position information being generated for a respective time associated with capture of the image, wherein: transferring the image data in a format that associates the image data with the multi-dimension position information comprises transferring the image data associated with each of the plurality of captured images as a stream of packets, each packet comprising image data for an image of the plurality of captured images multi-dimensional position information associated with a captured image of the plurality of captured images; and each packet of the stream comprises image data and multi-dimensional position information generated for a time prior to a time at which the image associated with the image data was captured.
11. The method of claim 10 , wherein each packet of the stream comprises image data and multi-dimensional position information generated for a time at which the image associated with the image data was captured.
12. The method of claim 11 , wherein each packet of the stream comprises the multi-dimensional position information formatted as a footer for the image data.
13. The method of claim 10 , wherein the prior time is associated with a time at which an image associated with the image data in a preceding packet in the stream was captured.
14. The method of claim 10 , wherein: the multi-dimensional position information is generated based on readings from the plurality of motion sensors at times that are asynchronous relative to times at which the images are captured with the image array; and transferring the image data for each of the plurality of captured images as a stream of packets comprises attaching a timestamp to each packet, the timestamp for each packet indicating a time of reading the sensors to obtain values on which the multi-dimensional position information is based.
15. The method of claim 10 , wherein: appending the multi-dimension position information to the image frame comprising the image data for the image of the repeatedly captured images comprises appending the multi-dimension position information at a beginning of the image frame.
16. A method of operating a computer peripheral comprising an image array, a plurality of motion sensors and a computer interface, the method comprising: operating the computer peripheral during a mouse mode by repeatedly: transferring a value from each of the plurality of motion sensors through the computer interface; and operating the computer peripheral during a scan mode by repeatedly: reading a value from each of the plurality of motion sensors and, using the read value, generating an instance of a respective cumulative position value of a plurality of cumulative position values; triggering the image array to capture an image; and transferring image data from the image array and an instance of each of the plurality of cumulative position values through the computer interface in a format that associates the image data with the instances of the plurality of cumulative position values, the instances of the plurality of cumulative position values being associated with the time at which the image array is triggered to capture the image; wherein: each of the plurality of motion sensors comprises a register storing a value indicating sensed motion since a reset of the register; and when the computer peripheral is operated in the scan mode: the computer peripheral has a plurality of memory locations, each associated with a respective cumulative position value for a motion sensor of the plurality of motion sensors; generating an instance of a respective cumulative position value of the plurality of cumulative position values comprises adding to a value in a respective memory location of the plurality of memory locations a value read from the register of a respective motion sensor of the plurality of motion sensors without resetting the register; and transferring the image data in a format that associates the image data with the instances of the plurality of cumulative position values comprises transferring values in the plurality of memory locations at times associated with times at which the image array is triggered to capture an image.
17. The method of claim 16 , wherein: each of the plurality of motion sensors comprises a register storing a value indicating sensed motion since a reset of the register; and when the computer peripheral is operated in the mouse mode, transferring the value from each of the plurality of motion sensors comprises, for each of the plurality of sensors, reading the value from the register and resetting the register.
18. The method of claim 17 , wherein: when the computer peripheral is operated in the scan mode, reading a value from each of the plurality of motion sensors comprises, for each of the plurality of sensors, reading the value from the register without resetting the register.
19. The method of claim 16 , wherein operating the computer peripheral in the scan mode comprises: in response to an acknowledgement that the image data transferred through the computer interface was received, a subsequent act of reading the value from each of the plurality of motion sensors comprises resetting the motion sensor.
Unknown
December 25, 2012
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.