aboutsummaryrefslogtreecommitdiffstats
path: root/Demos/Host
Commit message (Collapse)AuthorAgeFilesLines
* Add missing clean_doxygen phony targets to the project makefiles.Dean Camera2010-07-1224-24/+48
|
* Correct misspellings in the Bluetooth demo code.Dean Camera2010-07-1110-45/+45
|
* Add more doxygen function documentation to the RFCOMM layer.Dean Camera2010-07-112-2/+29
|
* Oops - ACL layer Bluetooth_SendPacket() function should check and allow NULL ↵Dean Camera2010-07-113-18/+29
| | | | | | channels, since that indicates a control channel request. Fix up Doxgen documentation for the Bluetooth stack code.
* Rename Bluetooth stack function parameters to clearly indicate what sort of ↵Dean Camera2010-07-1112-145/+153
| | | | | | | | Bluetooth channel (ACL, RFCOMM) is required for each parameter, to make the code easier to read. Add a new RFCOMM_ChannelSignalsReceived() Bluetooth stack callback from the RFCOMM layer for when the remote device sends new terminal control signals. Fix RFCOMM_SendData() not aborting correctly when the requested RFCOMM channel is not found.
* Add a new RFCOMM_ChannelOpened() callback event for when logical RFCOMM ↵Dean Camera2010-07-083-12/+38
| | | | channels are opened in the BluetoothHost demo. Make the demo echo back sent characters to the remote device.
* Add a new RFCOMM service callback for when new data has been received on a ↵Dean Camera2010-07-083-5/+18
| | | | valid RFCOMM channel.
* Move out Bluetooth stack callback functions to a seperate ↵Dean Camera2010-07-087-113/+236
| | | | BluetoothEvents.c/.h set of files for clarity in the Incomplete BluetoothHost demo. Add a new stack callback for opened ACL channels, make the demo save the RFCOMM channel when opened so that it does not have to search for it on each iteration of the main program loop.
* Added new Drivers/USB/LowLevel/Device.c file to house Device mode specific ↵Dean Camera2010-07-0224-0/+24
| | | | | | functions that are more complicated than simple macros. Moved USB_Device_SendRemoteWakeup() to the new Device.c source file and corrected it to unfreeze and restart the USB controller clock before issuing a Remote Wakeup request. Removed the USB_Device_IsRemoteWakeupSent() and USB_Device_IsUSBSuspended() macros, as they are now obsolete.
* Move out RFCOMM channel structure init code to a seperate routine, to save ↵Dean Camera2010-07-025-47/+62
| | | | on compiled code space and to prevent copy-paste errors.
* Add RFCOMM service routine, to send pending configuration requests on RFCOMM ↵Dean Camera2010-06-297-92/+163
| | | | | | | | | | channels. Add in RFCOMM channel config flags, to determine which configuration commands have been sent and received. Add a new RFCOMM_SendChannelSignals() function to transmit a change in V24 terminal handshake lines to the receiving device. Prevent SABM packets sent to the control DLCI in the RFCOMM layer from creating a new channel entry, as the control DLCI does not have connection data associated with it. Fix up MSC control packet handling so that received responses can be acknowledged correctly, so that the RFCOMM layer can record when the receiving device has ACKed a sent change in V24 terminal handshake lines.
* Make Bluetooth ACL channel searches skip over closed (invalid) channels. ↵Dean Camera2010-06-264-12/+18
| | | | RFCOMM channels are considered invalid when the channel state is closed, not when the DLCI is zero - fix incorrect code.
* Add default "all" makefile targets to the demo tree makefiles.Dean Camera2010-06-251-0/+2
|
* Split RFCOMM channel signals into Remote and Local pairs. Use memcpy() to ↵Dean Camera2010-06-234-31/+44
| | | | | | copy over data from the command parameters to the RFCOMM response parameters. Ensure that only the valid parameter bytes are sent back in response to MSC commands.
* Add TEST RFCOMM command handler. Remove the RFCOMM channel UseUIFrame ↵Dean Camera2010-06-236-12/+28
| | | | element, as the Bluetooth adaptions to RFCOMM only allow UIH frames to be used.
* Use a bitmask instead of an array of bools in the SDP UUID List matching ↵Dean Camera2010-06-222-18/+17
| | | | algorithm to reduce the compiled code size and stack used.
* Added new pgm_read_ptr() macro to Common.h for reading of pointers out of ↵Dean Camera2010-06-223-31/+4
| | | | | | flash memory space. Added new SWAPENDIAN_16() and SWAPENDIAN_32() macros to Common.h for statically initialized variables at compile time.
* Rename RFCOMM_GetFrameDataLength() to RFCOMM_GetVariableFieldValue() as it ↵Dean Camera2010-06-154-35/+100
| | | | | | | | is multi-purpose, and modify it to move the buffer pointer itself rather than relying on the caller. Make RFCOMM_GetChannelData() return NULL if the required channel DLCI is found, but the channel is closed. Add modem signals (BREAK, DCD, etc.) to the channel state array, and add in a handler for the Modem Status RFCOMM control command.
* Changed the RFCOMM-specific ItemProtocolChannel_t type to a more generic ↵Dean Camera2010-06-152-9/+24
| | | | ItemProtocol_8BitParam_t name, and added a new ItemProtocol_16BitParam_t to the SDP protocol type defines.
* Add RFCOMM channel configuration parsing and channel states to the ↵Dean Camera2010-06-156-86/+188
| | | | | | incomplete BluetoothHost demo. Add missing BT_* prefix to the Bluetooth stack's channel state enum values.
* Split out the RFCOMM Control Channel command processing code into a seperate ↵Dean Camera2010-06-135-158/+292
| | | | set of files for clarity.
* Rename the incomplete Bluetooth Host demo's ServiceDiscoveryProtocol.c/.h ↵Dean Camera2010-06-137-14/+15
| | | | files to SDP.c/.h. Fix compile errors in RFCOMM.c/.h.
* More RFCOMM layer additions - begin to add multiplexer channel state variables.Dean Camera2010-06-132-7/+63
|
* Minor fixes to demos to add in some missing comments, printf() formatting. ↵Dean Camera2010-06-125-5/+14
| | | | Make incomplete Bluetooth demo indicate connections visually via the board LEDs.
* Add stub RFCOMM command handlers. Move out RFCOMM frame length and data ↵Dean Camera2010-06-072-44/+103
| | | | pointer calculations to the master RFCOMM frame reception routine, instead of inside each frame type handler function.
* More RFCOMM layer implementation - fix FCS calculation, add in start of ↵Dean Camera2010-06-072-50/+72
| | | | control channel command processing.
* Make the RFCOMM_SendFrame() function correctly generate frames from the ↵Dean Camera2010-06-073-16/+37
| | | | input parameters, change addressing to use the raw DLCI address plus flags.
* Refactor out RFCOMM packet send code into a seperate function.Dean Camera2010-06-062-28/+38
|
* Add the svn:eol-style property onto new files which where missing it to ↵Dean Camera2010-06-064-639/+639
| | | | ensure uniform line endings.
* Document Bluetooth files with overall file Doxygen comments. Add more ↵Dean Camera2010-06-047-23/+133
| | | | initial RFCOMM layer code to receive and respond to SABM packets.
* More documentation fixes.Dean Camera2010-06-0318-19/+20
|
* Minor documentation cleanups.Dean Camera2010-06-0340-154/+194
|
* Start implementation of RFCOMM decoding layer. Add new service initialize ↵Dean Camera2010-06-035-1/+111
| | | | routines for each Bluetooth service - currently unused, but will eventually reset the service state of RFCOMM when a new connection is made.
* Delay needed in bluetooth code due to the send function not waiting for the ↵Dean Camera2010-06-031-4/+3
| | | | pipe bank to become ready before writing. Add in a call to Pipe_WaitUntilReady() to fix the issue.
* Extra protocol value in the RFCOMM protocol is the channel number, not the ↵Dean Camera2010-06-034-15/+20
| | | | | | PSM - update typedef name and size. Add delay to the Connection Request signal processing routine - without this, the host will not create the RFCOMM channel correctly. Need to investigate why this delay is needed.
* Add PSM value to the RFCOMM service so that the host knows what PSM to use ↵Dean Camera2010-06-036-56/+57
| | | | on channels when trying to access it.
* Add start of RFCOMM service layer to the incomplete BluetoothHost demo.Dean Camera2010-06-039-14/+118
| | | | Reduce the size of the attribute search list from 15 ranges to 8 to save RAM.
* Fix byte ordering of UUIDs in the SDP server - host can now successfully ↵Dean Camera2010-06-024-54/+91
| | | | pair to the Bluetooth device and discover the exposed Serial Port Profile RFCOMM service.
* The SDP UUID lists should be searched and ALL UUIDs matched for a record to ↵Dean Camera2010-06-024-252/+158
| | | | | | | | be retrieved, not partial matches. Change the SDP code so that the entire list must be matched against a service attribute table's contents before it is returned. Change matching algorithm so that it recursively searches through the entire attribute table, and not just pre-specified sequence attributes. Add browse lists and proper descriptions to the Serial Port service.
* Add L2CAP service attribute table. Fix up ProtocolDescriptorList attributes, ↵Dean Camera2010-06-023-37/+138
| | | | and add macros for used UUIDs to reduce typing and make the code easier to read.
* Clean up the Service tables, add incomplete ProtocolDescriptorList attribute ↵Dean Camera2010-06-012-52/+87
| | | | to the SDP service.
* Remove incorrect Language ID offset attribute from the SDP server - client ↵Dean Camera2010-06-014-29/+9
| | | | assumes 0x0100 offset for primary language anyway, and the format of the offset was incorrect anyway.
* Service Attribute SDP requests should have only one Data Element Sequence ↵Dean Camera2010-06-011-23/+17
| | | | container around the single service's retrieved attributes, not two.
* Document inline SDP data read/write functions.Dean Camera2010-06-012-33/+67
|
* Much faster attribute range lookup - look through short list of attributes ↵Dean Camera2010-06-013-54/+71
| | | | | | and compare to range, rather than looking up by each possible value within the range. Cleanups to SDP code. Add missing RFCOMM language base ID offset attribute. Fix incorrect definition of the SWAPENDIAN_32() macro.
* Fix the encoding of UUIDs in the SDP server so that they match the Bluetooth ↵Dean Camera2010-06-014-112/+161
| | | | UUID format properly.
* Move SDP service tables out into a new set of files, to make the SDP service ↵Dean Camera2010-06-019-211/+319
| | | | code cleaner.
* Add Service Attribute request processing to the SDP server code.Dean Camera2010-06-011-1/+100
|
* Fix endianness issues in the Service Discovery Protocol service of the ↵Dean Camera2010-05-313-47/+173
| | | | incomplete Bluetooth Host demo. Host can now correctly retrieve specific services, however Windows does not appear to be sending the appropriate generic browse class IDs needed to report the virtual serial service.
* Fixed incorrect signature for the ATMEGA32U2 in the DFU bootloader (thanks ↵Dean Camera2010-05-292-14/+97
| | | | | | to Axel Rohde). Partial fix to the Bluetooth SDP code - data should be encoded in big endian, not little endian.