# Point-to-Point Proportional Duty-Cycle Control Method (PPPDCCM) or Point-to-Point Proportional Time-Slot Allocation Control Method (PPPTSACM) A simple yet effective time slot allocation method for half-duplex point-to-point communication channel. ## Required data in the packet/frames: | Data Type | Shorthand | Actual Name | |:--------- | ---------- | ----------------------- | | Integer | my_share | My share of bandwidth | | Integer | your_share | Your share of bandwidth | Both of them must be greater than or equal to 1, otherwise it’s invalid. Optionally use 0 as indicator of OOB frames. Bandwidth share could be scaled TX buffer usage or to be determined by other means. ## How it works: Let Alice and Bob be the two nodes that are going to have communication. When Alice is ready to send data, Alice calculate the available duty-cycle with `1 - Bob[my_share] / Bob[your_share]`. When Bob is ready to send data, Bob calculate the available duty-cycle with `1 - Alice[my_share] / Alice[your_share]`. When one of them received a packet/frame from the other party, they will store the received value of `my_share` into local `your_share` variable.