Commit Graph

547 Commits

Author SHA1 Message Date
Nico 9c4499117c Increased 32u4 maximum pin number 2015-10-23 10:41:56 +02:00
NicoHood a523e11dd9 Added TXLed to Leonardo pin definition file 2015-08-15 15:50:57 +02:00
Reilly Grant 3ad8a3278e Fix links to 3rd party hardware specification.
The number of hyphens in this URL has apparently changed.
2015-07-31 15:54:22 -07:00
Martino Facchin 9c5c82bd0f rework HID-based libraries and add Due fallback 2015-07-16 13:13:53 +02:00
Martino Facchin 3ee69bc21c allow HID submodules to create runtime descriptors
with this PR you can add

\#include Keyboard.h
\#include Mouse.h
\#include HID.h

in the top of the sketch and you will expose a Mouse+Keyboard

From the library pow, simply add

static HID_Descriptor cb = {
	.length = sizeof(_hidReportDescriptor),
	.descriptor = _hidReportDescriptor,
};
static HIDDescriptorListNode node(&cb);
HID.AppendDescriptor(&node);

in the class' constructor and you are done!
2015-07-16 13:13:52 +02:00
Martino Facchin a83da2c299 fix pluggableUSB linked list 2015-07-16 13:13:52 +02:00
Martino Facchin f2973ba389 save RAM content overridden by bootloader magic
and restore it in case of aborted reboot
use RAMEND-1 as suggested by @yyyc514 in PR #2474

of course it's not a real solution but we cannot force everyone to update the bootloader using an external programmer
2015-07-16 13:13:52 +02:00
Martino Facchin 1c7d0e15e2 rework HID class functions scopes 2015-07-16 13:13:52 +02:00
Martino Facchin 512e369e80 rename Setup typedef struct to USBSetup
was really too common
2015-07-16 13:13:52 +02:00
Martino Facchin d2515993d5 fix HID headers 2015-07-16 13:13:51 +02:00
Martino Facchin 880b0468fe fix HID descriptors bigger than 127 bytes 2015-07-16 13:13:51 +02:00
Martino Facchin 05f8a397a4 Add support for waking up a host via USB HID
this is a rework of commit fbcf94801b8bba7f1c8c79cc7ae402b6b9dbb2d3
2015-07-16 13:13:51 +02:00
Martino Facchin cc9a80b7a6 move HID library to AVR specific location 2015-07-16 13:13:51 +02:00
Martino Facchin a6d9868f82 remove setupUSB weak hook and replace with global constructors
thanks @matthijskooijman
2015-07-16 13:13:49 +02:00
Martino Facchin fa573da910 rework PUSBCallbacks initialization 2015-07-16 13:13:39 +02:00
Martino Facchin c4c2b15050 remove 3 endpoints to match at32u4 limit 2015-07-16 13:12:15 +02:00
Martino Facchin 1e08066640 add numInterfaces field to PUSBCallbacks 2015-07-16 13:12:15 +02:00
Martino Facchin d13b52085e implement PUSB modules as linked list 2015-07-16 13:12:14 +02:00
Martino Facchin d1f15236ee remove useless variables 2015-07-16 13:12:14 +02:00
Martino Facchin 32dd3a630b make CDC function non removable 2015-07-16 13:12:14 +02:00
Martino Facchin fdc0c84470 add weak setupUSB() hook
override this function to insert additional USB endpoints
2015-07-16 13:12:14 +02:00
Martino Facchin 29239164b5 remove useless variable 2015-07-16 13:12:14 +02:00
Martino Facchin f7631cdee9 add PluggableUSB module 2015-07-16 13:12:14 +02:00
Martino Facchin b5cc45b17d move _initEndpoints from PROGMEM to RAM 2015-07-16 13:12:14 +02:00
Martino Facchin 6a508b6088 Use generic composite device descriptor 2015-07-16 13:12:13 +02:00
Martino Facchin 8282c2734e Move EP defines to header 2015-07-16 13:12:13 +02:00
Martino Facchin 3750b26d29 Remove HID core library 2015-07-16 13:12:13 +02:00
Matthijs Kooijman 89a26dbbb2 Enable C11 support
This uses the gnu11 standard, which is C11 with GNU extensions.
Previously, gnu89 was being used, which is pretty ancient by now. C99
brings some important improvements, some of which were already available
and used even without this option. C11 is more recent and brings more
minor improvements. Most notable feature is the static_assert statement,
allowing checking invariants at compiletime using the full C
expressions.
2015-07-16 13:06:10 +02:00
Matthijs Kooijman c6750aa1a1 Check for __cplusplus >= 201103L as well as __GXX_EXPERIMENTAL_CXX0X__
Gcc 4.8 defines __cplusplus as 201103L, so we can check for that now. It
still also defines __GXX_EXPERIMENTAL_CXX0X__, but this could help on
other compilers, or if gcc ever decides to stop defining the
experimental macro.
2015-07-16 13:06:10 +02:00
Matthijs Kooijman 221cb1d125 Enable C++11 support
This uses the gnu++11 standard, which is C++11 with GNU extensions.
C++11 should be full compatible with the previously used C++98
standards, so all pre-existing sketches should continue to work.
2015-07-16 13:06:09 +02:00
Matthijs Kooijman 21bf0219b5 Explicitely specify C and C++ standards to use
This does not change anything, it just makes the defaults explicit.
2015-07-16 13:06:09 +02:00
Martyn Ranyard 438eab123a Bootloaders: wrong #ifdefs, should be defined() not just tested (i.e. noteq 0)
Close #126
2015-07-14 16:16:31 +02:00
Martyn Ranyard 37ba6bb74b Bootloaders: adds support for 328-nonp chips 2015-07-14 12:55:22 +02:00
Martyn Ranyard b8b1075dd0 -O2 in new avr-gcc makes too big a bootloader to fit on 328(and 328p) 2015-07-14 12:37:36 +02:00
Martyn Ranyard a6ef9d48d1 Fixed EEPE flag check.
Here, using the flag itself makes the bootloader build where it currently does not for the 328 amongst others
2015-07-14 12:28:13 +02:00
Federico Fissore b016b9de77 Yun bootloader without blink 2015-07-07 17:15:42 +02:00
Federico Fissore e883de8673 Examples: mass code format. See example_formatter.conf 2015-07-06 15:19:05 +02:00
Matthew Lowe 61b20ce497 Support for repeated starts added to SAM Wire library
Additional interface method ported to avr for compatibility
Fix issue #2428.
2015-07-03 16:59:30 +02:00
Federico Fissore ebe8f65f65 Removed a handful of SVN expansion keywords. See #277 2015-07-03 10:38:07 +02:00
Federico Fissore 5a933f0c98 Fixed missing "sketch" folders in some paths of both AVR and SAM cores 2015-06-29 16:10:54 +02:00
Federico Fissore a4034ed2b5 Compiler: sketch files get compiled into "sketch" 2015-06-29 15:11:45 +02:00
Matthijs Kooijman 4bb8c091ea Warn about increasing HardwareSerial buffers to > 256
Properly supporting bigger buffers need better atomicity code, which
isn't implemented yet. Until it is, best to add a warning. See #2405.
2015-06-18 16:36:07 +02:00
Matthijs Kooijman bd58312052 Support the Atmel STK500 development board for ISP 2015-06-05 18:43:25 +02:00
ziotibia81 35d3a10bb1 Added comment about Bus Pirate 2015-06-05 18:43:23 +02:00
ziotibia81 707aa34ee6 Added support for Dangerous Prototypes Bus Pirate as ISP
Close #2385
2015-06-05 18:43:12 +02:00
Fede85 d9774f27c9 add Arduino Gemma Bootloader source files 2015-06-01 20:00:54 +02:00
Martino Facchin 409ec76242 Add a Stream::find(char) method 2015-06-01 14:06:32 +00:00
Cristian Maglie 34b6872ff1 Fixed unused argument warning 2015-05-30 15:19:44 +02:00
Cristian Maglie 860a9ad815 Fixed unused variables warnings and indentation 2015-05-29 20:02:50 +02:00
chromhelm 9bf0f11e51 Saving some bytes in HardwareSerial::write 2015-05-29 18:12:24 +02:00