mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-01-06 07:00:59 +00:00
69 lines
2.6 KiB
Plaintext
69 lines
2.6 KiB
Plaintext
/* new todo file for BTstack */
|
|
|
|
2009-11-08: Release 0.1
|
|
2010-06-20: Release 0.2 - SDP + iOS 4 support
|
|
|
|
NEXT:
|
|
- test SDP implementation against Mac/Linux Service Discovery
|
|
- HCI CMD packet is limited to 255 bytes payload. SDP records can be larger than that. Options:
|
|
- handle SDP records in client library
|
|
- provide a way to transer SDP records in segments
|
|
- ignore HCI command lenght on socket connection and directly stream data without buffer
|
|
- use simple SDP_PACKET for client/server communication
|
|
|
|
- move RFCOMM code into BTdaemon
|
|
- add extern "C" to bstack methods
|
|
- see: http://stackoverflow.com/questions/376966/using-c-c-static-libraries-from-iphone-objectivec-apps
|
|
- figure out how to receive iPhone System Power IONotifications (in BTdaemon) to detect, when phone gets locked
|
|
- add timeouts to cocoa run loop
|
|
- L2CAP
|
|
- segmentation
|
|
- extend SpringBoard feedback
|
|
- show alerts/messages using SpringBoardAcccess, e.g. Bluetooth disconnected by remote device
|
|
- add code to notify about remote disconnets
|
|
- configuration: /etc/btstack
|
|
- single Bluetooth module supported
|
|
- transport type: H4, H5, USB
|
|
- h4/h5: UART path
|
|
- usb: product/vendor ID
|
|
- logging mode: text, bluez, packetlogger
|
|
- implement rest of L2CAP state machine
|
|
- error handling
|
|
- error notification
|
|
- flow control
|
|
- add configure option for uart flowcontrol
|
|
- create <btstack/errors.h>
|
|
- Bluetooth low-power modes useful
|
|
|
|
== USB Support ==
|
|
- Store array of data sources to be able to remove them on usb_close
|
|
|
|
== Objective-C Interface ==
|
|
- move connection methods to BTdevice (get more object oriented)
|
|
- initWithAddress:(bd_addr_t *)addr
|
|
- setters private
|
|
- implement l2cap code
|
|
- implement rfcomm code
|
|
- animate discovery dialog:
|
|
* use indexPathsForVisibleRows and cellForRowAtIndexPath: when you want to refresh just the cells that are on the screen
|
|
* use insertRowsAtIndexPaths:withRowAnimation: to add rows
|
|
* use deleteRowsAtIndexPaths:withRowAnimation: to remove them-
|
|
|
|
== Refactor/Improve Architecture ==
|
|
- use single standard packet handler for acl & events
|
|
- hci_transport -> hci
|
|
- hci -> l2cap
|
|
- l2cap -> daemon
|
|
- add linked_list_iterator that can remove elements (used by l2cap_close_connection and sdp_unregister_services_for_connection
|
|
- clean up control flow
|
|
- l2cap directly sends data over socket: good/bad?
|
|
- split daemon into stack parts
|
|
- should there be STACK API/interface?
|
|
- unify packet generation
|
|
- btstack events
|
|
- cmd packets
|
|
- l2cap commands
|
|
- auto-generate code for sending commands from structured text input file
|
|
- devise concept for access to event data
|
|
- auto-generate event struct getter? STRUCTURE_get_FIELD
|