1
0
mirror of https://github.com/esp8266/Arduino.git synced 2025-04-22 21:23:07 +03:00

675 Commits

Author SHA1 Message Date
Ivan Grokhotkov
936265357b Merge branch 'jwatte-esp8266' into esp8266
* jwatte-esp8266:
  Fix UDP send to not temporarily use connect()
2015-05-12 19:18:19 +03:00
Ivan Grokhotkov
720142ef24 Merge branch 'esp8266' of https://github.com/jwatte/Arduino into jwatte-esp8266 2015-05-12 19:11:22 +03:00
Ivan Grokhotkov
bbefe60403 Merge branch 'Links2004-esp8266' into esp8266
* Links2004-esp8266:
  remove libc still not working!
  SD:  - optimize SPI usage 148% write speed (24kB/s -> 37kB/s) and 127% read speed (121kB/s -> 155kB/s) at 8MHz  - add clock frequency as parameter for begin(csPin, frequency)  - SD @80MHz write: 84kB/s read: 231kB/s
  Adafruit_ILI9341 +7% speed now at 327,45% total
  many speed optimizations in Adafruit_ILI9341 lib (3x times faster)
2015-05-12 19:10:24 +03:00
Ivan Grokhotkov
0474b33dc7 Merge branch 'esp8266' of https://github.com/Links2004/Arduino into Links2004-esp8266 2015-05-12 19:08:00 +03:00
Ivan Grokhotkov
139a3f0ad4 Merge branch 'ficeto-esp8266' into esp8266
* ficeto-esp8266: (28 commits)
  fix uart receive
  add method to check for clients without referencing them
  move discard_cb to unref
  add close and abort methods and enable disconnect callback
  removing timer aliases
  Add option to select SPI speed at SD::begin
  add pwm freq adjustment
  fix PWM and Timer1
  plaintext POST fixes and rework of the SD example
  fix binary file http upload
  some speed optimizations
  fix SPI run on system clock
  add esp8266_tcp_active_close.png image
  * miss to add the new files
  rework Adafruit_ILI9341 complete now uses the new SPI implementation tested with example graphicstest_esp8266
  increase SD Card SPI Speed
  fix SPI clock for SD library
  fix huge leak
  add proper POST support and more methods
  use a function to calculate best match clock register for SPI
  ...
2015-05-12 19:01:54 +03:00
Ivan Grokhotkov
89248032d6 Merge branch 'esp8266' of https://github.com/ficeto/Arduino into esp8266
Conflicts:
	hardware/esp8266com/esp8266/libraries/ESP8266WebServer/examples/SDWebServer/SDWebServer.ino
2015-05-12 18:58:10 +03:00
ficeto
669609f3d7 fix uart receive 2015-05-12 18:44:31 +03:00
Markus Sattler
dd7d34ef9d add more NULL prt checks in strtok_r
Conflicts:
	libraries/SD/src/SD.cpp
	libraries/SD/src/SD.h
2015-05-12 17:10:19 +02:00
Ivan Grokhotkov
699b06b875 implement async replies in mDNS library
No need to call mdns.update() from loop() any more.
2015-05-12 17:59:24 +03:00
Ivan Grokhotkov
25d814bdfb some UdpContext fixes, add rx callback support
Set udp destination address, port, and multicast TTL only on send.
Fix read method to return -1 if buffer is empty.
2015-05-12 17:52:22 +03:00
ficeto
bacc0b1f8b add method to check for clients without referencing them 2015-05-12 15:21:35 +03:00
ficeto
1707d3d036 move discard_cb to unref 2015-05-12 14:22:16 +03:00
ficeto
88c6ee418d add close and abort methods and enable disconnect callback 2015-05-12 13:58:05 +03:00
ficeto
4425e0921f removing timer aliases 2015-05-12 10:36:12 +03:00
ficeto
95007b229d Add option to select SPI speed at SD::begin 2015-05-11 22:29:02 +03:00
Markus Sattler
c31d99eabd remove libc still not working!
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-exit.o):(.literal+0x4): undefined reference to `_exit'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-exit.o): In function `exit':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdlib/../../../../../newlib/libc/stdlib/exit.c:65: undefined reference to `_exit'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-fopen.o):(.literal+0x0): undefined reference to `_open_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-fopen.o): In function `_fopen_r':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/fopen.c:141: undefined reference to `_open_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-freer.o):(.literal+0x14): undefined reference to `_sbrk_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-freer.o): In function `_malloc_trim_r':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdlib/../../../../../newlib/libc/stdlib/mallocr.c:3325: undefined reference to `_sbrk_r'
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdlib/../../../../../newlib/libc/stdlib/mallocr.c:3332: undefined reference to `_sbrk_r'
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdlib/../../../../../newlib/libc/stdlib/mallocr.c:3340: undefined reference to `_sbrk_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-fseeko.o):(.literal+0x10): undefined reference to `_fstat_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-fseeko.o): In function `_fseeko_r':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/fseeko.c:231: undefined reference to `_fstat_r'
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/fseeko.c:258: undefined reference to `_fstat_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-makebuf.o): In function `__smakebuf_r':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/makebuf.c:59: undefined reference to `_fstat_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-mallocr.o): In function `malloc_extend_top':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdlib/../../../../../newlib/libc/stdlib/mallocr.c:2165: undefined reference to `_sbrk_r'
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdlib/../../../../../newlib/libc/stdlib/mallocr.c:2202: undefined reference to `_sbrk_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o):(.literal+0x4): undefined reference to `_read_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o):(.literal+0x8): undefined reference to `_lseek_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o):(.literal+0xc): undefined reference to `_write_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o):(.literal+0x10): undefined reference to `_close_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o): In function `__sread':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/stdio.c:48: undefined reference to `_read_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o): In function `__swrite':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/stdio.c:89: undefined reference to `_lseek_r'
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/stdio.c:97: undefined reference to `_write_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o): In function `__sseek':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/stdio.c:117: undefined reference to `_lseek_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-stdio.o): In function `__sclose':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\stdio/../../../../../newlib/libc/stdio/stdio.c:135: undefined reference to `_close_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-sysclose.o): In function `close':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\syscalls/../../../../../newlib/libc/syscalls/sysclose.c:10: undefined reference to `_close_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-time.o):(.literal+0x0): undefined reference to `_gettimeofday_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(lib_a-time.o): In function `time':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\time/../../../../../newlib/libc/time/time.c:46: undefined reference to `_gettimeofday_r'
../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/lib\libc.a(isatty.o): In function `_isatty_r':
d:\Neo\Project\ESP8266\DevKit\build\compiler\dl\esp-newlib\build\xtensa-lx106-elf\newlib\libc\sys\xtensa/../../../../../../newlib/libc/sys/xtensa/isatty.c:13: undefined reference to `_fstat_r'
collect2.exe: error: ld returned 1 exit status
2015-05-11 19:10:32 +02:00
Markus Sattler
6c469b6f42 Merge remote-tracking branch 'remotes/ficeto/esp8266' into esp8266 2015-05-11 17:18:27 +02:00
ficeto
3ff208c3e9 add pwm freq adjustment 2015-05-11 14:28:37 +03:00
ficeto
b5d6951743 fix PWM and Timer1 2015-05-11 14:17:13 +03:00
ficeto
1f657fab73 plaintext POST fixes and rework of the SD example
Added a single file web editor/browser/uploader and all needed methods
to work with the files on the SD Card
2015-05-11 13:43:26 +03:00
Jon Watte
3049d48d56 Fix UDP send to not temporarily use connect() 2015-05-10 14:00:50 -07:00
ficeto
8fac77b0c3 Merge pull request #16 from esp8266/esp8266
pull latest changes
2015-05-10 18:57:05 +03:00
Markus Sattler
27f45a205a SD:
- optimize SPI usage 148% write speed (24kB/s -> 37kB/s) and 127% read speed (121kB/s -> 155kB/s) at 8MHz
 - add clock frequency as parameter for begin(csPin, frequency)
 - SD @80MHz write: 84kB/s read: 231kB/s

SPI add functions:
 - void write32(uint32_t data);
 - void write32(uint32_t data, bool msb);
 - void transferBytes(uint8_t * out, uint8_t * in, uint32_t size);

Adafruit_ILI9341:
 - code clean
2015-05-10 17:34:16 +02:00
Markus Sattler
539aa19305 Merge remote-tracking branch 'remotes/ficeto/esp8266' into esp8266 2015-05-10 09:35:14 +02:00
Markus Sattler
070f2b3a14 many speed optimizations in Adafruit_ILI9341 lib (3x times faster)
add new SPI function:

  void write(uint8_t data);
  void write16(uint16_t data);
  void write16(uint16_t data, bool msb);
  void writeBytes(uint8_t * data, uint32_t size);
  void writePattern(uint8_t * data, uint8_t size, uint32_t repeat);

Adafruit_ILI9341:
| Benchmark                 | Old (ms) | New (ms) | Speedup     |
| ------------------------- | -------- | -------- | ----------- |
| Screen fill 				| 1248369  | 278707   |  +347,91%   |
| Text 						| 86102    | 53785    |  +60,09%    |
| Lines 					| 825400   | 536374   |  +53,89%    |
| Horiz/Vert Lines 			| 101875   | 24653    |  +313,24%   |
| Rectangles (outline) 		| 65720    | 17295    |  +279,99%   |
| Rectangles (filled) 		| 2592250  | 579157   |  +347,59%   |
| Circles (filled) 			| 411475   | 179454   |  +129,29%   |
| Circles (outline) 		| 360002   | 233584   |  +54,12%    |
| Triangles (outline)		| 261772   | 170118   |  +53,88%    |
| Triangles (filled) 		| 866951   | 246237   |  +252,08%   |
| Rounded rects (outline) 	| 154131   | 81570    |  +88,96%    |
| Rounded rects (filled) 	| 2828112  | 660983   |  +327,86%   |
|                           |          |          |             |
| Total                     | 9802159  | 3061917  |  +220,13%   |
2015-05-09 16:19:32 +02:00
ficeto
7001086920 fix binary file http upload 2015-05-09 14:21:53 +03:00
Ivan Grokhotkov
5407b064b0 Merge pull request #206 from Links2004/esp8266
rework Adafruit_ILI9341 complete now work with the new SPI implementation
2015-05-08 22:45:23 +03:00
Ivan Grokhotkov
6317355049 Merge pull request #205 from ficeto/esp8266
Fix SPI Clocks for SD Library
2015-05-08 22:43:55 +03:00
Markus Sattler
dcc899a1b5 some speed optimizations 2015-05-08 15:33:48 +02:00
Markus Sattler
7c33efc3d8 fix SPI run on system clock 2015-05-08 15:30:27 +02:00
Markus Sattler
51b1daf643 add esp8266_tcp_active_close.png image 2015-05-08 15:04:45 +02:00
Markus Sattler
5cbcd1da3c rework Adafruit_ILI9341 complete now uses the new SPI implementation
tested with example graphicstest_esp8266

add missing define to SPI.h
2015-05-08 14:45:47 +02:00
ficeto
8ce762db16 increase SD Card SPI Speed 2015-05-08 13:22:49 +03:00
ficeto
85aac8af89 fix SPI clock for SD library 2015-05-08 11:44:45 +03:00
ficeto
0dc759990e Merge pull request #15 from esp8266/esp8266
pull latest changes
2015-05-08 11:19:38 +03:00
Ivan Grokhotkov
e1b8017762 Merge pull request #203 from ficeto/esp8266
add proper POST support and more methods
add proper POST support and more methods
2015-05-08 08:28:25 +03:00
Ivan Grokhotkov
7e15659c29 Merge pull request #200 from Makuna/esp8266
true noInterrupts() interrupts() support
2015-05-08 08:28:10 +03:00
Ivan Grokhotkov
5969f56f5e Merge pull request #199 from Links2004/esp8266
SPI improvement and bugfix
2015-05-08 08:27:49 +03:00
ficeto
7e0a104cb5 fix huge leak 2015-05-08 03:30:41 +03:00
ficeto
a924ba1336 add proper POST support and more methods
GET params are always added
plain POST is added to the GET arguments
Uploads are handled by separate handler
2015-05-08 02:45:03 +03:00
ficeto
e6bb6b3a0d Merge pull request #14 from esp8266/esp8266
pull latest changes
2015-05-08 02:19:52 +03:00
Markus Sattler
d7a88c3ea3 use a function to calculate best match clock register for SPI
TEST:

Frequency: 1000000  -> [0x009C1001] EQU: 0	 Pre: 39     N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 1000000
Frequency: 4000000  -> [0x00001001] EQU: 0	 Pre: 0	     N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 40000000
Frequency: 2000000  -> [0x00041001] EQU: 0	 Pre: 1	     N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 20000000
Frequency: 1600000  -> [0x00004002] EQU: 0	 Pre: 0	     N: 4	 H: 0	 L: 2	 - Back Calculated Frequency: 16000000
Frequency: 1610000  -> [0x00004002] EQU: 0	 Pre: 0	     N: 4	 H: 0	 L: 2	 - Back Calculated Frequency: 16000000
Frequency: 1000000  -> [0x000C1001] EQU: 0	 Pre: 3	     N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 10000000
Frequency: 8000000  -> [0x00101001] EQU: 0	 Pre: 4	     N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 8000000
Frequency: 5000000  -> [0x001C1001] EQU: 0	 Pre: 7	     N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 5000000
Frequency: 4000000  -> [0x00241001] EQU: 0	 Pre: 9	     N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 4000000
Frequency: 2000000  -> [0x004C1001] EQU: 0	 Pre: 19	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 2000000
Frequency: 1000000  -> [0x009C1001] EQU: 0	 Pre: 39	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 1000000
Frequency: 500000   -> [0x013C1001] EQU: 0	 Pre: 79	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 500000
Frequency: 250000   -> [0x027C1001] EQU: 0	 Pre: 159	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 250000
Frequency: 125000   -> [0x04FC1001] EQU: 0	 Pre: 319	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 125000
Frequency: 6666666  -> [0x00141001] EQU: 0	 Pre: 5	 	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 6666666
Frequency: 6000000  -> [0x00181001] EQU: 0	 Pre: 6	 	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 5714285
Frequency: 3000000  -> [0x00202001] EQU: 0	 Pre: 8	 	 N: 2	 H: 0	 L: 1	 - Back Calculated Frequency: 2962962
Frequency: 100	    -> [0x7FFFF020] EQU: 0	 Pre: 8191	 N: 63	 H: 0	 L: 32	 - Back Calculated Frequency: 152
Frequency: 125000   -> [0x04FC1001] EQU: 0	 Pre: 319	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 125000
Frequency: 16457    -> [0x25F81001] EQU: 0	 Pre: 2430	 N: 1	 H: 0	 L: 1	 - Back Calculated Frequency: 16454
2015-05-08 00:48:08 +02:00
Markus Sattler
49fc1980fe add back SPI_CLOCK_DIVx defines may needed by some library
Note:
better use SPI.setFrequency()
2015-05-07 22:16:51 +02:00
Ivan Grokhotkov
938c440998 Merge pull request #198 from ficeto/esp8266
fixes for sd server example
2015-05-07 23:13:30 +03:00
Michael Miller
9977276ba9 Merge pull request #1 from esp8266/esp8266
Get latest
2015-05-07 12:53:52 -07:00
Makuna
367962d89e refactored xt_disable_intterupts to accept level
due to the rsil requirement that the level be a constant, the method was
moved into a macro
2015-05-07 12:29:37 -07:00
Markus Sattler
7f4a10062b update README
add some docu and todo
2015-05-07 20:48:59 +02:00
Markus Sattler
ee5def9c8c add CPHA support for SPI
- tested with logic analyzer
2015-05-07 19:48:55 +02:00
Markus Sattler
163858dc44 fix use SPI.beginTransaction crash 2015-05-07 19:25:25 +02:00
ficeto
1cb920f713 fixes for sd server example 2015-05-07 16:42:10 +03:00