/* new todo file for BTstack */ Last milestone reached: Restart client app without restarting BTdaemon possible NEXT: - autostart by launchd: ch.ringwald.BTstack.plist - get it to work on mac, example: - http://objccocoa.codefetch.com/example/pw/20-launchd/sampled.m?qy=hello+world - get it to work on iPhone - better deal with Apple stack - detect if it is running - figure out how to shut it down - user interface - iPhone status icon support - set BTstack SpringBoard icon from background deamon - possible without MobileSubstrate - MobileSubstrate used by veency - Detect and handle iPhone sleep mode - Cocoa User Interface Components - Alert and shutdown of Apple's stack - Inquiry === BTdaemon can run always - implement rest of L2CAP state machine - incoming connections - list of supported PSM - commands and events === Incoming L2CAP supported - configuration: /etc/btstack - single Bluetooth module supported - transport type: H4, H5, USB - h4/h5: usart name - usb: product/vendor ID - logging mode: text, bluez, packetlogger - implement rest of L2CAP state machine - error handling - error notification - flow control - reassembly/segmentation - autostart of BTdaemon (inetd? launchd?) - automatic disable of alternative Bluetooth Stack (e.g., BTServer on iPhone) - DEMOS: - BTstack-cmd - info - inquiry - remote name - open/close l2cap connection - evtl. SDP browser == Release Version 0.1 - implement RFCOMM - implement SDP - implement PAN == Release Version 0.2 - naming conventions for various layers - if all control is done by pseudo hci commands, only bt_send_cmd(&cmd_name, ... ) is needed anyway - 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 - Bluetooth low-power modes useful