Commit Graph

547 Commits (210bd4db24e1551c40ee3089fe33ef2f890a5bf5)

Author SHA1 Message Date
Dean Camera 13ea700b35 Rename RFCOMM_GetFrameDataLength() to RFCOMM_GetVariableFieldValue() as it is multi-purpose, and modify it to move the buffer pointer itself rather than relying on the caller. 15 years ago
Dean Camera f5d079462d Changed the RFCOMM-specific ItemProtocolChannel_t type to a more generic ItemProtocol_8BitParam_t name, and added a new ItemProtocol_16BitParam_t to the SDP protocol type defines. 15 years ago
Dean Camera 3125fd5f4f Add RFCOMM channel configuration parsing and channel states to the incomplete BluetoothHost demo. 15 years ago
Dean Camera a14ece5f57 Change over Doxygen \note documentation to \pre where applicable. 15 years ago
Dean Camera 67bc625109 Split out the RFCOMM Control Channel command processing code into a seperate set of files for clarity. 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 637c7b01d0 More RFCOMM layer additions - begin to add multiplexer channel state variables. 15 years ago
Dean Camera 931ca42a6e Minor fixes to demos to add in some missing comments, printf() formatting. Make incomplete Bluetooth demo indicate connections visually via the board LEDs. 15 years ago
Dean Camera e930738247 Add stub RFCOMM command handlers. Move out RFCOMM frame length and data pointer calculations to the master RFCOMM frame reception routine, instead of inside each frame type handler function. 15 years ago
Dean Camera f92229697f More RFCOMM layer implementation - fix FCS calculation, add in start of control channel command processing. 15 years ago
Dean Camera 34e0fed4ca Make the RFCOMM_SendFrame() function correctly generate frames from the input parameters, change addressing to use the raw DLCI address plus flags. 15 years ago
Dean Camera 361e1ec1d8 Refactor out RFCOMM packet send code into a seperate function. 15 years ago
Dean Camera 7aec6cba1a Fix incorrect copyright attribution on the class-driver keyboard demos due to header copy-pasting. 15 years ago
Dean Camera 2dabb4e55f Add the svn:eol-style property onto new files which where missing it to ensure uniform line endings. 15 years ago
Dean Camera efbedcfa54 Document Bluetooth files with overall file Doxygen comments. Add more initial RFCOMM layer code to receive and respond to SABM packets. 15 years ago
Dean Camera 6d53cdba83 More documentation fixes. 15 years ago
Dean Camera fc92f9969c Minor documentation cleanups. 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 13d812a718 Delay needed in bluetooth code due to the send function not waiting for the pipe bank to become ready before writing. Add in a call to Pipe_WaitUntilReady() to fix the issue. 15 years ago
Dean Camera a405a9bdf8 Extra protocol value in the RFCOMM protocol is the channel number, not the PSM - update typedef name and size. 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. 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. 15 years ago
Dean Camera da51c1f974 Add L2CAP service attribute table. Fix up ProtocolDescriptorList attributes, and add macros for used UUIDs to reduce typing and make the code easier to read. 15 years ago
Dean Camera b98158bd50 Clean up the Service tables, add incomplete ProtocolDescriptorList attribute to the SDP 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 255d4ef858 Service Attribute SDP requests should have only one Data Element Sequence container around the single service's retrieved attributes, not two. 15 years ago
Dean Camera 0902ff9651 Document inline SDP data read/write functions. 15 years ago
Dean Camera 3f3fdb01a9 Much faster attribute range lookup - look through short list of attributes and compare to range, rather than looking up by each possible value within the range. 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 587f320333 Add Service Attribute request processing to the SDP server code. 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 c1daecf18b Fixed incorrect signature for the ATMEGA32U2 in the DFU bootloader (thanks to Axel Rohde). 15 years ago
Dean Camera 54e69dbee1 Switch to using the correct intptr_t type use where a pointer must be cast to an integer type. 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). 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 776485a6c5 Remove obsolete entry from the Doxygen configuration files. 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. 15 years ago
Dean Camera a883cf65dc Renamed CDC device class demos' ManagementEndpoint descriptor to NotificationEndpoint to more accurately indicate its purpose. 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 ee5ea4ce2b Fix nasty bug in USBInterrupt.c which would cause a lockup if the control endpoint was not selected at the point the USB endpoint interrupt fires when INTERRUPT_CONTROL_ENDPOINT is defined. 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 05ac59d0ee Add new ReportType parameter to the HID class driver device callback and host report sending routines. 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 e331b531c6 Change over instances of "make" in the makefiles to "$(MAKE)" to allow for the make tool to be overridden. 15 years ago
Dean Camera 27eb17cb93 Change over unix line-endings to dos line endings. 15 years ago
Dean Camera 9c8bd6ed9b Remove incorrect Abstract Call Management class specific descriptor from the CDC demos, bootloaders and projects. 15 years ago
Dean Camera 9cad677ebb The Audio_Device_IsSampleReceived() and Audio_Device_IsReadyForNextSample() functions are now inline, to reduce overhead. 15 years ago
Dean Camera 9e34144c9b Use puts_P() and printf_P() instead of the normal variants where possible in the Host mode Class Driver demos. 15 years ago
Dean Camera e977774d4e Relocate USBInterrupt.c/.h from the HighLevel USB driver directory to the LowLevel directory as it is hardware-dependent. 15 years ago
Dean Camera 59c4871f80 USB_Init() no longer calls sei() to enable global interrupts - this must now be done in the user application once all init code has run. 15 years ago
Dean Camera 5993e1efe7 Added ability to search by Channel PSM to the GetChannelData() function in the BluetoothHost demo. 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). 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. 15 years ago
Dean Camera fc8e4837a9 Add const keyword to the demo function parameters where possible. 15 years ago
Dean Camera 55db57e1ed Add bluetooth channel connection callback to the incomplete BluetoothHost demo. 15 years ago
Dean Camera 1f682ca2de 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. 15 years ago
Dean Camera 7b79325aa0 Removed two-step endpoint/pipe bank clear and switch sequence for smaller, faster endpoint/pipe code. 15 years ago
Dean Camera e55f338663 Document the Bluetooth ACL layer. Remove unneeded parameters from the signalling command processing routines. 15 years ago
Dean Camera 882ef0c983 Add some more documentation to the half-completed Bluetooth Host demo, fix the OpenChannel() command initialising the channel information structure to the wrong initial state once the CONNECTION REQUEST command has been sent to the remote device. 15 years ago
Dean Camera 8b0ec6c5ca Fix Bluetooth stack CONNECTION RESPONSE packets - for this command and this command only, the source/destination roles are switched. Reverse the Local/Remote channel ordering so that Windows mobile and other stacks which depend on valid channel values to connect. 15 years ago
Dean Camera 6cfa3b7db8 Add HCI debugging with verbosity control to the BluetoothHost demo. 15 years ago
Dean Camera 26421b38cd Fix up Bluetooth Demo's options processing on incoming channel configuration requests. 15 years ago
Dean Camera 28f1ac8117 Add LUFA-side channel open/close routines, add signalling handlers for the creation and configuration of channels from the local device to the remote device, to add to the existing remote to local channel capabilities. 15 years ago
Dean Camera 797130bddc Bluetooth demo can now create and maintain logical channels - need to determine why Windows machines refuse to connect. 15 years ago
Dean Camera 2a072db703 Make Bluetooth signalling handler routines use the generic Bluetooth_SendPacket() routine for their responses. Use a better method of controlling the debug output verbosity. 15 years ago
Dean Camera c77f136661 Add bidirectional channel configuration -- remote device is not ACKing sent Configuration Requests, needs further debugging. Implement Bluetooth spec's channel states. 15 years ago
Dean Camera b9c7d19615 Add packet reception and send routines to the ACL layer of the incomplete Bluetooth Host demo. 15 years ago
Dean Camera ee74b4948f Add information request/response signal handler to the Bluetooth Host demo. 15 years ago
Dean Camera 083d797aca Add Bluetooth signalling echo request/response handlers, disconnection request/response handlers. 15 years ago
Dean Camera fa1a092901 Add user callback function to the Bluetooth host demo to filter out connections from remote devices. Add in ability to reject connections based on their bluetooth device address. 15 years ago
Dean Camera fd96b28882 More improvements to the incomplete BluetoothHost demo - add Disconnection Event processing. 15 years ago
Dean Camera a2e6d54336 Massive cleanups to the incomplete BluetoothHost demo, to make the HCL layer code much easier to read, block less and work correctly. 15 years ago
Dean Camera 9257f4ab8e Add briefs for the library core structures. 15 years ago
Dean Camera 0557676013 Add file-level brief documentation. 15 years ago
Dean Camera ec19436d54 Add new LUFA logo by Ryo Yamauchi. 15 years ago
Dean Camera 74353374c3 All Class Driver Host mode demos now correctly set the board LEDs to READY once the enumeration process has completed. 15 years ago
Dean Camera f79f9abd28 Fixed compilation error in the AudioInput demos when MICROPHONE_BIASED_TO_HALF_RAIL is defined (thanks to C. Scott Ananian). 15 years ago
Dean Camera c58c53dba9 Added incomplete MIDIToneGenerator project. 15 years ago
Dean Camera 49b09a2042 Standardized the naming scheme given to configuration descriptor sub-elements in the Device mode demos, bootloaders and projects. 15 years ago
Dean Camera 6d256c5109 Fixed LowLevel MassStorage demo broken on the U2 AVRs due to double-banked endpoints. 15 years ago
Dean Camera 72527867f6 Remove redundant check in the software PDI programming code of the AVRISP project. 15 years ago
Dean Camera 9a5ae36a4f Software PDI mode breaks unless the software USART has 100 cycles between bits. 15 years ago
Dean Camera 39d56aeffe Fixed PDI programming mode in the AVRISP programmer project not exiting programming mode correctly (clear target Reset key twice, set /RESET pin to pullup). 15 years ago
Dean Camera 2b51944a4b Make sure the button report set masks use OR in all circumstances, to prevent user confusion. While the first set of the buttons report item can be a direct assignment, it is not immediately clear to new developers why this is the case. 15 years ago
Dean Camera 35a0fe9384 Fixed USB_GetHIDReportSize() returning the number of bits in the specified report instead of bytes. 15 years ago
Dean Camera 3ab0b3a027 Fix LowLevel Keyboard demo -- accidentally trying to dereference a uint8_t type in ProcessLEDReport(). 15 years ago
Dean Camera 7ae91099e9 Fix AVRISP-MKII clone project's TPI Chip Erase command processing - ensure erase location is the high byte in the given address space, check NVMBUSY for completion rather than the NVM Bus Enable bit. 15 years ago
Dean Camera 6a48efd3bd Split out LED report processing from the host into a seperate routine in the LowLevel KeyboardMouse device demo, to avoid duplicate code. 15 years ago
Dean Camera 0c5d6f5f97 Added Keyboard LED report masks (KEYBOARD_LED_*) to the HID class driver and demos. 15 years ago
Dean Camera 196724c62d Added keyboard modifier masks (HID_KEYBOARD_MODIFER_*) to the HID class driver and Keyboard demos. 15 years ago
Dean Camera 15f84bb8f5 New BOARD value option BOARD_NONE (equivelent to not specifying BOARD) which will remove all board hardware drivers which do not adversely affect the code operation (currently only the LEDs driver). 15 years ago
Dean Camera 77e86e7d82 Exlude the "INCLUDE_FROM_*" macros from the individual project's documentation. 15 years ago
Dean Camera 53eca61d02 Minor fixups to the documentation and preprocessor tokens. 15 years ago
Dean Camera 254a0c1ae8 Update driver INF files - change manufacturer name from the original template's name to the Four Walled Cubicle website. 15 years ago
Dean Camera e81a4c950f Removed the stream example code from the Low Level VirtualSerial demos, as they were buggy and only served to add clutter. 15 years ago
Dean Camera 5f776f4785 Fix up project documentation files' overview tables, so that multiple items occupy multiple lines in the same cell, rather than multiple cells. 15 years ago
Dean Camera db420853ce Add Webserver project Doxygen configuration file and overview document. 15 years ago
Dean Camera 431db89b00 Fixed CDC and RNDIS host demos and class drivers - bidirectional endpoints should use two seperate pipes, not one half-duplex pipe. 15 years ago
Dean Camera b68f7f1649 Added explicit ADC channel masks for the standard set of ADC channels, as the single-ended channel MUX masks are not equal to the channel number on some AVR models. Changed demos to use the new channel masks when using the ADC driver. 15 years ago
Dean Camera 03ee87b35a Fix up the incomplete Webserver project so that it integrates with the uIP stack correctly. Add simple HTTP webserver as a placeholder until FatFS can be integrated. 15 years ago
Dean Camera 60fd0ff418 Changed XPLAINBridge project to be both a USB to USART bridge and a PDI programmer, based on the state of a mode select pin. 15 years ago
Dean Camera 89e4d73289 Fixed incorrect interface values in the VirtualSerialMouse and KeyboardMouse demo class driver structures. 15 years ago
Dean Camera efb6c35778 Update Doxygen configuration files to the latest Doxygen version. 15 years ago
Dean Camera d97db1120b Added support to the MIDI Class drivers for packed data, where multiple MIDI events are packed into a single USB packet. Added new MIDI Class driver flush routines to override packing behaviour. 15 years ago
Dean Camera 6122ba93cf Fix MassStorageKeyboard demo USE_INTERNAL_SERIAL check being performed before the required library headers were included, causing a compilation error. 15 years ago
Dean Camera 58a39c6666 Clean up MassStorageKeyboard demo. 15 years ago
Dean Camera 7f9f97c792 Update copyright year to 2010. 15 years ago
Dean Camera 0ea819f781 Fix TemperatureDataLogger - sample tick timer wasn't being initialized in the correct CTC mode. 15 years ago
Dean Camera d4ca7fb44c Fix MIT license language to make its intent clearer. 15 years ago
Dean Camera 6648234157 Test with -Wextra, fix library warnings due to unused function parameters. 15 years ago
Dean Camera 3705330dd3 Use -pedantic compile time option to find and correct several minor code errors. 15 years ago
Dean Camera 7ace314cc1 Increase timeout of Mass Storage and Still Image host commands to 10 seconds (up from 5) to account for slow-processing devices. 15 years ago
Dean Camera 2281750b5f Make sure that USB_STREAM_TIMEOUT_MS is set in the MassStorageHost ClassDriver demo, so that slow devices don't time out the data pipe. Increase pipe timeout in both MassStorageHost demos to 5 seconds to account for the really slow devices. 15 years ago
Dean Camera 3757b1760f Fix newly renamed VirtualSerial demos' include filename references so that they compile. 15 years ago
Dean Camera cf22a744ec Additional file renames and modifications to change CDC demos to VirtualSerial. 15 years ago
Dean Camera 7a9b3d3641 Rename CDC demos to VirtualSerial. 15 years ago
Dean Camera c49bdcb7c9 Fixed Mass Storage Host Class driver and Low Level demo not clearing the error condition if an attached device returns a STALL to a GET MAX LUN request (thanks to Martin Luxen). 15 years ago
Dean Camera 2919aeeaab Fixed HID Parser not distributing the Usage Min and Usage Max values across an array of report items. 15 years ago
Dean Camera 1b2cd16976 Added CDC_Host_Flush() function to the CDC Host Class driver to flush sent data to the attached device. 15 years ago
Dean Camera 958d28d05d Better checking of whether a packet is received in the RNDISEthernetHost Class driver demo - show busy LED status while packets are being printed out. 15 years ago
Dean Camera 9ba8da7412 Make the RNDISEthernetHost Class driver demo print out incomming packets from the attached RNDIS device. 15 years ago
Dean Camera 2a28862dcc Make MIDI device demos also turn off the on board LEDs if MIDI Note On messages are sent with a velocity of zero, which some devices use instead of Note Off messages (thanks to Robin Green). 15 years ago
Dean Camera 5aa2b26261 Added new RNDIS Host class driver and the beginnings of a RNDISEthernetHost Class Driver demo. 15 years ago
Dean Camera ab602a8b48 Fix typo in the StillImageHost LowLevel demo, and the CDC Host Class Driver. 15 years ago
Dean Camera a04131cf04 Fix more Doxygen errors from missing parameter documentation. 15 years ago
Dean Camera 50f4a3b625 Fix build and Doxygen errors. 15 years ago
Dean Camera 8c6c27d88b Added new RNDISHost Host LowLevel demo. Fixed misnamed Pipe_SetPipeToken() macro for setting a pipe's direction. Fixed CDCHost failing on devices with bidirectional endpoints. 15 years ago
Dean Camera d3f11eb528 Make the StandaloneProgrammer project seamlessly read out drive contents from either an attached FAT formatted drive when in host mode, or the onboard FAT formatted dataflash when in device mode. 15 years ago
Dean Camera 702bec892d Fixed misnamed SI_Host_USBTask() and SI_Host_ConfigurePipes() functions. 15 years ago
Dean Camera 8b009bc113 Added new ReportType parameter to the HID Device Class driver CALLBACK_HID_Device_CreateHIDReport() callback to indicate the report type to generate. 15 years ago
Dean Camera c438d01f87 Fixed incorrect values for REPORT_ITEM_TYPE_* enum values causing corrupt data in the HID Host Parser. 15 years ago
Dean Camera aaa0bed556 The incomplete StandaloneProgrammer project now uses Host and Device Mass storage classes, so that program data can either be loaded onto the device's Dataflash storage, or read off an attached USB memory stick. 15 years ago
Dean Camera 6e867f7d9b Removed code to zero reports between two keyboard reports with differing number of pressed keys, as this relied on non-standard OS behaviour. 15 years ago
Dean Camera 6c38ca2890 Fixed Endpoint_Write_Control_Stream_* functions not sending a terminating IN when the given data length is zero. 15 years ago
Dean Camera 7ef58eef7a Fixed LowLevel Keyboard demo not saving the issued report only after it has been written to the endpoint. 15 years ago
Dean Camera d753512cca Fix doxygen documentation - doxygen was getting confused on the variable-length ATTR_NON_NULL_PTR_ARG() macro used on function prototypes and was generating many return types for several functions in the documentation (thanks to David Lyons). 15 years ago
Dean Camera 9b20114555 Make RNDISHost demo validate the set Packet Filter to ensure that it is being sent correctly. 15 years ago
Dean Camera 21cc9c9e19 Cleanups to the MassStorage Device demos, and the MassStorage Device Class driver. 15 years ago