Electronic device, method and computer program
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- SONY SEMICON SOLUTIONS CORP
- Filing Date
- 2024-08-02
- Publication Date
- 2026-06-10
AI Technical Summary
Existing IoT devices face challenges in efficiently managing communication schedules between mesh networks and cellular networks, particularly when both networks share resources, leading to coexistence issues and potential interference.
An electronic device with integrated circuitry manages communication schedules within both mesh and cellular networks, utilizing a coexistence module to allocate shared resources based on requests from either network, ensuring optimal operation and minimizing conflicts.
The solution enables efficient allocation of shared network resources, improving data transfer performance and maintaining high operational integrity for both mesh and cellular networks, thereby ensuring reliable communication services.
Smart Images

Figure EP2024072030_13022025_PF_FP_ABST
Abstract
Description
[0001] ELECTRONIC DEVICE, METHOD AND COMPUTER PROGRAM
[0002] TECHNICAL FIELD
[0003] The present disclosure relates to an information processing apparatus and an information processing method, and, more particularly, to an information processing apparatus and an information processing method which enables loT devices to deli ver / receive messages to / from servers.
[0004] TECHNICAL BACKGROUND
[0005] Internet of Things (loT) devices employ diverse communication types for transmitting and receiving messages to and from servers. One such communication type is cellular-based communication. The 3rd Generation Partnership Project (3GPP) has standardized certain protocols, such as CAT-M and NB-IoT, as part of Long-Term Evolution (LTE) specifically for Low Power Wide Area Networks (LPWAN) communication. The standards are characterized by low throughput, low power consumption, and low-cost communication, making them suitable for numerous loT use cases.
[0006] Another communication type is device-to-device communication, often established as part of a mesh network of devices. The networks typically utilize unlicensed spectrum (in the sub-GHz or 2.4GHz). Protocols for such networks have been standardized by the Institute of Electrical and Electronics Engineers (IEEE), such as 802.15.4 protocols. Additional protocols, such as WISUN and ZIGBEE, have been defined on top of the base protocols.
[0007] In certain instances, device manufacturers and solution providers construct loT devices that integrate both cellular and device-to-device communications. Primarily, the network of loT devices requires communication with the external world (such as an application server), and cellular-based communication provides a suitable solution due to its ubiquitous, long-range coverage and connection capabilities.
[0008] Mesh-based networks, which utilize the unlicensed spectrum, are typically shorter in range. However, they consume less power, are less expensive, and do not require payment of connectivity costs to the cellular network.
[0009] In a typical mesh network configuration, all leaf and router devices are equipped with only device-to-device modems, while the border router, which communicates with the external world, is installed with two modems: a device-to-device modem and a cellular modem. When a device incorporates two modems that share resources, coexistence issues need to be addressed.
[0010] SUMMARY
[0011] According to an aspect of the present disclosure, a new processing scheme is described that comprises a mesh-based communication protocol for loT devices.
[0012] According to a first aspect the disclosure provides an electronic device according to independent claim 1. According to a second aspect, the present disclosure provides a method according to independent claim 20. According to a third aspect, the present disclosure provides a computer program according to independent claim 21.
[0013] Further aspects are set forth in the dependent claims, the drawings and the following description.
[0014] BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Embodiments are explained by way of example with respect to the accompanying drawings, in which:
[0016] Fig. 1 is a schematic block diagram of an electronic device with a mesh network and a cellular network; and
[0017] Fig. 2 is a scheduling of unicast and broadcast messages in a mesh network; and
[0018] Fig. 3 is an explanatory diagram of unicast messaging in a mesh network; and
[0019] Fig. 4 is an explanatory diagram of broadcast message scheduling in a mesh network; and
[0020] Fig. 5 is an explanatory diagram of a loT device integrated in both a mesh network and an LTE network; and
[0021] Fig. 6 is a block diagram of an electronic device according to the disclosure; and
[0022] Fig. 7 is a flow diagram of a method for receiving scheduling information on a communication schedule of the cellular network from a cellular modem and scheduling a mesh network; and
[0023] Fig. 8 is a flow diagram of a method for calculating a scheduling profile for the mesh network based on the communication schedule of the cellular network in a first embodiment; and
[0024] Fig. 9 is a flow diagram of a method for calculating a scheduling profile for the mesh network based on the communication schedule of the cellular network in a second embodiment; and Fig. 10 is a flow diagram of a method for calculating a scheduling profile for the mesh network based on the communication schedule of the cellular network in a third embodiment; and
[0025] Fig. 11 is a flow diagram of a method for calculating a scheduling profile for the mesh network based on the communication schedule of the cellular network in a fourth embodiment; and
[0026] Fig. 12 is a scheduling of unicast and broadcast messages in a mesh network by a coexistence module according to the disclosure in a fifth embodiment; and
[0027] Fig. 13 is a scheduling of unicast and broadcast messages in a mesh network by a coexistence module according to the disclosure in a sixth embodiment; and
[0028] Fig. 14 is a scheduling of unicast and broadcast messages in a mesh network by a coexistence module according to the disclosure in a seventh embodiment; and
[0029] Fig. 15 is a scheduling of unicast and broadcast messages in a mesh network by a coexistence module according to the disclosure in a eighth embodiment; and
[0030] Fig. 16 is a scheduling of unicast and broadcast messages in a mesh network by a coexistence module according to the disclosure in a ninth embodiment; and
[0031] Fig. 17 is a flow diagram of a method for calculating a scheduling profile for the LTE network based on the communication schedule of the mesh network in a tenth embodiment; and
[0032] Fig. 18 is a schematic block diagram of an electronic device that may implement the present technology.
[0033] DETAILED DESCRIPTION OF EMBODIMENTS
[0034] Before a detailed description of the embodiments under reference of Fig. 1 is given, general explanations are made.
[0035] As used herein, an element or step recited in the singular and proceeded with the word "a" or "an" should be understood as not excluding plural elements or steps, unless such exclusion is explicitly recited. Furthermore, references to "one embodiment" of the present disclosure are not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the recited features.
[0036] The methods and systems described herein may be implemented using computer programming or engineering techniques including computer software, firmware, hardware or any combination or subset thereof, wherein the technical effects may include at least enabling an essential track reference, such as asynchronous media, to guarantee that legacy players that do not understand the signaling will not attempt to play them.
[0037] An electronic device according to the present disclosure comprises circuitry configured to manage a communication schedule within a mesh network or a cellular network, a respective mesh modem and a respective cellular modem sharing at least one network resource, where the mesh network operates based on a mesh protocol and the cellular network operates based on a cellular protocol, with the management of the communication schedule being responsive to a request to access the shared network resource, and wherein the circuitry is further configured to decide how to allocate the shared network resource based on the received request.
[0038] The electronic device is equipped with integrated circuitry, which may be composed of various components such as microprocessors, microcontrollers, and programmable logic devices. The components are specifically programmed to execute the function of managing communication schedules within two distinct network types: a mesh network and a cellular network. The electronic device is connected to the network by means of a modem configured to be coupled to the respective network. Specifically, the circuitry may communicate with or comprise a mesh modem which is coupled to the mesh network. Further, the circuitry may communicate with or comprise a cellular modem which is coupled to the cellular network. The mesh modem and the cellular modem utilize at least one shared network resource, which could include elements such as a shared antenna, a wire, a network interface a bandwidth, frequency spectrum, or designated time slots for data transmission.
[0039] In the following, it is to be understood that the shared resource is always a shared resource of the mesh modem and the cellular modem, though the shared resource may be referred to as a shared resource of the mesh network and the cellular network.
[0040] A request to access the shared network resource may originate from various sources, including an application, the mesh network, or the cellular network (LTE) and / or a device in any of the mesh network or the cellular network. The request may also originate from the mesh modem, or the cellular modem. It should be noted that, in the sense of the present disclosure, the electronic device may be considered to be part of both the cellular network and the mesh network. Thus, a request originating from the electronic device or a request relayed or forwarded to the electronic device from a source that is not part of either the cellular network or the mesh network is still a request that originates from either the cellular network or the mesh network. This request may be defined as any communication or signal sent to the electronic device, indicating a need to utilize a shared resource. Such requests may specify the type of access required, whether for immediate use, scheduled use, or periodic access based on operational needs. The request may also include details such as the duration of resource usage and the specific network functions involved, ensuring that the electronic device can efficiently allocate the shared resource with minimal conflicts without conflicts or with minimal conflicts.
[0041] A mesh network in the sense of the present disclosure is characterized by a topology in which each device receives and / or sends and / or relays data for the network. All devices within the network collaborate to distribute data efficiently across the network. The network operates under a set of rules known as a mesh protocol.
[0042] A cellular network in the sense of the present disclosure operates by using cellular signals to simultaneously transmit information to a multitude of external devices within a specified area.
[0043] The cellular network may, for example, be a cellular broadcast network.
[0044] A role of the circuitry within the electronic device is to manage the communication schedule. The management of the schedule is dynamic and responsive; the circuitry may, for example, adjust the schedule based on real-time requests from either network seeking access to the shared resource. The requests are processed in strict accordance with the protocols specific to each network type.
[0045] Moreover, the circuitry is tasked with deciding how to allocate the shared network resource among the requesting networks. The decision-making process takes into account various factors such as the priority levels of requests, the current load on the network, and other relevant operational parameters. This ensures that the allocation of resources is conducted in a manner that maximizes efficiency and minimizes potential conflicts between the two networks. Through the management and allocation system, the electronic device utilizes the shared network resource, thereby improving a performance (e.g. a throughput and / or a link quality) of data transfer between devices in the mesh network on a server side.
[0046] The mesh modem may be called a device-to-device modem and the cellular modem may, for short, be referred to as an LTE or 5G modem. The same applies to the respective networks.
[0047] A shared network resource may, in particular, be a Radio Frequency (RF) antenna used by both modems, or the two modems may share an RF chain and / or a baseband (BB) chain.
[0048] The electronic device according to the present disclosure may be referred to as a coexistence module, or as a coex module. Coexistence refers to a solution that allows both devices to share the resource while minimizing the impact on the device and overall network performance. For example, a device that requires use of a shared resource but is unable to do so may prevent the device from receiving an important message from its peer device or base station. This could result in a link loss, leading to the device being dropped from the network. The impact extends beyond just a message drop.
[0049] However, as network protocols are typically designed to be robust, resource sharing may not adversely affect the network even when no special coexistence treatment is applied to device behavior.
[0050] Coexistence issues may also arise when the two modems do not share components at all, such as the RF antenna. For instance, each modem may have its own antenna, but if the two antennas are in close proximity, one modem's signal transmission may interfere with the other modem's signal reception, even if they do not transmit on the same frequency.
[0051] LTE protocols define several states for a device. Firstly, a device may be in a sleep state, where it is not active and cannot be accessed by the cellular network. Secondly, a device may be in Radio Resource Control (RRC) Idle mode. In the mode, the device is in Idle (Discontinuous Reception, DRX) state, meaning it is asleep most of the time but wakes up periodically to listen for incoming messages from the network. The device wakes up at short intervals in idle DRX, and less frequently in extended DRX (eDRX). Thirdly, a device may be in RRC Connected mode, where it is connected to the modem and exchanging traffic with the base station. In the mode, the specification defines a continuous DRX (cDRX) mode, which allows the modem to save power by going into short sleep periods.
[0052] Mesh network protocols, many of which are based on IEEE 802.15.4 protocol, offer another form of communication. The following discussion pertains to one type of mesh network implementation based on IEEE 802.15.4, although the disclosure may be extended to other protocols and implementations.
[0053] The assumed baseline mesh protocol may have several characteristics. It operates in a nonbeacon mode and supports various types of frame exchanges, including unicast channels for peer-to-peer information exchange, broadcast channels for information transfer to all neighboring devices, and asynchronous channels for sending frames about network configuration and parameters. The mesh protocol employs channel frequency hopping, with the hopping sequence and parameters distributed to all devices. The protocol is receiver-oriented, meaning that a device is in receive (RX) mode and hops according to the channel frequency hopping pattern unless it needs to transmit.
[0054] Since the network is beacon-less, a device needs to publish its timing alignment to its neighbor devices. This can be achieved by adding the timing offset to some or all messages transmitted from the device. The hopping pattern can be changed using asynchronous messages or regular / other messages. The broadcast channels' hopping pattern overlaps the unicast channels' hopping pattern, with broadcast channels having prioritization over unicast channels. In a typical implementation, the broadcast slots are less frequent compared to the unicast slots to allow devices to send / receive unicast messages.
[0055] Internet of Things (loT) devices typically operate in one of two modes. The first mode is user- originated. In the mode, the device is predominantly in a sleep state and only wakes up when the host application needs to transmit a message.
[0056] The second mode is network-originated. In the mode, the device is awaiting an incoming message. To facilitate waiting for an incoming message, the device intermittently listens to the cellular network (or the parent device in the case of a mesh network) to check for incoming messages. In a cellular network, waiting for an incoming message is achieved by the device being in Idle Discontinuous Reception (IDRX) or Extended Discontinuous Reception (EDRX) mode, waking up to listen to Paging Occasions (POs).
[0057] In most instances, adjusting the scheduling of the mesh network is simpler than in Long-Term Evolution (LTE). This is because the scheduling of LTE is defined, for certain activity profiles, by the base station, while in a mesh network it is solely defined by the peer devices, specifically by the Personal Access Network (PAN) coordinator. In most cases, the PAN coordinator is the border router that includes the LTE and mesh modems that require coexistence. The is the approach that the present disclosure focuses on. However, other solutions are possible and intended within the sense of the present disclosure.
[0058] Given that both modems may want to use a shared resource simultaneously, prioritization is necessary. In the description of the present disclosure, the case where LTE is prioritized over the mesh network is focused on for clarity. However, different prioritization could be set.
[0059] Notwithstanding, if the shared resource is already being actively used by the mesh network, for instance, in the middle of packet resource, the shared resource is handed over to LTE only after its completion.
[0060] In the present disclosure, each modem (mesh and LTE) registers its requests with the electronic device, which may be called a coexistence (coex) module. The requests may include both periodic activities, such as iDRX / eDRX wakeups, or non-periodic activities, such as a future wake-up to transmit / receive messages. There may also be an unplanned, immediate request to use the shared resource.
[0061] Upon receiving the requests, the electronic device determines how to allocate the resource. The decision may involve one of the following scenarios:
[0062] Immediate request to use the shared resource: In the case, if the shared resource is free, it can be allocated to the requesting modem. However, if the shared resource is occupied, or planned to be occupied soon, the electronic device may request to delay the transmission (and buffer the message) of one modem, until the shared resource becomes free again. For instance, if the mesh modem is actively using the shared resource, the electronic device will update the LTE modem to wait until the resource is free again. The update could be in the form of an interrupt, or just a response with a failure to use the shared resource, which requires the LTE modem to poll again when ready. The same scenario can happen in reverse - if the LTE modem is using the shared resource, a request from the mesh modem to use the shared resource will be denied. The scenario is relevant only for unplanned activity that has not been foreseen and avoided from the outset.
[0063] Scheduled asynchronous wake-up: An LTE modem registers to wake up at a certain time to transmit / receive a message. Additionally, the LTE modem may also publish the latency requirements of the wake-up, i.e., how much it can sustain an offset in timing relative to its request. Upon receiving such a request, the electronic device may adjust the wake-up time of the LTE modem to fulfill the latency requirements and respond back to the LTE modem accordingly. The electronic device may also instruct the mesh modem to modify its scheduling profile (and update its peers) before the wake-up to minimize the impact on LTE and mesh protocols. After the LTE modem wakes up, uses the shared resource, and goes back to sleep, the electronic device will instruct the mesh modem to update its scheduling profile again.
[0064] Scheduled synchronous wakeups: An LTE modem shares its periodic activity (such as eDRX / iDRX) with the electronic device. The electronic device will then instruct the mesh modem to change its scheduling profile (and update its peers) to minimize interference with the periodic wakeups of the LTE modem. The following presents various alternatives for adjusting the scheduling profiles of a meshnetwork device, thereby minimizing RF sharing issues. It should be bome in mind, that these alternatives merely present a variety of possible embodiments. The scope of the patent is not limited to these alternatives, however.
[0065] A first option is to indicate unavailable channels under normal operation, the border router disseminates the roster of frequency channels utilized for communication along with the channel hopping sequence. Certain protocols permit modification of the channel list to accommodate dynamic operation in scenarios limited by interference. For example, temporary masking of a specific frequency channel identified as suffering from interference can occur, allowing use of the remaining frequency channels. A similar mechanism can apply to the coexistence solution.
[0066] As a second option, the border router may be given the ability to signal its unavailability via asynchronous messages, which are used for enabling, disabling, or replacing the list of frequency channels. When one frequency gets marked as unavailable, peer devices receive information that the border router will be unavailable during that time. However, the frequency channel slot should not be skipped.
[0067] The signaling can occur as a specialized type of message or by modifying the current message format (for instance, using reserved bits). The signaling may, depending on implementation, make both broadcast and unicast channels unavailable.
[0068] Less sophisticated methods to indicate unreachability include changing the channel frequency to a frequency that is invalid for peer devices. By "invalid", it is meant frequencies that peer devices cannot use, which implies that they cannot communicate with the border router.
[0069] A third option is to Indicate unreachability. Here, the border router transmits specific signaling to peer devices about a period of unavailability. Upon receiving the signaling, peer devices understand not to send or attempt communication with the border router for the defined period. It should be noted that peer devices can continue to operate and communicate with other peer devices without any change. This can be achieved in a plurality of ways:
[0070] A first method is to transmit a bit=l through asynchronous messages to notify that the border router is unreachable. Once it becomes active again, the bit changes to zero and is published through an asynchronous message.
[0071] A second method is to transmit an indication of the expected duration of unreachability of the border router. A third method is to transmit an indication of periodic time intervals in which device would be unreachable.
[0072] For example, incorporating a message into the mesh protocol to indicate unreachability every 81.92 seconds (s) for a duration of 100 milliseconds (ms) enhances efficiency compared to a scenario where the coordinator alternates between b=l and b=0 every extended Discontinuous Reception (eDRX) cycle.
[0073] Additionally, or alternatively, a frequency hopping channel profile may be modified. Here, the frequency hopping channel profile undergoes updates to minimize the chance for the border router to lose unicast messages when the shared resource is being used by the LTE modem.
[0074] In the sense of the present disclosure, frequency hopping is achieved by a device dynamically changing its receiver channel over different periods of time. The dynamic change is not random but follows a specific sequence known as the hopping sequence. Other methods may incorporate a preliminary messaging protocol that advertises the frequency hopping pattern (FHP) to peer devices.
[0075] The device may generate a pseudo-random sequence of channels based on the extended address of the device, making the sequence unique to each device. This means that each device in the network hops or switches between channels based on its own unique unicast channel hopping sequence.
[0076] In addition to unicast hopping, the frequency -hopping feature also supports broadcast transmissions. To enable broadcast transmissions, the coordinator of the network starts a broadcast schedule. Every other device in the network will then follow the broadcast hopping sequence received from the coordinator.
[0077] A fourth method of indicating unavailability involves the modification of broadcast profiles. This method differs from other methods as it specifically blocks unicast messages while allowing broadcast messages to be transmitted without being received by the border router. This method selectively restricts unicast communications, ensuring that broadcast transmissions continue across the network, albeit without reception at the border router.
[0078] Altering the broadband scheduling profile could impact other devices in the network, which may need to update their broadcast scheduling accordingly, depending on the protocol and implementation. To prevent the, the border router could signal to its peer devices that the profile change is only relevant to itself, indicating that the border router is not available for mesh communication at that time. The indication could take the form of an additional message, or by utilizing spare or new bits in the messages used in the current mesh protocol.
[0079] Additionally, the disclosed methods may result in the loss of broadcast messages, which are typically used for updating about changes in the network. To mitigate the loss of broadcast messages, the coexistence module in the border router could request to send solicit request for peer devices to publish their latest routing status after the shared resource has been freed again.
[0080] A number of cases may be differentiated by way of specific example. In the following, modifications to the profiles of broadcast channels to align with various LTE activation profiles are presented. These modifications are designed to harmonize with different operational profiles of LTE. Additionally, adaptations to these activity profiles can also be implemented using previously described first to fourth methods:
[0081] Case 1 : eDRX / iDRX wakeups. Here, the aim is to align the broadcast channels to overlap with the LTE wakeup periods. As a reminder, broadcast channels have priority over unicast channels. During a broadcast channel timeslot, all devices should listen to the broadcast channel and not to the unicast channel. By overlapping the broadcast timeslots with the LTE wakeup period, the border router is not expected to listen to unicast channels, but rather only to the broadcast channel. The motivation is that it is safer for the border router to lose a broadcast message than a unicast message. Note also that a border router will lose only broadcast messages that have been transmitted on the slots that overlap the wakeup periods. Other timeslots will still be received by the mesh modem of the border router.
[0082] Case 2: LTE in Connected Mode. Here, the LTE modem holds the shared resource for a long time. Similar to the previous case 1, the aim is to prevent the border router from losing any unicast channel. In the mode, the broadcast channel slot periodicity and duration are configured to be the same, effectively creating a scenario in which only broadcast messages can be received during the time period.
[0083] Case 3: LTE in cDRX. This case presents a more complicated scenario in which the LTE modem is in a connected state followed by cDRX periods. The same concept as before (i.e. case 1 and case 2) applies.
[0084] Moreover, for iDRX, eDRX and cDRX, a periodic routine may be established to render the device unreachable in the mesh network, while for connected mode, a single, extended period of unreachability may be necessary. Methods to achieve this unreachability, involving manipulation of broadcast channels, specific messaging, and other techniques have been described previously.
[0085] It should be noted, however, that the cases 1-3 mentioned above are to be seen as specific examples for realizing the present disclosure and are to be seen as non-limiting. A combination of methods may also be applied.
[0086] In some embodiments, the request is received from at least one of an application or a transport layer protocol module.
[0087] The application may be a software program or suite of programs that operates on a processing unit that may be included in the electronic device. The processing unit may also be part of an apparatus that includes electronic device.
[0088] The transport layer protocol module may be a software component within the processing unit that handles communication protocols at the transport layer of the Open Systems Interconnection (OSI) model. The transport layer protocol module may manage protocols such as UDP (User Datagram Protocol) and TCP (Transmission Control Protocol).
[0089] The processing unit may be a processing unit of the electronic device or a processing unit of an apparatus that includes the electronic device. The processing unit may run application that may be the application that sends a request in the sense of the present disclosure and may include the transport layer protocol module.
[0090] In some embodiments, the request is received from at least one of the mesh modem, a peer device in the mesh network, the cellular modem or a remote device in the cellular network in accordance with the respective network protocols.
[0091] It should be noted that the source of the request may be any of the sources described hereinabove. In other words: the request may be received from any one of the application, the transport layer protocol module the mesh modem, the peer device in the mesh network, the cellular modem or the remote device in the cellular network in all embodiments of the present disclosure described herein.
[0092] In some embodiments, the communication schedule is controlled such that the mesh network does not access the shared networking resource while the shared networking resource is accessed by the cellular network. This ensures that the two networks operate without interference from each other by alternately accessing the shared resource. The circuitry of the device uses programmed algorithms to monitor a current usage status of the shared resource and dynamically adjust access permissions for each network based on the status. The dynamic scheduling capability ensures that each network can operate at optimal efficiency without disrupting the other. Optimization may occur not only for each network separately but also collectively. Consideration may be given to the need for sending packets end-to-end (from leaf device, for example, through border router to server), requiring shared resource management at the border router to ensure packets pass as fluidly as possible.
[0093] By effectively managing the resources, the electronic device ensures that both the mesh network and the cellular network can perform their functions effectively, providing reliable communication services within their respective protocols.
[0094] In some embodiments, the control comprises sending to all peer devices coupled to the mesh network a scheduling request, and, responsive to the scheduling request, the peer devices do not transmit and / or receive information to the mesh modem on a predetermined channel for a duration specified in the scheduling request.
[0095] The control may comprise a scheduling request being sent to all peer devices that are part of the mesh network. The purpose of the scheduling request is to instruct the peer devices to temporarily cease transmitting information to the mesh modem on a predetermined channel. The duration for which the peer devices should refrain from transmitting is explicitly specified in the scheduling request.
[0096] A control of the communication schedule may be defined to include not only cases where specific limitations are imposed or a period of unavailability is scheduled, but also the inverse. Specifically, control may comprise scheduling a clearance or a period of availability. The electronic device may thus delineate the areas and times during which communication is allowed or possible.
[0097] In some embodiments, the predetermined channel is at least one of a unicast channel or a broadcast channel.
[0098] The control may comprise sending a scheduling request to all peer devices within the mesh network, instructing the peer devices to temporarily cease transmitting information to the mesh modem on a predetermined channel. A unicast channel is used for direct communication between two specific devices, allowing data to be sent from one device directly to another. A broadcast channel is used to send data from one device to all other devices within the network simultaneously.
[0099] An ability to specify either a unicast or broadcast channel as the predetermined channel provides flexibility in network management, allowing the network to adapt to varying communication needs while maintaining efficiency and stability.
[0100] In some embodiments, the predetermined channel includes both the unicast channel and the broadcast channel, and all of the peer devices are configured, for the duration specified in the scheduling request, to receive and / or transmit on both the broadcast channel and the unicast channel.
[0101] The control may comprise sending a scheduling request to all peer devices within the mesh network, instructing them to temporarily cease transmitting information to the mesh modem on predetermined channels, which may include both a unicast channel and a broadcast channel.
[0102] The electronic device manages the settings to ensure that the mesh network maintains high levels of operational integrity and responsiveness, even when adjustments to transmission activities are necessary.
[0103] In some embodiments, the predetermined channel is only the unicast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to only receive and / or transmit on the broadcast channel.
[0104] The control may comprise sending a scheduling request to all peer devices within the mesh network, instructing them to temporarily cease transmitting information to the mesh modem on a predetermined channel, which may, in some embodiments, be the unicast channel.
[0105] In some embodiments, the predetermined channel is only a broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to only receive and / or transmit on the broadcast channel.
[0106] The electronic device includes integrated circuitry that manages communication within a mesh network by controlling the transmission activities of peer devices. The control may comprise sending a scheduling request to all peer devices within the mesh network, instructing them to temporarily cease transmitting information to the mesh modem on a predetermined channel, which may be exclusively the broadcast channel. In some embodiments, the predetermined channel is a channel that is neither the unicast channel nor the broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to receive and / or transmit on the channel that is neither the unicast channel nor the broadcast channel.
[0107] The channel that is neither the unicast channel nor the broadcast channel may be any communication channel that is provided specifically to facilitate communication of peer devices with the mesh modem if neither a broadcast channel nor a unicast channel is available.
[0108] In some embodiments, the cellular protocol is an LTE protocol and the duration corresponds to a period wherein the LTE modem is active.
[0109] The management of the communication schedule within the network is aligned with the LTE wakeup periods, which are specific times when the LTE network activates to perform necessary communications and data transfers.
[0110] The LTE wakeup period in the sense of the present disclosure is a predefined duration during which the LTE network components are active to receive and transmit data.
[0111] In some embodiments, the cellular protocol is an LTE protocol and the duration corresponds to a cDRX connected period, and / or an eDRX period, and / or an iDRX period.
[0112] According to the present disclosure, the management of the communication schedule within the network is configured to align with the cDRX (Connected Mode Discontinuous Reception), eDRX (Extended Discontinuous Reception), or iDRX (Idle Mode Discontinuous Reception) periods as stipulated by the LTE protocol.
[0113] The cDRX connected period are intervals during which LTE network components are actively engaged in data reception and transmission.
[0114] In the context of present disclosure, the duration specified in the scheduling request for managing access to the shared network resource may correspond to cDRX connected periods.
[0115] The circuitry may be configured to dynamically adjust the communication schedule based on the LTE protocol's requirements and the specific timings of the cDRX connected periods. This may include temporarily restricting or allowing access to the shared network resource to synchronize with the LTE network's activity periods.
[0116] In some embodiments, the scheduling request is broadcast to the peer devices via a broadcast message. An asynchronous broadcast is a broadcast transmitted independently from the regular communication schedule. Furthermore, inclusion may be considered for the case where the scheduling request is transmitted on a synchronous broadcast channel or on a unicast channel.
[0117] The scheduling request typically contains instructions for the peer devices to temporarily cease transmitting information on a predetermined channel, which could be a unicast or broadcast channel, depending on the network's configuration and requirements. Management of the communication schedule may involve not only ceasing transmission on a specific predetermined channel but also adjusting the timing profile, such as shifting it in time or extending its duration.
[0118] The circuitry is configured to handle the asynchronous broadcasts and manage the responses from the peer devices. This includes monitoring compliance with the scheduling request and adjusting the network's communication schedule accordingly to maintain network stability and efficiency.
[0119] In some embodiments, the scheduling request is sent to the peer devices via a direct unicast.
[0120] The control may comprise sending a scheduling request to all peer devices within the mesh network.
[0121] A direct unicast may comprise sending the scheduling request individually to each peer device, rather than broadcasting it to all devices simultaneously.
[0122] By utilizing direct unicast for the transmission of scheduling requests, the electronic device ensures that critical network management commands are communicated effectively to each device within the mesh network.
[0123] In some embodiments, the shared network resource is at least one of a data transmission means, an antenna or a network wire, a networking interface a Radio Frequency (RF) chain, a digital front end, an analog front end, a baseband processor, or a modulation / demodulation unit.
[0124] The antenna in the sense of the present disclosure may be any component for wireless communication, facilitating the transmission and reception of radio signals between devices in the network. The network wire in the sense of the present disclosure may be any physical transmission means typically used in wired connections and provides a physical medium for data transmission. The networking interface may be a hardware or software component such as a network card or a software-defined network interface that manages an interaction between any device and the network. The networking interface may be any such component suitable for handling data packet processing and transmission control. In some embodiments, the electronic device is further configured to send an update request to a mesh modem coupled to the mesh network to update mesh scheduling parameters, and to receive scheduling information on a communication schedule of the cellular network from a cellular modem coupled to the cellular network.
[0125] Specifically, the device is configured to interact directly with network modems to facilitate updates and synchronization of network schedules.
[0126] The device sends an update request to a mesh modem that is part of the mesh network. The update request is aimed at modifying or refining the mesh scheduling parameters, which may include adjustments to transmission times or other scheduling aspects that optimize the mesh network's performance with the shared network resource.
[0127] The device is configured to receive scheduling information from a cellular modem that is part of the cellular network. The scheduling information may include information about the communication schedule of the cellular network, such as time slots allocated for broadcasting, priority levels of communications, and other relevant scheduling details that ensure the cellular network's operations are well-coordinated with the shared resource usage.
[0128] Additionally, scheduling information may also be received from the application or host. For instance, an application that wakes up every 24 hours (h) to send a message via Long-Term Evolution (LTE) may update the coexistence (coex) module about this expected wake-up. From an implementation perspective, the scheduling information could be transmitted either directly from the host to the coex module or from the LTE modem to the coex module. In certain cases, or implementations, the LTE modem may not be aware of when the application plans to wake it up, hence a direct update from the host or application to the coex module may be performed.
[0129] Dual capability of sending update requests to the mesh modem and receiving scheduling information from the cellular modem allows the electronic device to act as a central point of coordination for both networks.
[0130] In some embodiments, the control comprises calculating, based on the communication schedule of the cellular network, a scheduling profile for the mesh network; and sending, based on the scheduling profile, the update request.
[0131] Calculating the scheduling profile may comprise analyzing the communication schedule of the cellular network, including a timing, frequency, and priority of broadcasts within the cellular network. Using the information, the device calculates a scheduling profile for the mesh network. Once the scheduling profile for the mesh network is established, the device may send an update request to the mesh modem. The update request may contain the new scheduling parameters that need to be implemented within the mesh network to align its operations with the cellular network's schedule.
[0132] In some embodiments, responsive to the update request, the mesh modem sends scheduling profile update information to at least one peer device coupled to the mesh network.
[0133] The update request prompts the mesh modem to send scheduling profile update information to at least one peer device within the mesh network.
[0134] Upon receiving the update request, the mesh modem may process the information and compiles scheduling profile update information, which includes revised scheduling parameters that peer devices within the mesh network need to adopt. The mesh modem then disseminates the scheduling profile update information to at least one peer device in the network.
[0135] The dissemination of scheduling profile update information ensures that all peer devices within the network are synchronized in their operations, adhering to a unified communication schedule that reduces conflicts and optimizes the use of the shared network resource.
[0136] In some embodiments the communication schedule is controlled such that the cellular network does not access the shared networking resource while the shared networking resource is accessed by the mesh network.
[0137] The control may involve scheduling specific time slots or periods during which only the mesh modem can utilize the shared resource, preventing any overlap in resource usage with the cellular network. This approach minimizes conflicts or interference between the mesh modem and the cellular modem in the use of the shared resource.
[0138] A communication scheduling method comprises managing a communication schedule within a mesh network or a cellular network, both networks sharing at least one network resource, where the mesh network operates based on a mesh protocol and the cellular network operates based on a cellular protocol; the management of the communication schedule is responsive to a request to access the shared network resource received from either the mesh network or the cellular network in accordance with their respective protocols, and deciding how to allocate the shared network resource based on the received request.
[0139] The communication method may comprise managing a communication schedule of the mesh network and the cellular network. Both networks utilize at least one shared network resource. The method includes responsive management of the communication schedule, which adjusts based on requests from either network to access the shared network resource. The requests are processed in line with the specific protocols of the respective networks, ensuring that each network's operational guidelines are adhered to. The method comprises a decision-making process regarding the allocation of the shared network resource. The process takes into account the received requests and determines how best to distribute or allocate the resource between the two networks to optimize usage and prevent conflicts.
[0140] The method as described herein are also implemented in some embodiments as a computer program causing a computer and / or a processor to perform the method, when being carried out on the computer and / or processor. In some embodiments, also a non-transitory computer- readable recording medium is provided that stores therein a computer program product, which, when executed by a processor, such as the processor described above, causes the methods described herein to be performed.
[0141] Fig. 1 shows a general outline of an loT device 1000B to which the technology according to the present disclosure may be applied.
[0142] The loT device 1000B comprises an application layer module 1100, a UDP / TCP module 1200, a communication module 1300. The communication module 1300 in turn comprises an LTE modem 1310 and a mesh protocol modem 1320.
[0143] The LTE modem 1310 comprises a data buffer 1311, an IP (internet protocol) module 1312 a PDCP (Packet Data Convergence Protocol) module 1313, a RLC (Radio Link control) module
[0144] 1314, a MAC (Medium Access Control) module and a PHY (physical access control) module
[0145] 1315. The LTE modem depicted in Fig. 1 may, in general, be a known LTE modem.
[0146] The buffer 1311 is a data storage. The IP module 1312 handles the IP functionality of the modem. It manages IP packet encapsulation and de-encapsulation, IP addressing, and routing. The PDCP module 1313 manages header compression and decompression, ciphering and deciphering, and the integrity of user data and control plane data. The RLC module 1314 handles the segmentation and reassembly of data packets, error correction through retransmissions, and in-order delivery of packets. The MAC module 1315 is responsible for multiplexing and demultiplexing of logical channels into transport blocks, scheduling decisions, and dynamic allocation of resources. The PHY module 1316 handles the physical layer procedures, including modulation and demodulation, coding and decoding, and MIMO (Multiple Input Multiple Output) processing. The LTE modem 1310 may be implemented as a hardware component in the electronic device or as a software module executed by a processor in the device. It interacts with other components of the device 1000B, such as the application module 1100 or the UDP / TCP 1200 module.
[0147] In alternative implementations, the UDP / TCP 1200 may be integrated within any of the LTE modem 1310 or the mesh modem 1320, facilitating direct handling of data packet transmission and reception.
[0148] The LTE modem 1310 enables data transmission and reception based on the LTE standard.
[0149] The mesh modem 1320, shown in Fig. 1 manages the operations of wireless or wired communication based on a mesh networking standard (e.g. IEEE 802. Ils).
[0150] The mesh modem 1320 facilitates data communication between the loT device 1000B and other devices in the mesh network, for example by converting digital data from the device 1000B into a format suitable for wireless transmission according to a predefined or preselected standard, and vice versa. The mesh modem 1320 establishes and maintains a connection with the mesh network, manages data transmission and reception, and handles error detection and correction. It ensures that data packets are correctly addressed and routed to their intended destinations over the network.
[0151] The mesh modem 1320 comprises a buffer 1321, an IP module 1321, an LLC (logical link control) module 1323, a MAC module 1324 and a PHY module 1325.
[0152] The buffer 1321 is a data storage. The IP module 1322 handles the IP functionality of the mesh modem 1320. It manages IP packet encapsulation and de-encapsulation, IP addressing, and routing. The LLC module 1323 may be responsible for error control, flow control, frame synchronization and routing. The MAC module 1324 manages multiplexing and demultiplexing of logical channels into transport blocks, scheduling decisions, and dynamic allocation of resources. The PHY module 1325 handles the physical layer procedures, including modulation and demodulation, and coding and decoding.
[0153] The mesh modem 1320 manages the device's access to the network's resources. The mesh modem 1320 can be implemented as a hardware component in the loT device 1000B or as a software module executed by a processor in the device 1000B. It interacts with other components of the device 1000B, such as the application module 1100, or the UDP / TCP module 1200.
[0154] In the loT device 1000B depicted in Fig. 1, the LTE modem 1310 is connected to a first antenna ANTI, and the mesh modem 1320 is connected to a second antenna ANT2. Fig. 2 and Fig. 3 show schematic representations of a broadcast and unicast reception schedule of a mesh network. The scheduling comprises both transmission and reception of both broadcast and unicast messaging, though only reception windows are shown in Fig. 2.
[0155] In the context of a mesh networking schedule, as depicted in Fig. 2, two primary modes of data transmission are employed: broadcast and unicast.
[0156] Broadcast refers to the transmission of data from one device to all other devices in the network. In the mode, when a device has data to send, it transmits the data to all other devices in the network simultaneously.
[0157] Unicast refers to the transmission of data from one device to a specific other device in the network. In the mode, the data is sent from the source device to the destination device along a specific path through the network. The path may be determined using various routing algorithms, taking into account factors such as the number of hops, link quality, and network congestion. Unicast is typically used for point-to-point communication, where data is intended for a specific recipient.
[0158] In the context of the present disclosure, the mesh modem 1320 in the electronic device is configured to support both broadcast and unicast modes of transmission.
[0159] Broadcast and unicast messages are depicted, in Fig. 2, are scheduled along a time axis. A first line of unicast blocks (UA-1 to UA-3, for example) indicate times wherein a first device A, part of the mesh network, listens to messages sent by second and third devices B and C, part of the mesh network, a second line of unicast blocks (UB-1 to UB-3, for example) indicate times wherein the second device B listens to messages sent by second and third devices A and B, a third line of unicast blocks are sent by a second device B, a third line of unicast blocks (UC-1 to UC-3, for example) are receivable by a third device C.
[0160] Additionally, transmitting-oriented protocols that utilize beacons may be implemented, although these are not depicted in the current diagrams. These protocols facilitate structured data transmission by signaling the presence and readiness of the network to transmit data.
[0161] A unicast block (UA-1 to UA-3, for example) indicates which frequency channel a device (Device A, for example) monitors, each device receiving only on a specific frequency. For example, if Device A intends to communicate with Device B, Device A must transmit a message (Tx in Fig. 3) on a certain channel during a time when Device B is listening to that certain channel. E.g., as shown in Fig. 3, Device A receives a message Tx from Device B while Device B monitors the frequency of Device A (unicast Block UB-2). That is the transmission (TX) is occurring on the channel to which Device B is tuned.
[0162] In the context of the present disclosure, broadcast offset (as indicated in Fig. 2) refers to the time delay before the start of a broadcast transmission B-2, B-0, B-L Broadcast duration (as indicated in Fig. 2) is the time span for which the broadcast transmission B-2, B-0, B-l lasts. A broadcast period (as indicated in Fig. 2) is the time interval between consecutive broadcast transmissions B-2, B-0, B-l. Unicast slot duration refers to the time interval in which a device listens on a specific frequency channel for any unicast message that would be received from any peer device (UA-1 to UA-3, for example).
[0163] Fig. 4 shows an additional schematic representation of a broadcast schedule of a mesh network. As shown, a message can be broadcast over all frequency channels, ensuring all devices in the network receive it. Alternatively, the message can be sent during specific broadcast intervals on a particular channel. Devices in the network may also transmit advertisement messages (arrows labelled 0,1, 2, 3 in Fig. 4) at a minimum rate to allow new devices to join the network.
[0164] Since the device transmits messages asynchronously, it must broadcast over all frequency channels because each peer device may be tuned to a different frequency channel. This is illustrated by multiple arrows, each indicating that Device A is sending the message on a different frequency channel. This approach ensures that the broadcast message will be received by all devices, even those currently operating on a unicast scheduling basis. The advertisement messages, which can be sent asynchronously, also serve to update network parameters or configurations, including the configuration of frequency channels.
[0165] Fig. 5 is a conceptual illustration of a interaction between a mesh network 300 and a cellular network 400. In the context of the present disclosure, any network topology type, including but not limited to tree-based topology where there is a direct connection between devices A and B, is considered as a mesh network. In the particular example, only the border router 1000A possesses access to the 'external world', for example via an LTE antenna 410. However, it should be noted that in practical scenarios, additional devices (e.g. Devices A, B and C) may also have such access, thus may also be part of the LTE network 400. For simplicity, the present example assumes that access to the external world is facilitated via the border router 1000A, which also acts as the coordinator of the mesh network 300. In terms of resource sharing, only those devices that can directly communicate with the border router 1000A (i.e. Devices A, B, C) are considered relevant. This is because once the LTE modem 1310 assumes control of the resources, the border router 1000A loses its ability to communicate with its peer devices (Devices A, A and C). It should be noted that the description of the mesh network comprising peer devices A, B and C is purely for explanatory purposes and to be understood as non-limiting. The number of peer devices may be arbitrary.
[0166] Fig. 6 shows a schematic representation of the electronic device 1000 according to the present disclosure. In addition to the Application module 1100, the UDP / TCP module, the LTE modem 1310 and the mesh protocol modem 1320, the device 1000 also comprises a coexistence module 1330.
[0167] The coexistence module may be provided as part of the communication module 1300.
[0168] The coexistence module 1330 comprises a processing module 1331 that performs processing of the LTE / mesh and application parameters based on information 1352 received from the LTE modem 1310 and based on information 1353. Additionally, information from the application layer module 1100, as indicated by the arrow, may be incorporated into the scheduling process.
[0169] The coexistence module 1330 comprises a scheduling module 1332 that performs scheduling and updating of the parameters of the LTE / mesh and sends updating information 1350,1351 to the LTE modem 1310 and the mesh protocol modem 1320 respectively. It may be noted that both modems are connected to the same antenna (ANT3), indicating the necessity for resource sharing.
[0170] Fig. 7 shows a schematic representation of the scheduling and updating process performed by the border router 1000A according to the present disclosure. Each of the following steps are performed in a time sequence as indicated. However, note that the time axis only presents a qualitative relation between the individual process steps. The process may comprise a provision step SI 1, wherein a channel scheduling profile is sent by the border router 1000A to the coexistence module 1330, a first updating step S12 wherein an update about scheduled wakeups is provided by the LTE modem 1310 to the coexistence module, a first calculation step S13 wherein the coexistence module 1330, based in the scheduling profile provided by the border router 1000A and the wakeup schedule provided by the LTE modem 1310, calculates anew scheduling profile, a first request step S14 wherein the coexistence module 1330 transmits a request to update scheduling parameters to the border router 1000A, a first peer update step S15 wherein the border router 1000A updates mesh peers 2000 in the mesh network 300 with the new scheduling parameters. Note that the border router 1000A may be the mesh modem 1320. It should be noted that any of the aforementioned steps may be performed either based on a schedule or in response to a previous step having completed or in response to a request to perform said step.
[0171] The sequence may then be repeated in steps S16 to S19 and may subsequently continue as required.
[0172] Fig. 8 shows a schematic representation of the scheduling and updating process performed by the border router 1000A and the coexistence module 1330 according to one embodiment. It should be noted that the coexistence module 1330 as shown in Fig. 8 may be part of the border router 1000 A or be provided as a separate module.
[0173] The scheduling and updating process may comprise commanding by the coexistence module 1330, in a command step S21, the border router 1000A to be unavailable for a specified period. In response, the border router 1000A may, in a notification step S22, notify the peer devices 2000 of the mesh network 300 of the unavailability of the border router 1000 A. The border router then enters a period of inactivity Pl. Subsequent to the period of inactivity Pl, the border router 1000A may update, in an update step S23, the peer devices 2000 with anew scheduling profile. In an optional notification step S24, the border router 1000A may confirm its active status to the coexistence module 1330. Subsequent to step S24, the border router 1000A may resume normal communication between the mesh peer devices 2000 and the border router 1000 A.
[0174] Note that, by specific non-limiting example, the new scheduling profile may be implemented by providing a new list of frequency channels. Additionally, the scheduling profile could be adjusted by modifying the broadcast and unicast channel configurations, altering the timing alignment for message transmissions, or by changing the frequency hopping patterns as described hereinabove.
[0175] Moreover, the command step S21 may comprise the border router 1000A being commanded to be unavailable for a specified period [tO... tl] . This is due to the shared resource being unavailable during the time.
[0176] The notification step S22 may comprise an advertisement message being sent by the border router 1000A to all peer devices 2000, updating them that the scheduling profile used by the border router 1000A is 'empty'. This implicitly indicates that the border router 1000A cannot be reached. During the Inactivity period Pl, the border router 1000A is unavailable to receive and transmit any messages. The mesh peer devices 2000 may optionally indicate that they cannot communicate with the border router 1000A during the period.
[0177] The update step S23 may comprise an advertisement message being sent to all peer devices 2000 with an updated scheduling profile used by the border router 1000A. The list is not empty, indicating that the border router 1000A can now be reached.
[0178] The optional confirmation step S24 may comprise the border router 1000A sending a message back to the coexistence module 1330, confirming that it is active again.
[0179] Fig. 9 shows a schematic representation of the scheduling and updating process performed by the border router 1000A and the coexistence module 1330 according to another embodiment.
[0180] The process may comprise a command step S81, a notification step S82, an unavailability period Pl, an optional confirmation step S83.
[0181] In the command step S 81, the border router 1000A is instructed by the coexistence module 1330 to be unavailable for a specified period [tO... tl] due to the unavailability of the shared resource.
[0182] In the notification step S82, an advertisement message is sent to all mesh peer devices 2000, indicating that the scheduling profile used by the border router 1000A is 'empty', implicitly signaling its unreachability.
[0183] In the unavailability period Pl the border router 1000A is unavailable to receive and transmit any messages. The mesh peer devices 2000 may acknowledge that they cannot communicate with the border router.
[0184] The optional confirmation step S83 may comprise the border router 1000A sending a message back to the coexistence module 1330, confirming that it is active again.
[0185] Unlike in the embodiment of Fig. 8, where mesh peers 2000 are informed of the end of the unavailability period Pl by the border router transmitting a purposeful availability notification (S23 in Fig. 8), in the embodiment of Fig. 9, the peer devices are informed that the period of unavailability lasts for a predetermined time, e.g. from t’0 to f l.
[0186] Fig. 10 shows a schematic representation of the scheduling and updating process performed by the border router 1000A and the coexistence module 1330 according to another embodiment.
[0187] The scheduling and updating process may comprise a first notification step S31, a first advertisement step S32, an optional update step S33, a plurality of unavailability periods P2, an interval end step S34, a second advertisement step S35 and an optional confirmation step S36. Subsequently, normal peer-to-router communication is resumed.
[0188] In the first notification step S31, the coexistence module 1330 notifies the border router 1000A of the scheduled unavailability periods P2, including periodicity and interval length, such as during eDRX.
[0189] In the first advertisement step S32, an advertisement message is sent to all peer devices 2000, updating the frequency hopping channel scheme to align with the unavailability periods P2 requested by the coexistence module 1330.
[0190] In the optional update step S33, the coexistence module 1330 is optionally updated with the unavailability periods P2.
[0191] During the unavailability periods P2. Attempts to send any message to the border router 1000A by the peer devices 2000 fail when the time slot is occupied by the LTE modem 1310, while attempts to send a unicast message succeed. The unavailability periods may be aligned with periodical active timeslots of the LTE. More specifically, the broadcast channels may be aligned with eDRX periods, and the shared resource is occupied during these periods. The periods P2A shown in Fig. 10 align with the unavailability periods P2.
[0192] When the notification is through explicit information about unavailability (e.g., setting bit=l), then all peer devices will be aware that the border router is inactive. Similarly, when the border router marks a group of channels (and corresponding timeslots) as inactive, the peer devices understand that they cannot communicate with the border router during these timeslots.
[0193] In cases where there is no notification of unavailability, the border router leverages the protocol's prioritization of broadcast slots over unicast slots. During a broadcast slot, any device will be listening to the frequency channel of the broadcast and not to the unicast. Thus, unicast messaging cannot be sent to or from any device during this period, but broadcast messages can be sent to all others.
[0194] When the border router modifies the scheduling profile such that broadcast is allocated continuously, for instance, it effectively notifies all devices that it cannot be accessed for unicast messaging. In this scenario, all devices will refrain from sending any unicast transmission to the border router but may attempt to reach it if they have a broadcast transmission.
[0195] In the interval end step S34, as notified by the coexistence module 1330, the shared resource becomes fully available to the border router 1000A. In the second advertisement step S35, an advertisement message is sent by the border router 1000A to all peer devices 2000 with an updated frequency hopping channel scheme.
[0196] In the optional confirmation step S36, the border router 1000A sends a message to the coexistence module 1330, confirming that it is ‘fully’ active again.
[0197] Fig. 11 shows a schematic representation of the scheduling and updating process performed by the border router 1000A and the coexistence module 1330 according to another embodiment.
[0198] The scheduling and updating process may comprise a command step S41, a first request step S42, an optional update step S43, an unavailability periods P3, a second request step S44, and an optional confirmation step S45. Subsequently, normal peer-to-router communication is resumed.
[0199] In the command step S41, the border router 1000A is instructed to be unavailable for a specified period [tO. . . tl] due to the unavailability of a shared resource.
[0200] In the first request step S42, an advertisement message is sent to all peer devices 2000, updating the broadcast frequency channel scheme. The frequency channel scheme is set such that the border router 1000A is only listening to the broadcast channel, indicating to the mesh peers 2000 that they cannot communicate over unicast channels. Attempts to send information over the broadcast channel fail as the border router's 1000A shared resource is occupied for LTE. Additionally, it may be noted that peer devices will refrain from attempting to send any unicast messaging but may attempt to send broadcast messaging, which will fail.
[0201] In the optional update step S43, the border router updates the coexistence module 1330 of the period of unavailability P3.
[0202] In the second request step S44, an advertisement message is sent by the border router 1000A to all peer devices 2000, updating the broadcast frequency channel scheme to a previous or other configuration.
[0203] In the optional confirmation step S45, the border router 1000A optionally sends a message back to the coexistence module 1330, confirming that it is 'fully' active again.
[0204] It should be noted that the options presented in Figs. 7 to 11 represent only a few examples of how the border router communicates its unreachability to its peer devices. Numerous other options to implement the present technology exist, which may involve combinations of different options. It should be noted that, in managing the mesh network scheduling in any of the embodiments shown in Fig. 7, Fig. 8, Fig. 9, Fig. 10 and Fig. 11, any of the previously discussed methods may be applied. The managing of the mesh schedule is not limited to the specific method applied in the respective embodiment. For periodical activities such as eDRX / iDRX wakeups, the system may implement methods such as setting a bit=l to signal unavailability or barring specific frequencies during active LTE periods. For non-periodical activities, adjustments may include modifying broadcast schedules or altering frequency hopping sequences. The mesh protocol may provide solutions such as setting bit=O to indicate the resumption of availability, employing frequency bars to restrict mesh device access during LTE activities, or adjusting broadcast messages to maintain mesh network communications without interfering with LTE operations.
[0205] Fig. 12 shows a schematic scheduling of a mesh network 300 according to an embodiment. The present scheduling may be used in conjunction with the embodiment in Fig. 7 or Fig. 8 above.
[0206] As shown in Fig. 12, the mesh modem 1320 may be configured to support scheduled broadcast periods B-0. The scheduling of unicast periods U-0 may be calculated based on the disclosure in Fig. 7 or 8. Here, the mesh modem 1320 is configured to support scheduled unicast periods U-0.
[0207] In the context of the previously described process, the border router 1000A communicates an update, specifically indicating its unavailability to receive any messages. The update is transmitted during one or more time slots BU-1, where the border router 1000A is instructed by the coexistence module 1330 to be unavailable for a specified duration S-0 (which may correspond to the period Pl in Fig. 8) and may correspond to an LTE connected period CM. During the period, the border router 1000 A does not monitor or listening to the designated frequency channels. This status persists until a subsequent update is communicated in a time slot BU-2. Broadcasts sent to the border router S-U (only two reference signs shown for legibility) during the period of unavailability S-0 are not received.
[0208] Fig. 13 shows a schematic scheduling of a mesh network 300 according to an embodiment. The present scheduling may be used in conjunction with the embodiment in Fig. 9 above.
[0209] As shown in Fig. 13, a broadcast message transmitted by the mesh peers Device B and Device C (which may be the mesh peers 2000) during specific timeslots UP-1 to UP -4 will not be received by the border router 1000 A. The timeslots correspond to the original broadcast slots established in the network. The border router 1000A communicates changes in the broadcast slots scheduling through asynchronous messaging in timeslot BU-1, leading to a new broadcast scheduling. In the new schedule, the broadcast slots completely coincide with the LTE wake-up periods, indicating a full overlap. The overlap signifies that during the LTE wake-up periods, the border router 1000A is focused on LTE communications and will not receive broadcast messages from the mesh network 300. Following the period, the border router 1000A communicates further changes to the broadcast slots scheduling through asynchronous messaging in timeslot BU-2, indicating a return to the original schedule or a transition to a different schedule.
[0210] Fig. 14 shows a schematic scheduling of a mesh network 300 according to an embodiment. The present scheduling may be used in conjunction with the embodiment in Fig. 9 to Fig. 11 above.
[0211] As shown in Fig. 14, the border router 1000A communicates changes in the broadcast slots scheduling via asynchronous messaging in timeslot BU-1. The communication leads to the establishment of a new broadcast scheduling. In the new schedule, the broadcast slot is completely coincident with the LTE wake-up periods, indicating a full overlap. The overlap signifies that during the LTE wake-up periods, the border router 1000A is focused on LTE communications and will not receive broadcast messages from the mesh network 300. Following the period of overlap, the border router 1000A communicates further changes to the broadcast slots scheduling through asynchronous messaging in timeslot BU-2. The communication may indicate a return to the original schedule or a transition to a different schedule, depending on the network requirements and the status of the shared resources.
[0212] Fig. 15 shows a schematic scheduling of a mesh network 300 according to an embodiment. The present scheduling may be used in conjunction with the embodiment in Fig. 8 to Fig. 11 above. As shown in Fig. 15, the border router 1000A communicates changes in the broadcast slots scheduling via asynchronous messaging in timeslot BU-1. The communication results in anew broadcast scheduling being established. In the new schedule, the broadcast periodicity and duration remain the same as before. During periods BB-0 to BB-2, no unicast transmissions can be received by the border router 1000A, as it is solely focused on the broadcast transmissions. It should be noted that, from the perspective of peer devices 2000, attempts may be made to communicate over the broadcast channel with the border router 1000 A. However, these attempts will fail as the border router's 1000A shared resource will be allocated to the LTE modem 1310. Following the period of broadcast-focused operation, the border router 1000A communicates further changes to the broadcast slots scheduling through asynchronous messaging in timeslot BU-2. The subsequent communication may comprise a return to a schedule that accommodates both broadcast and unicast transmissions or a transition to a different schedule, depending on the network requirements and the status of the shared resource. Fig. 16 shows a schematic scheduling of a mesh network 300 according to an embodiment. The present scheduling may be used in conjunction with the embodiment in Fig. 7 to Fig. 11 above.
[0213] As shown in Fig. 16, the border router 1000A communicates changes in the broadcast slots scheduling via asynchronous messaging in timeslot BU-1. This leads to the establishment of a new broadcast scheduling. In the new schedule, the broadcast slots BB-0 to BB-2 are completely coincident with the LTE connected period CM, indicating a full overlap (cp. Fig. 14 and Fig. 15). The overlap signifies that during the LTE connected period CM, the border router is focused on LTE communications and will not receive broadcast messages from the mesh network. Furthermore, the timeslots UP-0 to UP -2 for the broadcast channel overlap with the duration periods of the Connected Mode Discontinuous Reception (C-DRX). The overlap indicates that during the C-DRX periods, the border router 1000A is not actively receiving broadcast messages. Following the period of overlap, further changes to the broadcast slots scheduling can be communicated by the border router through asynchronous messaging in timeslots BU-2 and BU-3, depending on the network requirements and the status of the shared resources.
[0214] Figures 13-16 illustrate examples of modifications to the broadcast scheduling. Similarly, unavailability during these periods may be achieved through explicit notifications of unavailability (e.g., b='l ', unavailable channels) by the border router 1000 A. The advantage of this approach is that peer devices 2000 will refrain from attempting communication with the border router 1000A entirely.
[0215] Fig. 17 shows a schematic representation of an alternative scheduling and updating process performed by the border router 1000A according to the present disclosure. Each of the following steps are performed in a time sequence as indicated. However, note that the time axis only presents a qualitative relation between the individual process steps. The process may comprise a provision step S51, wherein a channel scheduling profile is sent by the mesh modem 1320 to the coexistence module 1330, a request step S52 wherein an update about scheduled wakeups is provided by the LTE modem 1310 to the coexistence module, a calculation step S53 wherein the coexistence module 1330, based in the scheduling profile provided by the mesh modem 1320 and the wakeup schedule provided by the LTE modem 1310, calculates anew wakeup timing for the LTE modem 1310, an instruction step S54 wherein the coexistence module 1330 transmits an instruction to the LTE modem 1310 to reschedule its wakeup timing based on the calculation in step S53, and a wakeup step S55 wherein the LTE modem 1310 wakes up at the scheduled time provided by the coexistence module 1330. The wakeup scheduling provided by the LTE modem 1310 in the request step S52 may comprise a scheduled wakeup timing at a time t. The coexistence module may calculate a revised wakeup timing at atime t’. The coexistence module then, in step S54, instructs the LTE module 1310 wake up at time t’ instead of time t.
[0216] The sequence may then be repeated in steps and subsequently continue as required.
[0217] FIG. 18 of attachment 1 illustrates a block diagram of a computer that may implement the various embodiments described herein.
[0218] The present disclosure may be embodied as a system, a method, and / or a computer program product. The computer program product may include a computer readable storage medium on which computer readable program instructions are recorded that may cause one or more processors to carry out aspects of the embodiment.
[0219] The computer readable storage medium may be a tangible device that can store instructions for use by an instruction execution device (processor). The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any appropriate combination of the devices. A non-exhaustive list of more specific examples of the computer readable storage medium includes each of the following (and appropriate combinations): flexible disk, hard disk, solid-state drive (SSD), random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or Flash), static random access memory (SRAM), compact disc (CD or CD-ROM), digital versatile disk (DVD) and memory card or stick. A computer readable storage medium, as used in the disclosure, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
[0220] Computer readable program instructions described in the disclosure can be downloaded to an appropriate computing or processing device from a computer readable storage medium or to an external computer or external storage device via a global network (i.e., the Internet), a local area network, a wide area network and / or a wireless network. The network may include copper transmission wires, optical communication fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing or processing device may receive computer readable program instructions from the network and forward the computer readable program instructions for storage in a computer readable storage medium within the computing or processing device.
[0221] Computer readable program instructions for carrying out operations of the present disclosure may include machine language instructions and / or microcode, which may be compiled or interpreted from source code written in any combination of one or more programming languages, including assembly language, Basic, Fortran, Java, Python, R, C, C++, C# or similar programming languages. The computer readable program instructions may execute entirely on a user's personal computer, notebook computer, tablet, or smartphone, entirely on a remote computer or computer server, or any combination of the computing devices. The remote computer or computer server may be connected to the user's device or devices through a computer network, including a local area network or a wide area network, or a global network (i.e., the Internet). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by using information from the computer readable program instructions to configure or customize the electronic circuitry, in order to perform aspects of the present disclosure.
[0222] Aspects of the present disclosure are described herein with reference to flow diagrams and block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. It will be understood by those skilled in the art that each block of the flow diagrams and block diagrams, and combinations of blocks in the flow diagrams and block diagrams, can be implemented by computer readable program instructions.
[0223] The computer readable program instructions that may implement the systems and methods described in the disclosure may be provided to one or more processors (and / or one or more cores within a processor) of a general purpose computer, special purpose computer, or other programmable apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable apparatus, create a system for implementing the functions specified in the flow diagrams and block diagrams in the present disclosure. The computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable apparatus, and / or other devices to function in a particular manner, such that the computer readable storage medium having stored instructions is an article of manufacture including instructions which implement aspects of the functions specified in the flow diagrams and block diagrams in the present disclosure. The computer readable program instructions may also be loaded onto a computer, other programmable apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions specified in the flow diagrams and block diagrams in the present disclosure.
[0224] FIG. 18 is a functional block diagram illustrating a networked system 800 of one or more networked computers and servers. In an embodiment, the hardware and software environment illustrated in FIG. 18 may provide an exemplary platform for implementation of the software and / or methods according to the present disclosure.
[0225] Referring to FIG. 18, a networked system 800 may include, but is not limited to, computer 805, network 810, remote computer 815, web server 820, cloud storage server 825 and computer server 830. In some embodiments, multiple instances of one or more of the functional blocks illustrated in FIG. 18 may be employed.
[0226] Additional detail of computer 805 is shown in FIG. 18. The functional blocks illustrated within computer 805 are provided only to establish exemplary functionality and are not intended to be exhaustive. And while details are not provided for remote computer 815, web server 820, cloud storage server 825 and computer server 830, the other computers and devices may include similar functionality to that shown for computer 805.
[0227] Computer 805 may be a personal computer (PC), a desktop computer, laptop computer, tablet computer, netbook computer, a personal digital assistant (PDA), a smart phone, or any other programmable electronic device capable of communicating with other devices on network 810.
[0228] Computer 805 may include processor 835, bus 837, memory 840, non-volatile storage 845, network interface 850, peripheral interface 855 and display interface 865. Each of the functions may be implemented, in some embodiments, as individual electronic subsystems (integrated circuit chip or combination of chips and associated devices), or, in other embodiments, some combination of functions may be implemented on a single chip (sometimes called a system on chip or SoC).
[0229] Processor 835 may be one or more single or multi-chip microprocessors, such as those designed and / or manufactured by Intel Corporation, Advanced Micro Devices, Inc. (AMD), Arm Holdings (Arm), Apple Computer, etc. Examples of microprocessors include Celeron, Pentium, Core i3, Core i5 and Core i7 from Intel Corporation; Opteron, Phenom, Athlon, Turion and Ryzen from AMD; and Cortex- A, Cortex-R and Cortex-M from Arm.
[0230] Bus 837 may be a proprietary or industry standard high-speed parallel or serial peripheral interconnect bus, such as ISA, PCI, PCI Express (PCI-e), AGP, and the like.
[0231] Memory 840 and non-volatile storage 845 may be computer-readable storage media. Memory 840 may include any suitable volatile storage devices such as Dynamic Random Access Memory (DRAM) and Static Random Access Memory (SRAM). Non-volatile storage 845 may include one or more of the following: flexible disk, hard disk, solid-state drive (SSD), read-only memory (ROM), erasable programmable read-only memory (EPROM or Flash), compact disc (CD or CD-ROM), digital versatile disk (DVD) and memory card or stick.
[0232] Program 848 may be a collection of machine-readable instructions and / or data that is stored in non-volatile storage 845 and is used to create, manage and control certain software functions that are discussed in detail elsewhere in the present disclosure and illustrated in the drawings. In some embodiments, memory 840 may be considerably faster than non-volatile storage 845. In such embodiments, program 848 may be transferred from non-volatile storage 845 to memory 840 prior to execution by processor 835.
[0233] Computer 805 may be capable of communicating and interacting with other computers via network 810 through network interface 850. Network 810 may be, for example, a local area network (LAN), a wide area network (WAN) such as the Internet, or a combination of the two, and may include wired, wireless, or fiber optic connections. In general, network 810 can be any combination of connections and protocols that support communications between two or more computers and related devices.
[0234] Peripheral interface 855 may allow for input and output of data with other devices that may be connected locally with computer 805. For example, peripheral interface 855 may provide a connection to external devices 860. External devices 860 may include devices such as a keyboard, a mouse, a keypad, a touch screen, and / or other suitable input devices. External devices 860 may also include portable computer-readable storage media such as, for example, thumb drives, portable optical or magnetic disks, and memory cards. Software and data used to practice embodiments of the present disclosure, for example, program 848, may be stored on such portable computer-readable storage media. In such embodiments, software may be loaded onto non-volatile storage 845 or, alternatively, directly into memory 840 via peripheral interface 855. Peripheral interface 855 may use an industry standard connection, such as RS-232 or Universal Serial Bus (USB), to connect with external devices 860.
[0235] Display interface 865 may connect computer 805 to display 870. Display 870 may be used, in some embodiments, to present a command line or graphical user interface to a user of computer 805. Display interface 865 may connect to display 870 using one or more proprietary or industry standard connections, such as VGA, DVI, DisplayPort and HDMI.
[0236] As described above, network interface 850, provides for communications with other computing and storage systems or devices external to computer 805. Software programs and data discussed herein may be downloaded from, for example, remote computer 815, web server 820, cloud storage server 825 and computer server 830 to non-volatile storage 845 through network interface 850 and network 810. Furthermore, the systems and methods described in the disclosure may be executed by one or more computers connected to computer 805 through network interface 850 and network 810. For example, in some embodiments the systems and methods described in the disclosure may be executed by remote computer 815, computer server 830, or a combination of the interconnected computers on network 810.
[0237] Data, datasets and / or databases employed in embodiments of the systems and methods described in the disclosure may be stored and or downloaded from remote computer 815, web server 820, cloud storage server 825 and computer server 830.
[0238] Circuitry as used in the present application can be defined as one or more of the following: an electronic component (such as a semiconductor device), multiple electronic components that are directly connected to one another or interconnected via electronic communications, a computer, a network of computer devices, a remote computer, a web server, a cloud storage server, a computer server. For example, each of the one or more of the computer, the remote computer, the web server, the cloud storage server, and the computer server can be encompassed by or may include the circuitry as a component(s) thereof. In some embodiments, multiple instances of one or more of the components may be employed, wherein each of the multiple instances of the one or more of the components are also encompassed by or include circuitry. In some embodiments, the circuitry represented by the networked system may include a serverless computing system corresponding to a virtualized set of hardware resources. The circuitry represented by the computer may be a personal computer (PC), a desktop computer, a laptop computer, a tablet computer, a netbook computer, a personal digital assistant (PDA), a smart phone, or any other programmable electronic device capable of communicating with other devices on the network. The circuitry may be a general-purpose computer, special purpose computer, or other programmable apparatus as described herein that includes one or more processors. Each processor may be one or more single or multi-chip microprocessors. Processors are considered processing circuitry or circuitry as they include transistors and other circuitry therein. The circuitry may implement the systems and methods described in the disclosure based on computer-readable program instructions provided to the one or more processors (and / or one or more cores within a processor) of one or more of the general purpose computer, special purpose computer, or other programmable apparatus described herein to produce a machine, such that the instructions, which execute via the one or more processors of the programmable apparatus that is encompassed by or includes the circuitry, create a system for implementing the functions specified in the flow diagrams and block diagrams in the present disclosure. Alternatively, the circuitry may be a preprogrammed structure, such as a programmable logic device, application specific integrated circuit, or the like, and is / are considered circuitry, regardless if used in isolation or in combination with other circuitry that is programmable, or preprogrammed.
[0239] Obviously, numerous modifications and variations of the present disclosure are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the disclosure may be practiced otherwise than as specifically described herein.
[0240] All units and entities described in the specification and claimed in the appended claims can, if not stated otherwise, be implemented as integrated circuit logic, for example on a chip, and functionality provided by such units and entities can, if not stated otherwise, be implemented by software.
[0241] In so far as the embodiments of the disclosure described above are implemented, at least in part, using software-controlled data processing apparatus, it will be appreciated that a computer program providing such software control and a transmission, storage or other medium by which such a computer program is provided are envisaged as aspects of the present disclosure.
[0242] Note that the present technology can also be configured as described below.
[0243] (1) An electronic device, comprising circuitry configured to manage a communication schedule within a mesh network or a cellular network, a respective mesh modem and a respective cellular modem sharing at least one network resource; wherein the mesh network operates based on a mesh protocol and the cellular network operates based on a cellular protocol; the management of the communication schedule is responsive to a request to access the shared network resource received from either the mesh network or the cellular network in accordance with their respective protocols; and wherein the circuitry is further configured to decide how to allocate the shared network resource based on the received request.
[0244] (2) The electronic device according to (1), wherein the request is received from either an application or a transport layer protocol module.
[0245] (3) The electronic device according to (1), wherein the request is received from at least one of the mesh modem, a peer device in the mesh network, the cellular modem or a remote device in the cellular network in accordance with respective network protocols.
[0246] (4) The electronic device according to (1), wherein the communication schedule is controlled such that the mesh network does not access the shared networking resource while the shared networking resource is accessed by the cellular network.
[0247] (5) The electronic device according to any of (1) to (4), wherein the control comprises sending to all of peer devices coupled to the mesh network a scheduling request, and, responsive to the scheduling request, the peer devices do not receive and / or transmit information to the mesh modem on a predetermined channel for a duration specified in the scheduling request.
[0248] (6) The electronic device according to (5), wherein the predetermined channel is at least one of a unicast channel or a broadcast channel.
[0249] (7) The electronic device according to (6), wherein the predetermined channel is the unicast channel and the broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to receive and / or transmit both on the broadcast channel and on the unicast channel.
[0250] (8) The electronic device according to any of (6) to (7), wherein the predetermined channel is only the unicast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to only receive and / or transmit on the broadcast channel.
[0251] (9) The electronic device according to any of (6) to (8), wherein the predetermined channel is only a broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to only receive and / or transmit on the broadcast channel.
[0252] (10) The electronic device according to any of (6) to (9), wherein the predetermined channel is a channel that is neither the unicast channel nor the broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to receive and / or transmit on the channel that is neither the unicast channel nor the broadcast channel. (11) The electronic device according to any of (1) to (10), wherein the cellular protocol is an LTE protocol and the duration corresponds to a period wherein the LTE modem is active.
[0253] (12) The electronic device according to any of (1) to (11), wherein the cellular protocol is an LTE protocol and the duration corresponds to a cDRX connected period and / or an eDRX period, and / or an iDRX period.
[0254] (13) The electronic device according to any of (5) to (12), wherein the scheduling request is broadcast to the peer devices via a broadcast message.
[0255] (14) The electronic device according to any of (5) to (13), wherein the scheduling request is sent to the peer devices via a direct unicast.
[0256] (15) The electronic device according to any of (1) to (14), wherein the shared network resource is at least one of a data transmission means, an antenna, a network wire, a networking interface, a radio frequency chain or a front-end chain.
[0257] (16) The electronic device according to any of (1) to (15), further configured to send, to a mesh modem coupled to the mesh network, an update request to update mesh scheduling parameters, and receive, from a cellular modem coupled to the cellular network, scheduling information on a communication schedule of the cellular network.
[0258] (17) The electronic device according to any of (5) to (16), wherein the control comprises calculating, based on the communication schedule of the cellular network, a scheduling profile for the mesh network; and sending, based on the scheduling profile, the update request.
[0259] (18) The electronic device according to any of (6) to (17), wherein responsive to the update request, the mesh modem sends scheduling profile update information to at least one peer device coupled to the mesh network.
[0260] (19) The electronic device according to any of (6) to (18), wherein the communication schedule is controlled such that the cellular network does not access the shared networking resource while the shared networking resource is accessed by the mesh network.
[0261] (20) A communication scheduling method comprising: manage a communication schedule within a mesh network or a cellular network, both networks sharing at least one network resource; wherein the mesh network operates based on a mesh protocol and the cellular network operates based on a cellular protocol; the management of the communication schedule is responsive to a request to access the shared network resource received from either the mesh network or the cellular network in accordance with their respective protocols; and decide how to allocate the shared network resource based on the received request.
[0262] (21) A computer program that causes a computer to execute the method according to (20).
[0263] (22) A non-transitory computer-readable recording medium that stores therein a computer program product, which, when executed by a processor, causes the method according to (20) to be performed.
[0264] LIST OF REFERENCE SIGNS
[0265] 1000, 1000A, 1000B Electronic device
[0266] 1100 Application layer module
[0267] 1200 UDP / TCP module
[0268] 1300 Communication module
[0269] 1310 LTE modem
[0270] 1311 Data buffer
[0271] 1312 IP module
[0272] 1313 PDCP module
[0273] 1314 RLC module
[0274] 1315 MAC module
[0275] 1316 PHY module
[0276] 1320 Mesh protocol modem
[0277] 1321 Buffer
[0278] 1322 IP module
[0279] 1323 LLC module
[0280] 1324 MAC module
[0281] 1325 PHY module
[0282] 1330 Coexistence module
[0283] 1331 Processing module
[0284] 1332 Scheduling module
[0285] 1350, 1351, 1352, 1353 Information
[0286] 2000 Mesh peers
[0287] 300 Mesh network
[0288] 400 Cellular network
[0289] 410 LTE antenna 800 Networked system
[0290] 805 Computer
[0291] 810 Network
[0292] 815 Remote computer
[0293] 820 Web server
[0294] 825 Cloud storage server
[0295] 830 Computer server
[0296] 835 Processor
[0297] 837 Bus
[0298] 840 Memory
[0299] 845 Non-volatile storage
[0300] 848 Program
[0301] 850 Network interface
[0302] 855 Peripheral interface
[0303] 860 External devices
[0304] 865 Display interface
[0305] 870 Display
[0306] ANTI, ANT2 Antennas
[0307] BB-0, BB-1, BB-2 Broadcast slots
[0308] B-0, B-l, B-2 Broadcast periods
[0309] BU-1, BU-2, BU-3 Broadcast slots
[0310] CM LTE connected period
[0311] P1, P2, P2A, P3 Periods
[0312] S-0 Duration
[0313] UA-1, UA-2, UA-3 Unicast blocks
[0314] UB-1, UB-2, UB-3 Unicast blocks UC-1, UC-2, UC-3 Unicast blocks
[0315] UP-0, UP-1, UP-2, UP-3, UP-4 Unicast periods
[0316] U-0 Unicast periods
[0317] Tx Transmission
Claims
CLAIMS1. An electronic device, comprising circuitry configured to manage a communication schedule within a mesh network or a cellular network, a respective mesh modem and a respective cellular modem sharing at least one network resource; wherein the mesh network operates based on a mesh protocol and the cellular network operates based on a cellular protocol; the management of the communication schedule is responsive to a request to access the shared network resource; and wherein the circuitry is further configured to decide how to allocate the shared network resource based on the received request.
2. The electronic device according to claim 1, wherein the request is received from at least one of an application or a transport layer protocol module.
3. The electronic device according to claim 1, wherein the request is received from at least one of the mesh modem, a peer device in the mesh network, the cellular modem or a remote device in the cellular network in accordance with respective network protocols.
4. The electronic device according to claim 1, wherein the communication schedule is controlled such that the mesh network does not access the shared networking resource while the shared networking resource is accessed by the cellular network.
5. The electronic device according to claim 1, wherein the control comprises sending to all of peer devices coupled to the mesh network a scheduling request, and, responsive to the scheduling request, the peer devices do not receive and / or transmit to or from the mesh modem on a predetermined channel for a duration specified in the scheduling request.
6. The electronic device according to claim 3, wherein the predetermined channel is at least one of a unicast channel or a broadcast channel.
7. The electronic device according to claim 6, wherein the predetermined channel is the unicast channel and the broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to receive and / or transmit both on the broadcast channel and on the unicast channel.
8. The electronic device according to claim 6, wherein the predetermined channel is only the unicast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to only receive and / or transmit on the broadcast channel.
9. The electronic device according to claim 6, wherein the predetermined channel is only a broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to only receive and / or transmit on the broadcast channel.
10. The electronic device according to claim 5, wherein the predetermined channel is a channel that is neither the unicast channel nor the broadcast channel and all of the peer devices are configured, for the duration specified in the scheduling request, to receive and / or transmit on the channel that is neither the unicast channel nor the broadcast channel.
11. The electronic device according to claim 1 , whereinThe cellular protocol is an LTE protocol and the duration corresponds to a period wherein the LTE modem is active.
12. The electronic device according to claim 1, whereinThe cellular protocol is an LTE protocol and the duration corresponds to an cDRX connected period and / or an eDRX period, and / or an iDRX period.
13. The electronic device according to claim 5, wherein the scheduling request is broadcast to the peer devices via a broadcast message.
14. The electronic device according to claim 5, wherein the scheduling request is sent to the peer devices via a direct unicast.
15. The electronic device according to claim 1, wherein the shared network resource is at least one of a data transmission means, an antenna, a network wire, a networking interface, a radio frequency chain or a front-end chain.
16. The electronic device according to claim 1, further configured to send, to a mesh modem coupled to the mesh network, an update request to update mesh scheduling parameters, and receive, from a cellular modem coupled to the cellular network, scheduling information on a communication schedule of the cellular network.
17. The electronic device according to claim 5, wherein the control comprises calculating, based on the communication schedule of the cellular network, a scheduling profile for the mesh network; and sending, based on the scheduling profile, the update request.
18. The electronic device according to claim 6, wherein responsive to the update request, the mesh modem sends scheduling profile update information to at least one peer device coupled to the mesh network.
19. The electronic device according to claim 1, wherein the communication schedule is controlled such that the cellular network does not access the shared networking resource while the shared networking resource is accessed by the mesh network.
20. A communication scheduling method comprising: manage a communication schedule within a mesh network or a cellular network, both networks sharing at least one network resource; wherein the mesh network operates based on a mesh protocol and the cellular network operates based on a cellular protocol; the management of the communication schedule is responsive to a request to access the shared network resource; and decide how to allocate the shared network resource based on the received request.
21. A computer program that causes a computer to execute the method according to claim 20.