KKopyscinski commented on code in PR #1619:
URL: https://github.com/apache/mynewt-nimble/pull/1619#discussion_r1382818277
##########
apps/btshell/src/btshell.h:
##########
@@ -182,6 +185,36 @@ int btshell_l2cap_send(uint16_t conn, uint16_t idx,
uint16_t bytes);
int btshell_l2cap_reconfig(uint16_t conn_handle, uint16_t mtu,
uint8_t num, uint8_t idxs[]);
+#if (MYNEWT_VAL(BLE_ISO_BROADCASTER))
+int btshell_broadcast_base_add(uint8_t adv_instance, uint32_t
presentation_delay);
Review Comment:
So the flow is like that:
1. `base_add` (calls `btshell_broadcast_base_add`) - allocates memory for
`ble_audio_base`, `ble_iso_big_params`. Sets `presentation_delay` and
`adv_instance` to base
2. `big_sub_add` (calls `btshell_broadcast_big_sub_add`) - adds subgroup to
BASE identified by `adv_instance` (allocates memory, sets fields)
3. `bis_add` (calls `btshell_broadcast_bis_add`) - similar to `big_sub_add`,
but for BIS. Adds bis to last added subgroup in BIG identified by `adv_instance`
4. `broadcast_create` (calls `btshell_broadcast_create` - basically calls
`ble_audio_broadcast_create`. Here EA and PA params are set, instance
configured with both advertisements.
5. `broadcast_start` (calls `btshell_broadcast_start`) - this finally calls
`ble_audio_broadcast_start`, so EA, PA are started. `ble_iso_create_big` is
also called, and BIG Info advertisements start to broadcast
6. In shell, I haven't added data stream flow to BISes. I'm not sure how
this could be done in shell to make sense. I'm preparing standalone demo that
does all this, in similar way extended_advertiser demo does. So at this point
app has to have some routine (like loop or thread) that calls `ble_iso_tx`,
with payload. For BIS `conn_handle` for this function is BIS handle.
7. At this point broadcast can be stopped (`broadcast_stop`), destroyed
(`broadcast_destroy`) or updated (`broadcast_update`).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]