1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-12-01 12:24:14 +01:00
Commit Graph

1558 Commits

Author SHA1 Message Date
Cristian Maglie
53fd24e8aa Updated sam core version to 1.6.5 2015-11-03 14:38:45 +01:00
Cristian Maglie
9b070aa90f Updated avr core version to 1.6.9 2015-11-03 11:34:03 +01:00
Cristian Maglie
a7a12037c7 [HID] Added return value to HID SendReport (sam core) 2015-10-30 13:23:46 +01:00
Cristian Maglie
21168e1b5d [PUSB] Fixed return value for HID_::SendReport 2015-10-30 13:00:33 +01:00
Nico
741d5dff9e [PHID] send data if report ID was sent successful
If the first sending was not successful it is better to abort. Then we get a return value of -1 (instead of -2 if the 2nd call will also fail) and we do not need to block even longer, with another timeout.
2015-10-30 12:58:14 +01:00
NicoHood
cf4d7e1ffb Added return value to HID SendReport 2015-10-30 12:58:14 +01:00
Cristian Maglie
d3e3b8b377 Merge branch 'sam-wire-repeated-starts' of https://github.com/sandeepmistry/Arduino 2015-10-29 21:18:11 +01:00
Sandeep Mistry
77179d78d0 Add support for repeated starts in slave mode
From the data sheet TXCOMP is only set after a stop or repeated start
and address change, but EOSACC is set for a stop or repeated start when
the address remains the same. This change removes the check for TXCOMP
when not idle, to support repeated starts for both RX and TX.
2015-10-29 16:15:52 -04:00
Sandeep Mistry
851efaefd7 Remove steps to disable pull ups as they are not needed
The Due has external pull-ups on the SDA0 and SCL0, and PIO_Configure
in Wire*_Init does not enable then.
2015-10-29 16:03:32 -04:00
Sandeep Mistry
fdef4f27fe Rebuild libsam 2015-10-29 16:03:32 -04:00
Sandeep Mistry
d655bd5af9 Add end callback for deinitialization on end 2015-10-29 16:03:32 -04:00
Sandeep Mistry
2737305f54 implement Wire.end() for SAM core
also moved common reset and disable code in libsam TWI_ConfigureMaster
and TWI_ConfigureSlave functions to new TWI_Disable function, which is
used in TwoWire::end()
2015-10-29 16:03:32 -04:00
Cristian Maglie
b01eda179a Print not aborting on write failure
See #3614
2015-10-26 12:00:47 +01:00
Cristian Maglie
9552cc6ce2 Merge branch 'arduinoGemmaInterrupts' of https://github.com/agdl/Arduino 2015-10-23 11:00:25 +02:00
Arturo Guadalupi
d52b5a87ba Gemma digitalPinToInterrupt support
Added support for Arduino Gemma as required in #3929
2015-10-23 10:44:02 +02:00
Arturo Guadalupi
e3351f6fb1 Ethernet digitalPinToInterrupt support
Added support for Arduino Ethernet as required in #3929
2015-10-23 10:16:43 +02:00
Sandeep Mistry
c71f5e9f88 check TWWC (Write Collision Flag) bit after setting TWDR
as suggested by @earlyprogrammer in #2173, to ensure TWDR value is set
if there is a write collision
2015-10-22 16:33:00 +02:00
Sandeep Mistry
48ff3a10ad release TWI bus right after stop or repeated start is condition
this resolves timing issues seen in #1477
2015-10-22 16:29:43 +02:00
Cristian Maglie
22dd1cbb99 Merge branch 'nativeUSB_serialNumber_due' of https://github.com/facchinm/Arduino into HEAD 2015-10-21 16:54:59 +02:00
Martino Facchin
775c82bbed SAM: add iSerial USB field 2015-10-21 16:16:52 +02:00
Cristian Maglie
c102995e92 Merge remote-tracking branch 'arduino/master' into HEAD 2015-10-21 15:53:59 +02:00
Martino Facchin
b945df9220 [USB] use plugged modules name to create iSerial field 2015-10-21 15:23:56 +02:00
NicoHood
9fe2023c28 [PHID] Fixes protocol on reenumeration 2015-10-12 18:05:34 +02:00
Martino Facchin
bf609ecc4c [USB] remove all warnings from SAM USB core 2015-10-12 14:43:24 +02:00
Martino Facchin
ddae105dc3 [HID] port to stable PluggableUSB API 2015-10-12 14:41:23 +02:00
Martino Facchin
b4541209cb adapt SAM core to PluggableUSB stable API 2015-10-12 14:41:05 +02:00
Cristian Maglie
a151349a01 [HID] renamed HIDDescriptorListNode to HIDSubDescriptor 2015-10-12 12:24:07 +02:00
Cristian Maglie
11440d3fd7 [PUSB] Renamed PUSBListNode to PluggableUSBModule 2015-10-12 12:14:07 +02:00
Cristian Maglie
80b79002fd [HID] made HIDDescriptorListNode.length constant 2015-10-12 11:59:08 +02:00
NicoHood
e69021550e [PHID] Added missing GET_IDLE Request 2015-10-11 14:39:36 +02:00
NicoHood
5e813b314b [PHID] Added some hints for further optional implementations 2015-10-10 13:11:31 +02:00
NicoHood
14ddc8b0bf Added official HID definitions
Since the HID library adds some general HID definitions and structs, it is very useful to also include this in a custom library.
If you dupe the information you have problems of redeclaration.
Having those defintions inside the official HID library is essential for a good working additional  HID API.
2015-10-10 12:49:45 +02:00
Nico
2cc3bb605b [PUSB] Minor Style change 2015-10-09 22:10:45 +02:00
Nico
79f5715c21 Remove unnecessary include
Its included by HID.h anyways.
2015-10-08 17:24:09 +02:00
Cristian Maglie
fb4f5066bf [HID] Improved checks in getDescriptor() method 2015-10-08 16:38:57 +02:00
NicoHood
05477fc85d [PUSB] Removed unnecessary endpoint and interface function 2015-10-07 20:39:50 +02:00
NicoHood
c8867462a8 [PHID] Added SetReport function
This commit just shows other that this option is available and not implemented.
You may use this to determine the Led Lights state of a keyboard or transmit data via RAWHID from the PC.

Quick usage guide:
int length = ((setup.wValueH << 8) | setup.wLength);
USB_RecvControl((uint8_t* data, USB_EP_SIZE); // Needs to be splitted into USB_EP_SIZE packets, not shown here. See HID Project.
2015-10-07 20:37:05 +02:00
NicoHood
0f9f63f2a5 [PUSB] Made getDescriptor() and setup() more flexible
Alternatively we can only pass the wIndex to getDescriptor but I suggest to just pass the pointer aka reference of the whole setup.
In guess (havent tested this) that this results in more or less the code size but its a) idential with the other functions and b) we late have more flexibility here.
The Code got a quick SerialKeyboard.ino test
2015-10-07 19:02:40 +02:00
NicoHood
6151972b74 [PUSB] Changed Interface + Endpoint to unsigned variables
The iterations in the for loop also use unsigned and the setup struct etc as well.
There was no change in HID required since we just init the inherited variables via constructor and the type is never mentioned.
2015-10-07 18:45:10 +02:00
Cristian Maglie
5b1b0330b2 [PUSB] renamed some parameters 2015-10-07 13:21:21 +02:00
NicoHood
8bc21f7e36 Small return value error check correction 2015-10-07 12:39:18 +02:00
NicoHood
7fdb0efc98 Removed not needed public statement for root node 2015-10-03 07:56:48 +02:00
Martino Facchin
65b8430fec [PUSB] Fix static initialization order fiasco
For details see:
https://isocpp.org/wiki/faq/ctors#static-init-order-on-first-use
2015-10-02 11:59:24 +02:00
Cristian Maglie
d13aadc7d5 [HID] removed HIDDescriptor field
The field is now built on-the-fly on the stack and sent over USB.
This change increase Flash usage and decrease SRAM usage:

before: 6114 / 241
after:  6152 / 216 (removed HIDDescriptor field)

delta:   +38 / -25

SRAM is a much more scarse resource and this change free up to
about 10% of the "base" usage.
2015-10-02 11:59:24 +02:00
Cristian Maglie
214b260a82 [HID] Code cleanup (no semantic changes) 2015-10-02 11:59:23 +02:00
Cristian Maglie
81aa7df093 [HID] removed unused modules_count field 2015-10-02 11:59:23 +02:00
Cristian Maglie
8a5ad75c50 [PUSB] Fixed checks on return values 2015-10-02 11:59:23 +02:00
Cristian Maglie
1851fcc23c [USB] Fixed some compiler warnings 2015-10-02 11:59:23 +02:00
Cristian Maglie
d1f0c6953a [PUSB] Fixed the correct number of endpoints 2015-10-02 11:59:23 +02:00
Cristian Maglie
e823ef0c16 [PUSB] Fixed check for available endpoints
The check for available slot in PluggableUSB is done on the endpoint
and not on the number of plugged modules.

The modulesCount field is no longer useful and it has been removed.
2015-10-02 11:59:23 +02:00