btstack/TODO.txt
2010-06-13 15:46:31 +00:00

65 lines
2.3 KiB
Plaintext

/* new todo file for BTstack */
2009-11-08: Release 0.1
NEXT:
- implement SDP
- test SDP implementation against Mac/Linux Service Discovery
== Release Version 0.2
- 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