This disclosure relates generally to brewer devices for making coffee, tea and the like, and particularly to a device for updating software and other content of the brewer device.
Many existing brewer devices include communication ports, such as USB ports, through which a software update and/or configuration changes can be made to the brewer. For example, the brewer can be updated by plugging a USB thumb drive loaded with update content into the brewer's USB port and initiate an update. While such configuration changes and/or software updates can extend the brewer's functionality and lifespan, the update process can be time consuming and error prone in some cases.
Technicians, sales associates, field engineers and customers have to deliver and manage physical thumb drives to access files or contents that may be needed for provisioning software updates and configuration changes to brewer devices. Currently, these updates are sent via email or through a file exchange system for which accounts and account setup can be a hurdle. The download of the update content can be dependent on the user's browser, and introduce difficulty in the update process if the browser is incompatible. Likewise, transferring the update to a USB thumb drive can be error prone because the files may not be structured properly or could be stored in an improper format. If the transfer is done incorrectly, many times due to lack of proper instructions, this introduces potential failures in the update process. These issues can make the whole update process extremely frustrating for users and eventually lead to a bad customer experience. Therefore, there is a need for a device that provides a secure and failure proof mechanism for delivering update content to brewer devices.
According to one aspect, this disclosure provides a brewer update device for updating one or more configuration parameters of a brewer device. The brewer update device includes a portal search manager, a content delivery manager, and an update manager. The portal search manager is to establish a wireless connection with a cloud account associated with one or more pending updates for a brewer device. The content delivery manager is to wirelessly retrieve and store the one or more pending updates to a data storage device. The update manager is to emulate a disk drive and transfer the one or more pending updates to the brewer device.
According to another aspect, this disclosure provides a universal serial bus (USB) drive for changing one or more parameters of a brewer device. The USB drive comprises: a processor; a USB interface circuit coupled to the processor; a wireless communication circuit coupled to the processor; and a memory coupled to the processor and having stored therein a plurality of instructions that, when executed, cause the USB drive to: establish, using the wireless communication circuit, a wireless connection to a cloud account through which one or more configuration changes to a brewer device can be entered; search, using the wireless connection, for any pending updates associated with the cloud account; retrieve, using the wireless connection, one or more pending updates associated with the cloud account; store the one or more updates associated with the cloud account to the memory; emulate a disk drive in response to detecting initiation of an update process; and transfer, using the USB interface circuit, the one or more updates associated with the cloud account to a brewer device.
According to a further aspect, this disclosure provides one or more non-transitory, computer-readable storage media comprising a plurality of instructions stored thereon that, in response to being executed, cause a computing device to: establish a wireless connection to a cloud account through which one or more configuration changes to a brewer device can be entered; search, using the wireless connection, for any pending updates associated with the cloud account; retrieve, using the wireless connection, one or more pending updates associated with the cloud account; store the one or more updates associated with the cloud account to a data storage device; emulate a disk drive in response to detecting initiation of an update process; and transfer the one or more updates associated with the cloud account to a brewer device.
According to yet another aspect, this disclosure provides a remote server to configure one or more parameters of a brewer device. The remote server comprising: a processor; and a memory coupled to the processor and having stored therein a plurality of instructions that, when executed, cause the remote server to: receive credentials for an account of a user; present one or more content configuration options for updating one or more parameters of one or more brewer devices associated with the account of the user; receive one or more user-selected configuration options for the one or more brewer devices associated with the associated of the user; store the one or more user-selected configuration options based on the account of the user; and flag the account of the user as having one or more pending updates.
While the concepts of the present disclosure are susceptible to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and will be described herein in detail. It should be understood, however, that there is no intent to limit the concepts of the present disclosure to the particular forms disclosed, but on the contrary, the intention is to cover all modifications, equivalents, and alternatives consistent with the present disclosure and the appended claims.
References in the specification to “one embodiment,” “an embodiment,” “an illustrative embodiment,” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may or may not necessarily include that particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to effect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described. Additionally, it should be appreciated that items included in a list in the form of “at least one A, B, and C” can mean (A); (B); (C); (A and B); (A and C); (B and C); or (A, B, and C). Similarly, items listed in the form of “at least one of A, B, or C” can mean (A); (B); (C); (A and B); (A and C); (B and C); or (A, B, and C).
The disclosed embodiments may be implemented, in some cases, in hardware, firmware, software, or any combination thereof. The disclosed embodiments may also be implemented as instructions carried by or stored on a transitory or non-transitory machine-readable (e.g., computer-readable) storage medium, which may be read and executed by one or more processors. A machine-readable storage medium may be embodied as any storage device, mechanism, or other physical structure for storing or transmitting information in a form readable by a machine (e.g., a volatile or non-volatile memory, a media disc, or other media device).
In the drawings, some structural or method features may be shown in specific arrangements and/or orderings. However, it should be appreciated that such specific arrangements and/or orderings may not be required. Rather, in some embodiments, such features may be arranged in a different manner and/or order than shown in the illustrative figures. Additionally, the inclusion of a structural or method feature in a particular figure is not meant to imply that such feature is required in all embodiments and, in some embodiments, may not be included or may be combined with other features.
Referring now to
The connected USB drive 104 may be embodied as any type of computation or computer device capable of performing the functions described herein. As shown in
The processor 110 may be embodied as any type of processor capable of performing the functions described herein. The processor 110 may be embodied as a single or multi-core processor(s), microcontroller, or other processor or processing/controlling circuit.
The memory 114 may be embodied as any type of volatile or non-volatile memory or data storage capable of performing the functions described herein. In operation, the memory 114 may store various data and software used during operation of the connected USB drive 104 such as applications, programs, libraries, and/or drivers. The memory 114 is communicatively coupled to the processor 110 via the I/O subsystem 112, which may be embodied as circuitry and/or components to facilitate input/output operations with the processor 120, the memory 126, and other components of the connected USB drive 104. In some embodiments, the I/O subsystem 112 may form a portion of a system-on-a-chip (SoC) and be incorporated, along with the processor 110, the memory 114, and other components of the connected USB drive 104, on a single integrated circuit chip. Similarly, the data storage device 120 may be embodied as any type of device or devices configured for short-term or long-term storage of data such as, for example, memory devices and circuits, memory cards, hard disk drives, solid-state drives, non-volatile flash memory, or other data storage devices. In some embodiments, the data storage device 120 could be embodied as circuitry for accepting external data storage devices, such as a microSD card or other external data storage.
The connected USB drive 104 also includes the communication subsystem 118, which may be embodied as any communication circuit, device, or collection thereof, capable of enabling communications between the connected USB drive 104 and other remote devices over the network 108. The communication subsystem 118 may be configured to use any one or more communication technology (e.g., wired or wireless communications) and associated protocols (e.g., Ethernet, Wi-Fi®, WiMAX, 3G, 4G LTE, etc.) to effect such communication. In some embodiments, the communication subsystem 118 may form a portion of a SoC and be incorporated along with the processor 110 and other components of the connected USB drive 104 on a single integrated circuit chip.
The connected USB drive 104 may further include the user interface 116 to receive user input and/or provide status information concerning operations of the connected USB drive 104. In some embodiments, the connected USB drive 104 could include an input device, such as a button, switch, touchscreen, etc., from which the user could initiate certain operations or otherwise interact with the connected USB drive 104. For example, the connected USB drive 104 could include a power button or switch that could be used to initiate delivery of updates to the connected USB drive 104. In some embodiments, the connected USB drive 104 could include the same (e.g., with a long press) or another button to initiate emulating a disk drive. The user interface 116 could include an output device for updating the user regarding status of the connected USB drive 104, such as status LED lights, a speaker to output verbal status, beeps or other audible output, a screen or other visual, audio, and/or haptic output. For example, the connected USB drive 104 could include one or more LEDs with colors and/or flashing patterns that function as status indicators. By way of example only, a slow flash (or first color) could indicate update delivery is ongoing and a fast flash (or second color) could indicate that delivery is complete.
The connected USB drive 104 includes a power source 124 to supply electrical power to the electrical components of the connected USB drive 104. Depending on the circumstances, the connected USB drive 104 could be configured to be plugged into an A/C power outlet, an automotive power supply and/or include an internal battery that could be charged for supplying power to the connected USB drive 104.
The connected USB drive 104 may include a USB interface circuit 122 that is configured to communicate using the USB protocol. For example, the USB interface circuit 122 could be a USB controller in some embodiments. In some embodiments, the USB interface circuit 122 may form a portion of an SoC and be incorporated along with the processor 110 and other components of the connected USB drive 104 on a single integrated circuit chip. Depending on the circumstances, the connected USB drive 104 could include an integral USB connector, such as a USB-A, micro-USB, USB-C or other connector type for connecting with a USB port of the brewer device 102. In some embodiments, instead of an integral USB connector, the connected USB drive 104 could include a port for plugging in a USB cable that could be attached to the brewer device 102 for updates.
Referring now to
The portal search manager 204 is configured to establish a connection with a cloud account associated with the connected USB drive 104. For example, the connected USB drive 104 could be programmed to connect with a particular network location (and/or cycles between multiple network locations) and includes credentials for accessing a cloud account into which configuration changes/updates have been entered via the device management portal 106. Depending on the circumstances, the portal search manager 204 could be programmed to connect with more than one account. For example, consider a situation in which multiple accounts could be associated with a brewer device 102 depending on the type of update. The portal search manager could be configured to use the communications subsystem 118 to establish a cellular connection with the cloud account. In some embodiments, the portal search manager could connect with a Wi-Fi access point to access the network 108 and establish a connection with the cloud account.
The content delivery manager 206 is configured to determine whether any content updates are available for the cloud account associated with the connected USB drive 104 and initiate delivery to the connected USB drive 104. After the portal search manager 204 connects to the cloud account, the content delivery manager 206 searches the cloud account for any pending content updates. If there are no updates pending, the content delivery manager 206 could disconnect from the cloud account. If there are content updates, the content delivery manager 206 is configured to initiate delivery of the updates. Depending on the circumstances, the content delivery manager 206 could download the updates or the cloud account could push updates to the content delivery manager 206. Either way (e.g., whether the updates are pushed or pulled to the connected USB drive 104), the content delivery manager 206 stores the updates in the data storage 120.
The update manager 208 is configured to emulate a disk drive, such as a Flash drive, when the connected USB drive 104 is connected with the brewer device 102. In some embodiments, the update manager 208 is initiated through the user interface 116, such as by depressing a button or a switch on the connected USB drive 104. Typically, when the update manager 208 is emulating a disk drive, the brewer device 102 will treat the connected USB drive 104 like a conventional thumb drive for making updates.
Referring now to
Referring now to
Referring now to
It should be appreciated that, in some embodiments, the methods 400 and/or 500, may be embodied as various instructions stored on a computer-readable media, which may be executed by the processor 110, and/or other components of the connected USB drive 104 to cause the connected USB drive 104 to perform the respective method 400 and/or 500. The computer-readable media may be embodied as any type of media capable of being read by the connected USB drive 104 including, but not limited to, the memory 114, the data storage device 120, firmware devices, microcode, other memory or data storage devices of the connected USB drive 104, portable media readable by the connected USB drive 104, and/or other media.
Updating the brewer device 102 in the manner described herein with the connected USB drive 104 potentially offers multiple advantages. For example, a tech service person could drive over to the location where a software update is needed without worrying about the files and its format that needs to be prepared in a thumb drive. A tech service person with the connected USB drive 104 could have the update content pushed automatically to the device while driving over to the customer location. In situations where there is an immediate need for contents to be pushed while there is no access for a laptop nearby, the connected USB drive 104 acts as a completely secure and independent device, not needing a laptop to be in the vicinity. The connected USB drive 104 could also help sales associates and others always have the latest and greatest revision of all content that they need. The update content could be maintained on the connected USB drive 104 without any explicit action from them to download the latest revision every time and keeping up to date. The connected USB drive 104 could also aid end customers that own or lease the brewer device 102. These end customers could use the connected USB drive 104 as a tool for secure data transfers that manage and maintain a system that confirms delivery of critical information to a device owner and also establishes timestamps of when the content was pushed and when it was accessed for auditing purposes.
Illustrative examples of the technologies disclosed herein are provided below. An embodiment of the technologies may include any one or more, and any combination of, the examples described below.
Example 1 is a brewer update device for updating one or more configuration parameters of a brewer device. The brewer update device includes a portal search manager, a content delivery manager, and an update manager. The portal search manager is to establish a wireless connection with a cloud account associated with one or more pending updates for a brewer device. The content delivery manager is to wirelessly retrieve and store the one or more pending updates to a data storage device. The update manager is to emulate a disk drive and transfer the one or more pending updates to the brewer device.
Example 2 includes the subject matter of Example 1, and wherein: the brewer update device is a universal serial bus (USB) thumb drive.
Example 3 includes the subject matter of Examples 1-2, and wherein: to establish the wireless connection with the cloud account comprises (i) obtaining a predetermined network address stored on the brewer update device, wherein the predetermined network address is associated with the cloud account having one or more pending updates for a brewer device and (ii) connecting to the cloud account using the predetermined network address.
Example 4 includes the subject matter of Examples 1-3, and wherein: to establish the wireless connection with the cloud account further comprises (i) obtaining one or more credentials for accessing the cloud account stored on the brewer update device and (ii) accessing the cloud account based on the one or more credentials.
Example 5 includes the subject matter of Examples 1-4, and wherein: the portal search manager is to establish the wireless connection with the cloud account associated with one or more pending updates for the brewer device in response to power-up of the brewer update device.
Example 6 includes the subject matter of Examples 1-5, and wherein: the update manager is to initiate transfer of the one or more pending updates to the brewer device in response to selection of an input device of the brewer update device.
Example 7 includes the subject matter of Examples 1-6, and wherein: the input device is one or more of a button or switch.
Example 8 includes the subject matter of Examples 1-7, and wherein: the update manager is to transfer the one or more pending updates to the brewer device with wired or wireless communications of the brewer update device.
Example 9 includes the subject matter of Examples 1-8, and wherein: the update manager is further to, in response to completion of transfer of the one or more pending updates to the brewer device, indicate the transfer is complete on an output device.
Example 10 is a universal serial bus (USB) drive for changing one or more parameters of a brewer device. The USB drive comprises: a processor; a USB interface circuit coupled to the processor; a wireless communication circuit coupled to the processor; and a memory coupled to the processor and having stored therein a plurality of instructions that, when executed, cause the USB drive to: establish, using the wireless communication circuit, a wireless connection to a cloud account through which one or more configuration changes to a brewer device can be entered; search, using the wireless connection, for any pending updates associated with the cloud account; retrieve, using the wireless connection, one or more pending updates associated with the cloud account; store the one or more updates associated with the cloud account to the memory; emulate a disk drive in response to detecting initiation of an update process; and transfer, using the USB interface circuit, the one or more updates associated with the cloud account to a brewer device.
Example 11 includes the subject matter of Example 10, and wherein: to establish the wireless connection to the cloud account comprises connecting with a predetermined network address associated with the cloud account that is stored in the memory.
Example 12 includes the subject matter of Examples 10-11, and wherein: to establish the wireless connection to the cloud account includes retrieving one or more credentials for accessing the cloud account stored in the memory and connecting to the cloud account based on the one or more credentials.
Example 13 includes the subject matter of Examples 10-12, and wherein: the USB drive further includes an output device to update status of retrieving one or more pending updates.
Example 14 includes the subject matter of Examples 10-13, and wherein: the USB drive further includes an output device to update status of transferring the one or more pending updates to the brewer device.
Example 15 includes the subject matter of Examples 10-14, and wherein: the USB drive further includes one or more of an internal power source or a power port to receive an external power supply.
Example 16 includes the subject matter of Examples 10-15, and wherein: the USB drive further includes a USB connector coupled with the USB interface circuit to connect with a USB port of the brewing device.
Example 17 includes the subject matter of Examples 10-16, and wherein: the USB drive further includes an input device, and further comprising one or more instructions to initiate transfer of the one or more pending updates to the brewer device in response to selection of the input device.
Example 18 includes the subject matter of Examples 10-16, and wherein: the input device is one or more of a button or switch.
Example 19 includes the subject matter of Examples 10-17, and wherein: the USB drive includes one or more instructions to establish the wireless connection with the cloud account associated with one or more pending updates for the brewer device in response to power-up of the USB drive.
Example 20 is one or more non-transitory, computer-readable storage media comprising a plurality of instructions stored thereon that, in response to being executed, cause a computing device to: establish a wireless connection to a cloud account through which one or more configuration changes to a brewer device can be entered; search, using the wireless connection, for any pending updates associated with the cloud account; retrieve, using the wireless connection, one or more pending updates associated with the cloud account; store the one or more updates associated with the cloud account to a data storage device; emulate a disk drive in response to detecting initiation of an update process; and transfer the one or more updates associated with the cloud account to a brewer device.
Example 21 includes the subject matter of Example 20, and wherein: to establish the wireless connection to the cloud account comprises connecting with a predetermined network address associated with the cloud account.
Example 22 includes the subject matter of Examples 20-21, and wherein: to establish the wireless connection to the cloud account includes obtaining one or more credentials for accessing the cloud account from a local storage device.
Example 23 includes the subject matter of Examples 20-22, and further comprising: one or more instructions to update status of retrieving one or more pending updates on an output device.
Example 24 includes the subject matter of Examples 20-23, and further comprising: one or more instructions to update status of transferring the one or more pending updates to the brewer device on an output device.
Example 25 includes the subject matter of Examples 20-24, and further comprising: one or more instructions to initiate transfer of the one or more pending updates to the brewer device in response to selection of an input device.
Example 26 includes the subject matter of Examples 20-25, and further comprising: one or more instructions to establish the wireless connection with the cloud account associated with one or more pending updates for the brewer device in response to a power-up event.
Example 27 is a remote server to configure one or more parameters of a brewer device. The remote server comprising: a processor; and a memory coupled to the processor and having stored therein a plurality of instructions that, when executed, cause the remote server to: receive credentials for an account of a user; present one or more content configuration options for updating one or more parameters of one or more brewer devices associated with the account of the user; receive one or more user-selected configuration options for the one or more brewer devices associated with the associated of the user; store the one or more user-selected configuration options based on the account of the user; and flag the account of the user as having one or more pending updates.
Example 28 includes the subject matter of Example 27, and wherein: the one or more configuration options is one or more of: recipe content, advertising content, software update, pricing update.
Example 29 is a brewer update device for updating one or more configuration parameters of a brewer device. The brewer update device comprising: means for establishing a wireless connection with a cloud account associated with one or more pending updates for a brewer device; means for wirelessly retrieve and store the one or more pending updates to a data storage device; and means for emulating a disk drive and transfer the one or more pending updates to the brewer device.
This application claims the benefit of U.S. Provisional Application Ser. No. 62/886,198, filed Aug. 13, 2019, which is hereby incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5515525 | Grynberg | May 1996 | A |
9177122 | Trier | Nov 2015 | B1 |
9860356 | Ripp | Jan 2018 | B2 |
20030070555 | Reyhanloo | Apr 2003 | A1 |
20100011404 | Douillet et al. | Jan 2010 | A1 |
20110188684 | Spieler | Aug 2011 | A1 |
20150201796 | Kuempel | Jul 2015 | A1 |
20160272927 | Mitchell | Sep 2016 | A1 |
20170360250 | Spencer | Dec 2017 | A1 |
20200184803 | Holzinger et al. | Jun 2020 | A1 |
Number | Date | Country |
---|---|---|
105373394 | Mar 2016 | CN |
3264386 | Jan 2018 | EP |
Entry |
---|
Wilbur Curtis, User Guide—G4 Gemini® Series Coffee Brewing System, publicly available prior to Jul. 20, 2020. |
Number | Date | Country | |
---|---|---|---|
20210049004 A1 | Feb 2021 | US |
Number | Date | Country | |
---|---|---|---|
62886198 | Aug 2019 | US |