Dean Camera
2b0d93c129
Correct misspellings in the Bluetooth demo code.
15 years ago
Dean Camera
6276d5f82a
Rename Bluetooth stack function parameters to clearly indicate what sort of 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.
15 years ago
Dean Camera
fbabecee66
Add RFCOMM service routine, to send pending configuration requests on RFCOMM 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.
15 years ago
Dean Camera
2eff731ecf
Add TEST RFCOMM command handler. Remove the RFCOMM channel UseUIFrame element, as the Bluetooth adaptions to RFCOMM only allow UIH frames to be used.
15 years ago
Dean Camera
559af02204
Use a bitmask instead of an array of bools in the SDP UUID List matching algorithm to reduce the compiled code size and stack used.
15 years ago
Dean Camera
e621ab33be
Added new pgm_read_ptr() macro to Common.h for reading of pointers out of flash memory space.
...
Added new SWAPENDIAN_16() and SWAPENDIAN_32() macros to Common.h for statically initialized variables at compile time.
15 years ago
Dean Camera
b522e35965
Rename the incomplete Bluetooth Host demo's ServiceDiscoveryProtocol.c/.h files to SDP.c/.h. Fix compile errors in RFCOMM.c/.h.
15 years ago
Dean Camera
9293de2491
Start implementation of RFCOMM decoding layer. Add new service initialize routines for each Bluetooth service - currently unused, but will eventually reset the service state of RFCOMM when a new connection is made.
15 years ago
Dean Camera
480da5aab6
Add PSM value to the RFCOMM service so that the host knows what PSM to use on channels when trying to access it.
15 years ago
Dean Camera
008e0e2e0a
Add start of RFCOMM service layer to the incomplete BluetoothHost demo.
...
Reduce the size of the attribute search list from 15 ranges to 8 to save RAM.
15 years ago
Dean Camera
23a94a7181
Fix byte ordering of UUIDs in the SDP server - host can now successfully pair to the Bluetooth device and discover the exposed Serial Port Profile RFCOMM service.
15 years ago
Dean Camera
c362709a1e
The SDP UUID lists should be searched and ALL UUIDs matched for a record to 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.
15 years ago
Dean Camera
32ab52a298
Remove incorrect Language ID offset attribute from the SDP server - client assumes 0x0100 offset for primary language anyway, and the format of the offset was incorrect anyway.
15 years ago
Dean Camera
0902ff9651
Document inline SDP data read/write functions.
15 years ago
Dean Camera
cb52e4371e
Fix the encoding of UUIDs in the SDP server so that they match the Bluetooth UUID format properly.
15 years ago
Dean Camera
e0ef5741d4
Move SDP service tables out into a new set of files, to make the SDP service code cleaner.
15 years ago
Dean Camera
e15838d4e2
Fix endianness issues in the Service Discovery Protocol service of the 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.
15 years ago
Dean Camera
4a13a5484a
Fixed RNDISEthernet demos crashing when calculating checksums for Ethernet/TCP packets of more than ~500 bytes due to an overflow in the checksum calculation loop (thanks to Kevin Malec).
...
Removed string Attributes from the Service Discovery Protocol code to minimise the potential points of failure while the base code is being debugged.
15 years ago
Dean Camera
8f3d4e69c3
Add UUID Class matching to the Service Discovery Protocol code - SDP is now correctly matched against the generic Service Discovery Class UUID.
15 years ago
Dean Camera
8cdb141eed
SDP Service improvements; fixed UUID for SDP service, added Service Discovery Server UUID, better documentation.
15 years ago
Dean Camera
a20a9086f7
Add comments and partial Doxygen documentation to the incomplete Bluetooth SDP handler code.
15 years ago
Dean Camera
58a0ee67a3
Oops - when adding a sequence header to the SDP response, the size value needs to be cleared, not the buffer pointer.
15 years ago
Dean Camera
92bebc457f
Add incomplete code to properly handle attribute responses to Service Discovery Protocol requests.
15 years ago
Dean Camera
83b5c916c6
Service Discovery ServiceSearchAttribute requests require the response to be grouped by UUID, so the response can't be generated as the attributes are read in. Buffer both UUIDs and Attributes instead and generate the response afterwards.
15 years ago
Dean Camera
3e515cdfa8
Short UUIDs are measured in bytes, not bits -- update Service Discovery Protocol code so that it can now correctly match against UUIDs in the service table.
15 years ago
Dean Camera
141d94fa98
More SDP code improvements - responses to ServiceSearchAttribute service discovery requests should now be valid, even if they do not currently return the device's services and service attributes.
...
Added more documentation to the incomplete Bluetooth stack code.
15 years ago
Dean Camera
78600e2485
Switch over the BluetoothHost demo's Service Discovery code to pass around more generic GUID arrays.
15 years ago
Dean Camera
f13bc35a19
Begin processing code for Service Discovery Protocol attributes.
15 years ago
Dean Camera
53ebb2f21a
Refactor Service Discovery Protocol code in the incomplete Bluetooth Host demo, so that the UUID list is compiled via a seperate function to allow for its re-use between different SDP request types.
15 years ago
Dean Camera
071e02c6b6
Add svn:eol-style property to source files, so that the line endings are correctly converted to the target system's native end of line style.
15 years ago
Dean Camera
5993e1efe7
Added ability to search by Channel PSM to the GetChannelData() function in the BluetoothHost demo.
...
Added new HCI states to properly initialize the bluetooth dongle and retrieve the local BDADDR.
Factored out Bluetooth state information into a new state structure for easy reference in the user application.
Added new StackInitialized() Bluetooth stack callback function.
15 years ago
Dean Camera
8252b4febd
Fixed HID Device Class Driver not allocating a temporary buffer when the host requests a report via the control endpoint and the user has set the PrevReportINBuffer driver configuration element to NULL (thanks to Lars Noschinski).
...
Clean up incomplete BluetoothHost debugging commands to use GCC extension to avoid NULL parameters when no formatting is required.
15 years ago
Dean Camera
d03d6513d0
Add start of a SDP service table, which will be linked to the Bluetooth SDP code.
15 years ago
Dean Camera
d92e9133d3
Make bluetooth SDP code correctly unpack the search UUIDs and parameters.
...
Minor documentation improvements.
15 years ago
Dean Camera
3eb81df998
Rename FunctionAttributes.h to Attributes.h, as some attributes are applicable to variables also. Add new ATTR_NOINIT attribute for global variables.
...
Add the beginnings of a SDP implentation to the incomplete BluetoothHost demo.
Add const attribute to the Mass Storage Host driver functions where it was applicable, but missing.
15 years ago
Dean Camera
e55f338663
Document the Bluetooth ACL layer. Remove unneeded parameters from the signalling command processing routines.
...
Change over the code so that the bluetooth packet data is read in by the stack rather than the user application, to make it more unform for sending/receiving, and so the library can handle incomming fragmentation in the future.
Start Service Discovery Protocol decoding and processing.
15 years ago
Dean Camera
7f9f97c792
Update copyright year to 2010.
16 years ago
Dean Camera
d4ca7fb44c
Fix MIT license language to make its intent clearer.
16 years ago
Dean Camera
df5500e81c
Added CDC_Device_Flush() command to the CDC Device mode class driver.
...
Minor updates to the unfinished SideShow demo for clarity.
Added unfinished MassStorageHost class driver demo.
16 years ago
Dean Camera
292fc9b65e
Move unfinished SideShow source files to nested Lib directory for clarity.
16 years ago
Dean Camera
bf041e8bbf
Add new Incomplete device subdirectory for work-in-progress demos. Add incomplete SideShow demo.
16 years ago
Dean Camera
b9b03aadb2
Move new Class Driver powered demos to a new ClassDriver subdirectory, re-add old low level demos to a LowLevel subdirectory.
16 years ago
Dean Camera
b7ef7f49c9
Moved out each demos' functionality library files (e.g. Ring Buffer library) to /Lib directories for a better directory structure.
16 years ago
Dean Camera
ed031c1df2
Seperated out OTG, Device and Host mode demos into seperate folders for clarity. Adjusted makefiles so that the path to the LUFA library can be set in one place.
16 years ago
Dean Camera
9991321321
Moved all source to the trunk directory.
16 years ago
Dean Camera
c1a1b6eeec
Moved all source to the trunk directory.
16 years ago