Files
esp-nimble/apps
Krzysztof Kopyściński 4cf74c3bf5 apps/bttester: remove unstalled_cb from btp_l2cap.c
Response to BTP_L2CAP_SEND_DATA command is already sent in command
handler (`send_data()`). Sending further responses to already answered
command is confusing - we cannot fail successful procedure
retroactively. Data sending is already confirmed to be started
successfully and no further responses are expected - more so, it appears
to break `available_queue` management and further commands cannot be
processed correctly.

Similar callback may be proposed in the future if confirmation of
sending data is needed, but not in form of BTP response, but BTP event.
2023-08-03 15:39:23 +02:00
..
2023-07-10 17:05:46 +02:00
2020-07-02 12:07:25 +02:00

Sample applications

advertiser

This is the simplest example of advertising. Application sets NRPA, configures advertisement parameters: general discoverable and not connectable and fills advertisement fields. Transmited data contains only flags, tx power level and device name, which fits in 31B limit of single package. With this data set, device advertises for 10 seconds, terminates advertisement and repeats process again infinitely.

scanner

This application shows how to perform simple scan. Device performs discovery procedure, during which receives advertising reports (if any devices are advertising nearby). These reports are being parsed and results are printed to serial port. Applicaton starts new discovery every second.

peripheral

Peripheral application is based on advertiser, but has added capability of connecting with other devices. As peripheral, device doesn't initiate any connection by itself; instead, advertises infinitely and accepts any connection request it receives. Because we cannot use any 16 or 32 bit UUIDs, as these are reserved by Bluetooth SIG, we are forced to use 128-bit one. Including such long UUID in advertising data consumes large part of available payload, so this data is split in advertising data and response data.

central

This application works in pair with peripheral. It's based on scanner application - the difference is, that if there was detected device with UUID fitting to the one predefined in central application, connection is initiated.