US Pat. No. 9,071,603

DISTRIBUTED DISPLAY FUNCTIONALITY ON MULTIPLE MOBILE DEVICES

Sirqul, Inc., Seattle, W...

1. A computer-implemented method comprising:
receiving, by a configured computing system, information about an application to be executed for multiple users in a distributed
manner for multiple mobile devices, wherein each of the multiple mobile devices has an associated user that is one of the
multiple users and has a display screen for displaying information to the associated user;

determining, by the configured computing system, information for an interactive GUI (“graphical user interface”) of the application
to be displayed in a distributed manner on the display screens of the multiple mobile devices, the determining including selecting
a distinct subset of the interactive GUI for each of the multiple mobile devices;

providing, by the configured computing system, the determined information for the interactive GUI to the multiple mobile devices
in a manner to cause each of the multiple mobile devices to display the selected subset of the interactive GUI for that mobile
device on the display screen of that mobile device, so that the multiple users each receive displayed information for the
application that is different from information for the application displayed to other of the multiple users; and

in response to receiving an indication of an interaction by one of the multiple users with the selected subset of the interactive
GUI displayed on one of the multiple mobile devices, providing, by the configured computing system, updated information for
the interactive GUI of the application to cause at least some of the multiple mobile devices to each update information for
the application that is displayed on the display screen of that mobile device, so that at least some of the multiple users
receive updated displayed information for the application based on the interaction by the one user.

US Pat. No. 9,819,734

PROVIDING DISTRIBUTED MANAGED COMMUNICATIONS FUNCTIONALITY VIA MULTIPLE MOBILE DEVICES

SIRQUL, INC., Seattle, W...

1. A computer-implemented method comprising:
receiving, by one or more configured computing devices located remotely from a plurality of mobile devices in a geographical
area, information about the plurality of mobile devices in the geographical area;

determining, by the one or more configured computing devices, that at least some mobile devices of the plurality are available
to participate in executing an application in a distributed manner, wherein the at least some mobile devices include multiple
types of wireless connection capabilities to enable the at least some mobile devices to be inter-connected via multiple distinct
wireless networking protocols;

selecting, by the one or more configured computing devices, multiple mobile devices of the at least some mobile devices to
participate in a group that executes the application in the distributed manner on the multiple mobile devices;

determining, by the one or more configured computing devices, one of the multiple mobile devices to act as a host device for
the group to manage communications between the multiple mobile devices of the group in accordance with at least some of the
multiple distinct wireless networking protocols, the determining being based at least in part on wireless connection capabilities
of the determined one mobile device to perform the managing of the communications; and

after the determining, exchanging, via the determined one mobile device and over one or more wireless connections established
between the multiple mobile devices using the at least some distinct wireless networking protocols, multiple communications
between the multiple mobile devices of the group as part of executing the application in the distributed manner on the multiple
mobile devices.

US Pat. No. 10,054,933

CONTROLLING DISTRIBUTED DEVICE OPERATIONS

Sirqul, Inc., Seattle, W...

1. A computer-implemented method comprising:receiving, by one or more computing systems of a centralized server system that manages operations of a plurality of controller devices in multiple geographical locations, information about the plurality of controller devices that includes workload information indicating current loads of the plurality of controller devices, wherein each controller device controls an associated mechanical system and has capabilities to receive and implement instructions to perform multiple types of actions to modify operations of the associated mechanical system;
receiving, by the one or more computing systems, a request to perform a specified task that involves manipulating an environment in one of the multiple geographical locations, the specified task having a specified priority and a specified time for completion;
selecting, by the one or more computing systems, and in response to the received request, a group of devices to implement a specified type of operation associated with performing the specified task, wherein the group of devices includes multiple controller devices of the plurality, and wherein the selecting is based at least in part on the current loads of the multiple controller devices enabling the multiple controller devices to complete the specified type of operation by the specified time for completion at the specified priority;
sending, by the one or more computing systems and to each of the multiple controller devices, first instructions over one or more computer networks to control the mechanical system associated with the controller device to perform the specified type of operation;
evaluating, by the one or more computing systems, performance of each of the multiple controller devices for the specified type of operation, including scoring the performance of each controller device according to one or more specified criteria;
determining, by the one or more computing systems, one or more of the multiple controller devices to be primary devices for performing future operations of the specified type based at least in part on the evaluated performance of the one or more controller devices; and
in response to a subsequent request to perform the specified type of operation, sending, by the one or more computing systems and to each of the primary devices, additional instructions to perform the specified type of operation to control the mechanical system associated with the primary device, wherein the sending of the additional instructions is performed without sending the second instructions to other controller devices of the multiple controller devices that are not the primary devices.

US Pat. No. 10,003,951

AUTOMATED MOBILE DEVICE ONBOARD CAMERA RECORDING

Sirqul, Inc., Seattle, W...

1. A method for capturing video through a device, the method comprising:detecting, by a mobile device, a vehicle device over a short range network, the vehicle device associated with a specific vehicle;
establishing a connection over the short range network between the mobile device and the vehicle device, and
determining that the mobile device is connected to an external power source, wherein the vehicle device is configured to:
connect to the mobile device over the short range network;
responsive to connecting to the mobile device, detect a charging event on the mobile device; and
responsive to detecting the charging event, send to the mobile device an instruction to activate an onboard camera recording application of the mobile device;
receiving, from the vehicle device, the instruction to activate the onboard camera recording application of the mobile device;
responsive to the receiving, activating the onboard camera recording application of the mobile device;
recording video through a camera of the mobile device based on the connection to the vehicle device and the determination that the mobile device is connected to an external power source; and
storing the recorded video to internal storage of the mobile device.

US Pat. No. 10,251,247

SMART MESH LIGHT SOCKET

Sirqul, Inc., Seattle, W...

1. A smart-mesh socket comprising:a bottom cap connector that is sized and shaped to be electrically coupled with a light-bulb socket;
a smart-mesh circuit that is electrically coupled to the bottom cap connector and that includes:
a main circuit with one or more processing units and one or more memory components;
a first wireless circuit with a transceiver to connect to a first wireless network to send and receive communications with other devices connected to the first wireless network that include multiple other smart-mesh sockets located throughout a building; and
a second wireless circuit with a passive receiver to monitor wireless transmissions on a second wireless network without sending transmissions on the second wireless network, including to identify mobile devices of users within an area that is a subset of the building and is covered by the second wireless network,
wherein the one or more memory components store software instructions that, when executed by at least one of the one or more processing units, configure the smart-mesh socket to participate via the first wireless circuit in a mesh network having a plurality of smart-mesh sockets that include the smart-mesh socket and the multiple other smart-mesh sockets, to cause the plurality of smart-mesh sockets to provide functionality distributed across the plurality of smart-mesh sockets that includes tracking locations of the users via the mobile devices as the users move throughout the building into separate areas covered by respective smart-mesh sockets of the plurality of smart-mesh sockets; and
a top socket, electrically coupled to the bottom cap connector, that is sized and shaped to receive and provide power to a light bulb.