Prosecution Insights
Last updated: April 19, 2026
Application No. 19/175,955

PROFILE CACHING FOR A PERIPHERAL DEVICE

Final Rejection §101§103§DP
Filed
Apr 10, 2025
Examiner
PATEL, SANJIV D
Art Unit
2625
Tech Center
2600 — Communications
Assignee
Logitech Europe S A
OA Round
2 (Final)
78%
Grant Probability
Favorable
3-4
OA Rounds
2y 1m
To Grant
82%
With Interview

Examiner Intelligence

Grants 78% — above average
78%
Career Allow Rate
749 granted / 964 resolved
+15.7% vs TC avg
Minimal +4% lift
Without
With
+4.3%
Interview Lift
resolved cases with interview
Fast prosecutor
2y 1m
Avg Prosecution
27 currently pending
Career history
991
Total Applications
across all art units

Statute-Specific Performance

§101
3.9%
-36.1% vs TC avg
§103
56.5%
+16.5% vs TC avg
§102
15.7%
-24.3% vs TC avg
§112
11.3%
-28.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 964 resolved cases

Office Action

§101 §103 §DP
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Claim 1 has been amended as per Applicant’s amendment filed on February 26, 2026. No claims have been canceled. Claims 1-20 are pending Double Patenting A rejection based on double patenting of the “same invention” type finds its support in the language of 35 U.S.C. 101 which states that “whoever invents or discovers any new and useful process... may obtain a patent therefor...” (Emphasis added). Thus, the term “same invention,” in this context, means an invention drawn to identical subject matter. See Miller v. Eagle Mfg. Co., 151 U.S. 186 (1894); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Ockert, 245 F.2d 467, 114 USPQ 330 (CCPA 1957). A statutory type (35 U.S.C. 101) double patenting rejection can be overcome by canceling or amending the claims that are directed to the same invention so they are no longer coextensive in scope. The filing of a terminal disclaimer cannot overcome a double patenting rejection based upon 35 U.S.C. 101. Claims 1-3, 8-10, 15-17 are rejected under 35 U.S.C. 101 as claiming the same invention as that of claims 1, 2, 7, 8, 13, 14 of prior U.S. Patent No. 12,299,211. This is a statutory double patenting rejection. Present Application US Patent 12,299,211 1. A computer-implemented method comprising: receiving, by one or more processors of a keyboard device from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; programming the plurality of keys using the first key input profile, wherein said programming includes: determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, retrieving the first key input profile from the persistent memory for use in said programming; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size; and using the first key input profile received from the host computing device for said programming [Claim 2] 2. The computer-implemented method of claim 1 [Claim 2] wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and [Claim 2]wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 1. A computer-implemented method comprising: receiving, by one or more processors of a keyboard device from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; programming the plurality of keys using the first key input profile, determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 3. The computer-implemented method of claim 2 wherein the persistent memory includes a second key input profile with a corresponding second hash code, wherein determining that the first key input profile is not stored in persistent memory further includes: determining that the first hash code does not match any other hash codes of the key input profiles stored in the persistent memory; determining a threshold match between the first key input profile and the second key input profile when the first key input profile differs from the second key input profile by less than a delta of m key assignments; receiving delta data from the host computing device corresponding only to key assignments that differ from the first key input profile to the second key input profile; and programming the plurality of keys to match the first key input profile using the second key profile in persistent memory and the delta data. 2. The computer-implemented method of claim 1 wherein the persistent memory includes a second key input profile with a corresponding second hash code, wherein determining that the first key input profile is not stored in persistent memory further includes: determining that the first hash code does not match any other hash codes of the key input profiles stored in the persistent memory; determining a threshold match between the first key input profile and the second key input profile when the first key input profile differs from the second key input profile by less than a delta of m key assignments; receiving delta data from the host computing device corresponding only to key assignments that differ from the first key input profile to the second key input profile; and programming the plurality of keys to match the first key input profile using the second key profile in persistent memory and the delta data. 8. A keyboard device comprising: one or more processors; one or more non-transitory, computer-readable storage mediums containing instructions configured to cause the one or more processors to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile. [Claim 9] 9. The keyboard device of claim 8 [Claim 9] wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 7. A keyboard device comprising: one or more processors; one or more non-transitory, computer-readable storage mediums containing instructions configured to cause the one or more processors to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile, wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 10. The keyboard device of claim 9 wherein the persistent memory includes a second key input profile with a corresponding second hash code, wherein determining that the first key input profile is not stored in persistent memory further includes: determining that the first hash code does not match any other hash codes of the key input profiles stored in the persistent memory; determining a threshold match between the first key input profile and the second key input profile when the first key input profile differs from the second key input profile by less than a delta of m key assignments; receiving delta data from the host computing device corresponding only to key assignments that differ from the first key input profile to the second key input profile; and programming the plurality of keys to match the first key input profile using the second key profile in persistent memory and the delta data. 8. The keyboard device of claim 7 wherein the persistent memory includes a second key input profile with a corresponding second hash code, wherein determining that the first key input profile is not stored in persistent memory further includes: determining that the first hash code does not match any other hash codes of the key input profiles stored in the persistent memory; determining a threshold match between the first key input profile and the second key input profile when the first key input profile differs from the second key input profile by less than a delta of m key assignments; receiving delta data from the host computing device corresponding only to key assignments that differ from the first key input profile to the second key input profile; and programming the plurality of keys to match the first key input profile using the second key profile in persistent memory and the delta data. 15. A non-transitory computer-program product tangibly embodied in a machine-readable non-transitory storage medium that includes instructions configured to cause one or more processors of a keyboard device to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile. [Claim 16] 16. The non-transitory computer-program product of claim 15 [Claim 16] wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 13. A non-transitory computer-program product tangibly embodied in a machine-readable non-transitory storage medium that includes instructions configured to cause one or more processors of a keyboard device to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 17. The non-transitory computer-program product of claim 16 wherein the persistent memory includes a second key input profile with a corresponding second hash code, wherein determining that the first key input profile is not stored in persistent memory further includes: determining that the first hash code does not match any other hash codes of the key input profiles stored in the persistent memory; determining a threshold match between the first key input profile and the second key input profile when the first key input profile differs from the second key input profile by less than a delta of m key assignments; receiving delta data from the host computing device corresponding only to key assignments that differ from the first key input profile to the second key input profile; and programming the plurality of keys to match the first key input profile using the second key profile in persistent memory and the delta data. 14. The non-transitory computer-program product of claim 13 wherein the persistent memory includes a second key input profile with a corresponding second hash code, wherein determining that the first key input profile is not stored in persistent memory further includes: determining that the first hash code does not match any other hash codes of the key input profiles stored in the persistent memory; determining a threshold match between the first key input profile and the second key input profile when the first key input profile differs from the second key input profile by less than a delta of m key assignments; receiving delta data from the host computing device corresponding only to key assignments that differ from the first key input profile to the second key input profile; and programming the plurality of keys to match the first key input profile using the second key profile in persistent memory and the delta data. The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13. The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer. Claims 1, 4-8, 11-15, 18-20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 3-7, 9-13, 15-17 of U.S. Patent No. 12,299,211. Present Application US Patent 12,299,211 1. A computer-implemented method comprising: receiving, by one or more processors of a keyboard device from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; programming the plurality of keys using the first key input profile, wherein said programming includes: determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, retrieving the first key input profile from the persistent memory for use in said programming; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size; and using the first key input profile received from the host computing device for said programming 1. A computer-implemented method comprising: receiving, by one or more processors of a keyboard device from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; programming the plurality of keys using the first key input profile, determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 4. The computer-implemented method of claim 1 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when: the first key input profile is at least n bytes in size; and the first key input profile is included in a rolling ledger of the last x key input profiles in use. 3. The computer-implemented method of claim 1 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when: the first key input profile is at least n bytes in size; and the first key input profile is included in a rolling ledger of the last x key input profiles in use. 5. The computer-implemented method of claim 1 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 4. The computer-implemented method of claim 1 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 6. The computer-implemented method of claim 1 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and no previous writes to persistent memory have occurred in the last z sessions. 5. The computer-implemented method of claim 1 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and no previous writes to persistent memory have occurred in the last z sessions. 7. The computer-implemented method of claim 1 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 6. The computer-implemented method of claim 1 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 8. A keyboard device comprising: one or more processors; one or more non-transitory, computer-readable storage mediums containing instructions configured to cause the one or more processors to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile. 7. A keyboard device comprising: one or more processors; one or more non-transitory, computer-readable storage mediums containing instructions configured to cause the one or more processors to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile, wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 11. The keyboard device of claim 8 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when: the first key input profile is at least n bytes in size; and the first key input profile is included in a rolling ledger of the last x key input profiles in use. 9. The keyboard device of claim 7 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when: the first key input profile is at least n bytes in size; and the first key input profile is included in a rolling ledger of the last x key input profiles in use. 12. The keyboard device of claim 8 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 10. The keyboard device of claim 7 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 13. The keyboard device of claim 8 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and no previous writes to persistent memory have occurred in the last z sessions. 11. The keyboard device of claim 7 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and no previous writes to persistent memory have occurred in the last z sessions. 14. The keyboard device of claim 8 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 12. The keyboard device of claim 7 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 15. A non-transitory computer-program product tangibly embodied in a machine-readable non-transitory storage medium that includes instructions configured to cause one or more processors of a keyboard device to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile. 13. A non-transitory computer-program product tangibly embodied in a machine-readable non-transitory storage medium that includes instructions configured to cause one or more processors of a keyboard device to perform operations including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device; determining whether the first key input profile is locally stored on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory; and in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile wherein the request to switch the first key input profile for the plurality of keys on the keyboard device includes a first hash code that represents the first key input profile, and wherein determining whether the first key input profile is locally stored on the keyboard device in the persistent memory is based on matching the first hash code with any other hash codes of the key input profiles stored in the persistent memory. 18. The non-transitory computer-program product of claim 15 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when: the first key input profile is at least n bytes in size; and the first key input profile is included in a rolling ledger of the last x key input profiles in use. 15. The non-transitory computer-program product of claim 13 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when: the first key input profile is at least n bytes in size; and the first key input profile is included in a rolling ledger of the last x key input profiles in use. 19. The non-transitory computer-program product of claim 15 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 16. The non-transitory computer-program product of claim 13 wherein further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and the persistent memory has not exceeded y % of its recommended write cycles. 20. The non-transitory computer-program product of claim 15 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and no previous writes to persistent memory have occurred in the last z sessions. 17. The non-transitory computer-program product of claim 13 further in response to the determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile: is at least n bytes in size; is included in a rolling ledger of the last x key input profiles in use; and no previous writes to persistent memory have occurred in the last z sessions. Although the claims at issue are not identical, they are not patentably distinct from each other because the scope of Claims 1, 4-8, 11-15, 18-20 of the present application overlap and encompass the scope of claims 1, 3-7, 9-13, 15-17 of U.S. Patent No. 12,299,211, and vice-versa. Therefore, it would be obvious to a person of ordinary skill to broaden the scope of claims 1, 3-7, 9-13, 15-17 of U.S. Patent No. 12,299,211 to that of claims 1, 4-8, 11-15, 18-20 of the present application for the well-known purpose of having a larger scope of patent protection, and consequently, more products in the industrial applicability which are patent protected. Claim Interpretation Regarding independent claim 1, claim 1 recites in part the following: “[A] in response to determining that the first key input profile is stored in persistent memory, retrieving the first key input profile from the persistent memory; and [B] in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile” (emphasis added). The above claim language contemplates a mutually exclusive contingent limitation. That is, in no case do both [A] and [B] occur, and in no case do both [A] and [B] not occur. Since claim 1 is a method claim, either conditional step [A] or conditional step [B] is not required to be performed. Therefore, Examiner interprets the scope of claim 1 as reciting only condition [A] and not reciting condition [B]. See MPEP 2111.04(II). Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim 1 is rejected under 35 U.S.C. 103 as being unpatentable over Heo (US 2020/0167071 A1, Published May 28, 2020) in view of Casparian (US 2018/0219553 A1, Published August 2, 2018) and Sun (2004/0150535 A1, Published August 5, 2004). As to claim 1, Heo discloses a computer-implemented method comprising: receiving, by one or more processors of a keyboard device from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device (Heo at Figs. 3-4, Step 430 is analogous to a request to switch to a first key input profile; ¶ [0071]);… wherein said programming includes: determining whether the first key input profile is locally stored… (Heo at Figs 3-4, Step 440; ¶ [0071]-[0072]); in response to determining that the first key input profile is stored in persistent memory, retrieving the first key input profile stored in the persistent memory (Heo at Fig. 2-4, Step 450; ¶ [0071]-[0072]). Heo does not expressly disclose programming the plurality of keys using the first key input profile. However, Casparian does disclose programming the plurality of keys using the first key input profile (Casparian at Fig. 10, steps 1008 and 1020; Fig. 11, step 1104; ¶ [0144]). Heo discloses a base keyboard device upon which the claimed invention is an improvement. Casparian discloses a comparable keyboard device which has been improved in the same way as the claimed invention. Hence, it would have been obvious to a person having ordinary skill in the art before the effective filing date to modify or add to Heo the teachings of Casparian for the predictable result of providing systems and methods are disclosed herein that may be implemented to indicate real time availability of individual key assemblies for user input to an information handling system (Casparian at ¶ [0007]). Heo does not disclose that the first key input profile is stored on a persistent memory of the keyboard device. However, Sun does disclose that the first key input profile is stored on a persistent memory of the keyboard device (Sun at Fig. 1, non-volatile memory 122 of input device 10 including keyboard 14; ¶ [0012] discloses “the keyboard 14 can directly change the mapping of the keys on the keyboard 14 by programming the nonvolatile memory 122. In other words, the keys of the keyboard 14 can be redefined by programming their mapping or key definitions into the nonvolatile memory 122.”). Heo discloses a base keyboard device upon which the claimed invention is an improvement. Sun discloses a comparable keyboard device which has been improved in the same way as the claimed invention. Hence, it would have been obvious to a person having ordinary skill in the art before the effective filing date to modify or add to Heo the teachings of Sun for the predictable result of providing a non-volatile memory to remedy the problem of once the power is turned off, the memory content of the keyboard is lost, no matter the definitions and the software programs are stored within the keyboard or the random access memory (RAM) of the computer mainframe (Sun at ¶ [0003], [0007]-[0008]). Since claim 1 is a method claim, the following claim language does not carry patentable weight as discussed above in the Claim Interpretation section: in response to determining that the first key input profile is not stored in persistent memory: writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile. Claims 8, 15 are rejected under 35 U.S.C. 103 as being unpatentable over Heo (US 2020/0167071 A1, Published May 28, 2020) in view of Casparian (US 2018/0219553 A1, Published August 2, 2018) and Shen (CN 115221076 A, Published October 21, 2022 – Translation attached). As to claim 8, Heo discloses a keyboard device comprising: one or more processors; one or more non-transitory, computer-readable storage mediums containing instructions configured to cause the one or more processors to perform operations (Heo at Figs. 1-3) including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device (Heo at Figs. 3-4, Step 430 is analogous to a request to switch to a first key input profile; ¶ [0071]); determining whether the first key input profile is locally stored… (Heo at Figs 3-4, Step 440; ¶ [0071]-[0072]); in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory (Heo at Fig. 3-4, Step 450; ¶ [0072]); and in response to determining that the first key input profile is not stored in persistent memory (Heo at Fig. 4, Steps 440-460). While Heo does disclose in response to determining that the first key input profile is not stored in persistent memory (Heo at Fig. 4, Steps 440-460), the combination does not disclose writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile. However, Casparian does disclose that the first key input profile is stored on a persistent memory of the keyboard device (Casparian at Fig. 3, application key configuration parameters 320; ¶ [0076] discloses “In one embodiment, application key configuration parameters 320 may reside (be stored) in volatile and/or non-volatile random access memory (RAM) inside keyboard MCU 121, or may alternatively reside in volatile or non-volatile memory separate from keyboard MCU 121 as illustrated in FIG. 3. In any case, keyboard MCU 121 may then access and use the user-configurable key map information within the application key configuration parameters 320 as the basis for controlling retraction and/or peak depression force of individual retractable key assemblies 405 of keyboard matrix 199.” ¶ [0144] discloses “This user-created application key profile configuration settings file may also associated with the given user application 312 and stored in system storage 135 (e.g., non-volatile memory such as a hard drive, solid state drive “SSD”, Flash memory, etc.)”).1 Casparian also discloses writing the first key input profile to persistent memory… and programming the plurality of keys using the first key input profile (Casparian at Fig. 10, steps 1008 and 1020; Fig. 11, step 1104; ¶ [0144]). Heo discloses a base keyboard device upon which the claimed invention is an improvement. Casparian discloses a comparable keyboard device which has been improved in the same way as the claimed invention. Hence, it would have been obvious to a person having ordinary skill in the art before the effective filing date to modify or add to Heo the teachings of Casparian for the predictable result of providing systems and methods are disclosed herein that may be implemented to indicate real time availability of individual key assemblies for user input to an information handling system (Casparian at ¶ [0007]). The combination of Heo and Casparian does not expressly disclose that the writing occurs when the first key input profile is at least n bytes in size. However, Shen does contemplate that the writing occurs when the first key input profile is at least n bytes in size (Shen at Page 2 discloses “and the Optane-persistent memory developed by Intel Corporation has been commercially available. persistent memory has low delay, non-volatile, byte characteristics, further has high expandability, low energy consumption and large storage density and so on. different according to the realizing technology, persistent memory device also has different access granularity and persistent domain, the hardware of the characteristics, such as Intel Optane persistent memory 100 series and 200 series has 256 bytes of access granularity (the minimum unit of reading and writing)”). The combination of Heo and Casparian discloses a base nonvolatile memory upon which the claimed invention is an improvement. Shen discloses a comparable nonvolatile memory which has been improved in the same way as the claimed invention. Hence, it would have been obvious to a person having ordinary skill in the art before the effective filing date to simply substitute the memory of Shen into that for the combination of Heo and Casparian with predictable results of storing data. As to claim 15, Heo discloses a non-transitory computer-program product tangibly embodied in a machine-readable non-transitory storage medium that includes instructions configured to cause one or more processors of a keyboard device to perform operations (Heo at Figs. 1-3) including: receiving, by the one or more processors from a host computing device communicatively coupled thereto, a request to switch to a first key input profile for a plurality of keys on the keyboard device (Heo at Figs. 3-4, Step 430 is analogous to a request to switch to a first key input profile; ¶ [0071]); determining whether the first key input profile is locally stored… (Heo at Figs 3-4, Step 440; ¶ [0071]-[0072]); on the keyboard device in a persistent memory; in response to determining that the first key input profile is stored in persistent memory, programming the plurality of keys using the first key input profile stored in the persistent memory (Heo at Fig. 3-4, Step 450; ¶ [0072]); and in response to determining that the first key input profile is not stored in persistent memory (Heo at Fig. 4, Steps 440-460). While Heo does disclose in response to determining that the first key input profile is not stored in persistent memory (Heo at Fig. 4, Steps 440-460), the combination does not disclose writing the first key input profile to persistent memory when the first key input profile is at least n bytes in size and programming the plurality of keys using the first key input profile. However, Casparian does disclose that the first key input profile is stored on a persistent memory of the keyboard device (Casparian at Fig. 3, application key configuration parameters 320; ¶ [0076] discloses “In one embodiment, application key configuration parameters 320 may reside (be stored) in volatile and/or non-volatile random access memory (RAM) inside keyboard MCU 121, or may alternatively reside in volatile or non-volatile memory separate from keyboard MCU 121 as illustrated in FIG. 3. In any case, keyboard MCU 121 may then access and use the user-configurable key map information within the application key configuration parameters 320 as the basis for controlling retraction and/or peak depression force of individual retractable key assemblies 405 of keyboard matrix 199.” ¶ [0144] discloses “This user-created application key profile configuration settings file may also associated with the given user application 312 and stored in system storage 135 (e.g., non-volatile memory such as a hard drive, solid state drive “SSD”, Flash memory, etc.)”).2 Casparian also discloses writing the first key input profile to persistent memory… and programming the plurality of keys using the first key input profile (Casparian at Fig. 10, steps 1008 and 1020; Fig. 11, step 1104; ¶ [0144]). Heo discloses a base keyboard device upon which the claimed invention is an improvement. Casparian discloses a comparable keyboard device which has been improved in the same way as the claimed invention. Hence, it would have been obvious to a person having ordinary skill in the art before the effective filing date to modify or add to Heo the teachings of Casparian for the predictable result of providing systems and methods are disclosed herein that may be implemented to indicate real time availability of individual key assemblies for user input to an information handling system (Casparian at ¶ [0007]). The combination of Heo and Casparian does not expressly disclose that the writing occurs when the first key input profile is at least n bytes in size. However, Shen does contemplate that the writing occurs when the first key input profile is at least n bytes in size (Shen at Page 2 discloses “and the Optane-persistent memory developed by Intel Corporation has been commercially available. persistent memory has low delay, non-volatile, byte characteristics, further has high expandability, low energy consumption and large storage density and so on. different according to the realizing technology, persistent memory device also has different access granularity and persistent domain, the hardware of the characteristics, such as Intel Optane persistent memory 100 series and 200 series has 256 bytes of access granularity (the minimum unit of reading and writing)”). The combination of Heo and Casparian discloses a base nonvolatile memory upon which the claimed invention is an improvement. Shen discloses a comparable nonvolatile memory which has been improved in the same way as the claimed invention. Hence, it would have been obvious to a person having ordinary skill in the art before the effective filing date to simply substitute the memory of Shen into that for the combination of Heo and Casparian with predictable results of storing data. Response to Arguments Applicant's arguments filed with respect to claims 1-20 have been fully considered but they are not persuasive. As to claim 1, Applicant has amended claim 1 to “further define the inventive concept and to overcome the rejection set forth in the Office Action” (Applicant’s Response (AR) at page 10). Examiner respectfully disagrees because the amended claim aspects are necessarily present in the prior or would be obvious to a person having ordinary skill the art. As to claims 8 and 15, Applicant contends that there is no motivation to combine the teachings of Heo and Casparian (AR at pages 10-11). Examiner respectfully disagrees. Both Heo and Casparian are directed to key based input device (keyboards). Therefore, there exists and ample nexus from which a person having ordinary skill would be motivated to combine their teachings as described above in the substantive rejection of the claims. Further, Applicant contends that the Shen reference is also inapposite to combine with Heo and Casparian, and “fails to account for the specific, nuanced logic recited in the claim” (AR at pages 11-12). Examiner respectfully disagrees. First, Shen is not offered for disclosing “a low-level memory hardware specification” as contended by Applicant (AR at page 12). Instead, Shen is offered for suggesting the claimed aspect of “that the writing occurs when the first key input profile is at least n bytes in size.” Moreover, Examiner submits that such claim aspect is well-known in the art. Early hard disk drives were routinely equipped with a cache memory which would write data to the hard disk when the cache storage reached a threshold. Thus, such performance optimization is well-known in the art. Conclusion Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to Sanjiv D Patel whose telephone number is (571)270-5731. The examiner can normally be reached Monday - Friday, 9:00 am - 5:00 pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, William Boddie can be reached on 571-272-0666. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /Sanjiv D. Patel/Primary Examiner, Art Unit 2623 03/19/2026 1 See also Sun. 2 See also Sun in Conclusion section below.
Read full office action

Prosecution Timeline

Apr 10, 2025
Application Filed
Nov 17, 2025
Non-Final Rejection — §101, §103, §DP
Feb 26, 2026
Response Filed
Mar 19, 2026
Final Rejection — §101, §103, §DP (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12602124
DISPLAY DEVICE INCLUDING A TOUCH SENSOR AND MANUFACTURING METHOD THEREOF
2y 5m to grant Granted Apr 14, 2026
Patent 12603054
DISPLAY SUBSTRATE AND DISPLAY DEVICE
2y 5m to grant Granted Apr 14, 2026
Patent 12596194
Apparatus for Optically Measuring the Distance to a Scattering Target Object or a Reflecting Target Object
2y 5m to grant Granted Apr 07, 2026
Patent 12596448
DISPLAY DEVICE
2y 5m to grant Granted Apr 07, 2026
Patent 12591300
LIDAR-BASED IMMERSIVE 3D REALITY CAPTURE SYSTEMS, AND RELATED METHODS AND APPARATUS
2y 5m to grant Granted Mar 31, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
78%
Grant Probability
82%
With Interview (+4.3%)
2y 1m
Median Time to Grant
Moderate
PTA Risk
Based on 964 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month