Commit graph

237 commits

Author SHA1 Message Date
Brian Schwind
8b5ee93b55 Add a TSL4531 driver and example 2017-03-22 01:36:30 +09:00
Zaltora
813477aa8a I2c optimization and features (#321)
* custom delay
* Update comment
* add bus control status, add some missing include & fixed display output on sh1104 (#319)
* add some missing include
* Fixed display on SH1106
* Fix comment, add force sytem, rework flag, 16 bits data transfert
* Update all library with new I2C API
* custom delay
* Update comment, add bus control status
* fix i2c read + fix ds3231 temp + fix ssd1306 send
2017-03-21 11:41:47 +05:00
UncleRus
9300729533 FatFS update to R0.12c 2017-03-15 21:08:44 +05:00
funnydog
65a0c95b13 extras/sntp: fix an off-by-one bug in sntp_set_servers()
The function sntp_set_servers() duplicates the strings supplied in the
server_url[] array into new strings but forgets to allocate the extra
byte needed for the \0 terminator for each string.

Fix the problem by using strdup(), which allocates the right amount of
memory and copies the string at once.
2017-03-14 20:32:51 +01:00
mr-nice
6b0547b963 Softuart (#307)
* extras/softuart: support for multiple UARTs, dynamic RX/TX pins
2017-03-06 23:28:20 +06:00
Zaltora
fda5d0b942 Crc fix and update (#347)
Update crc example API and config.
2017-02-27 22:35:56 +06:00
Zaltora
f51a2109b1 CRC library (#339)
* Crc initial example
* Update example and fix submodule
2017-02-22 01:44:03 +06:00
Milosch Meriac
398ed46776 Add BearSSL extra (#340)
Add BearSSL extra + http_get example, TLS server example
2017-02-15 17:44:11 +06:00
UncleRus
87b4befd87 MAX7219/MAX7221 dirver + example 2017-02-09 03:31:51 +05:00
lujji
3b5397f2a4 added support for large WebSocket frames 2017-02-03 07:33:27 +00:00
lujji
bce2139f06 added WebSockets (#331) 2017-02-02 12:17:53 +06:00
lujji
f64935eb1d HTTP server (#324)
extras/httpd and http_server example
2017-01-27 14:38:01 +06:00
Tuan PM
ebfbc1144c Process recursive folder for spiffs images (#320)
* Process rercursive folder for spiffs images

* Flat file name from the directory structure

* change method to find '/' as the suggestion of @sheinz

* remove unused variable
2017-01-12 14:57:50 +02:00
Tuan PM
2b915c11c7 add some missing include & fixed display output on sh1104 (#319)
* add some missing include

* Fixed display on SH1106
2017-01-03 00:40:54 +02:00
Zaltora
5eae1664e5 Ina3221 (#318)
INA3221 driver + example
2016-12-29 19:45:25 +05:00
Zaltora
14c8ff57ca SPI3 support ssd1306 (#309)
SPI3 support, SH1106 port
2016-12-29 19:42:43 +05:00
UncleRus
b675ae6f29 Code style fixes for MS5611 2016-12-24 22:26:48 +05:00
mr-nice
34d783a289 Feature/ms561101ba03 (#308)
Driver for the ms561101ba03 barometric pressure sensor
2016-12-24 22:08:42 +05:00
Ruslan V. Uss
44124409e4 Merge pull request #315 from UncleRus/pca9685
Driver for PCA9685 + example
2016-12-21 10:38:00 +05:00
otopetrik
8f5d49de81 Allow changing write function of stdout (#304)
* Allow changing write function of stdout.

Required for stdout redirection.
Works on blocks, not chars - does _not_ use sdk_os_putc !
Should work even when linking with SPIFFS.
2016-12-19 20:55:26 +05:00
UncleRus
e96fb4242e Driver for PCA9685 + example 2016-12-19 05:53:07 +05:00
UncleRus
dc9b6a2988 Fix #313 2016-12-17 21:00:37 +05:00
Zaltora
7432c019f7 ssd1306 more functions (#310)
SSD1306 2D drawing/text functions, new example, builtin fonts support
2016-12-13 19:42:23 +06:00
Ruslan V. Uss
53f85d0a2c Merge pull request #292 from UncleRus/extras/ads1115
ADS1113/ADS1114/ADS1115 I2C ADC driver + example
2016-11-29 11:37:50 +06:00
Ruslan V. Uss
b807eefeaf SSD1306 OLED Display driver refactored (#290)
* SSD1306 OLED Display driver SPI refactored:
- SPI connection support
- different display sizes support

* I2C address added to device descriptor

* Small fix
2016-11-29 00:57:22 +02:00
sheinz
3ea18e74da ds18b20 fix for temperature below zero 2016-11-25 21:42:50 +02:00
Ruslan V. Uss
e7e6df6358 HTTP parser intergation (#263)
* HTTP parser intergation

* include path fixed
2016-11-23 17:58:02 +02:00
Zaltora
0d9094e443 Bmp280 option (#220)
* bmp280 more options
add option to user for temp oversampling and possibility to skipp a specific measure

* Update bmp280.h

* quick fix oups

* less redundant terms
2016-11-23 17:16:03 +02:00
UncleRus
690a4793a6 ADS1113/ADS1114/ADS1115 I2C DAC driver + example 2016-11-22 20:10:03 +05:00
UncleRus
16b38f94b0 Driver + example for MCP4725 12-bit I2C DAC 2016-11-21 21:28:08 +05:00
Our Air Quality
bc50c7c2fc open_esplibs: add a skeleton for code in more libraries. (#266) 2016-11-12 20:54:24 +02:00
Ruslan V. Uss
99628cf314 DS1307 set month & weekday fix (#264) 2016-11-05 12:12:47 +02:00
Ruslan V. Uss
4f7ddd09f8 DS1302 RTC driver (#258) 2016-11-05 12:12:16 +02:00
Our Air Quality
a5cc728079 FreeRTOS type updates. (#261) 2016-11-05 12:04:03 +02:00
Ruslan V. Uss
4c84b64566 HD44780 documentation (#262) 2016-11-03 12:01:18 +02:00
sheinz
e2e6f35288 Fix spiff and stdin_uart_interrupt overiding the same read function (#249)
* Fix spiff and stdin_uart_interrupt overiding the same read function

* Make strong function defninition replace a weak one
2016-11-01 17:14:34 +02:00
Ruslan V. Uss
98de5e573a RTC drivers fix (#259) 2016-11-01 11:40:19 +02:00
DanielCerejo
8ef476c71f initialize dhcpserver_task_handle = NULL (#257)
corrert error printf "OTA TFTP" to "DHCP Server Error"
2016-10-30 11:26:29 +02:00
Ruslan V. Uss
5a14ab31e4 DS18x20: DS18S20 support, bugfixes (#255) 2016-10-28 15:29:47 +03:00
urx
5b12ba54dc Driver and example for SSD1306 128x64 I2C display (#254) 2016-10-28 15:08:37 +03:00
Ruslan V. Uss
e71919410d Add mkspiffs binary to .gitignore (#256) 2016-10-27 11:12:27 +03:00
Ruslan V. Uss
2ab9beb946 Extras/DHT improvements: makefile fix, replace DHT_TYPE macro by param (#252) 2016-10-26 16:41:08 +03:00
Ruslan V. Uss
574f944fbb Driver for HD44780 LCDs (#246)
Driver for HD44780 LCDs connected directly to GPIO / to I2C by PCF8574-like GPIO expanders (#246)
2016-10-26 16:21:55 +03:00
OurAirQuality
7bab80c33d FreeRTOS v9.0.0 upgrade 2016-10-25 23:35:51 +11:00
sheinz
8840eb0411 Merge pull request #250 from UncleRus/extras/cpp_fix
Make headers in extras more cpp friendly
2016-10-24 23:41:42 +03:00
Ruslan V. Uss
f1d44f5cbe FatFs integration (SDIO backend) (#242) 2016-10-24 22:30:51 +03:00
UncleRus
57cb9b925c Make headers in extras more cpp friendly 2016-10-24 18:13:17 +05:00
Ruslan V. Uss
2994a566a6 Driver for SD/MMC cards (#239)
* Driver for SD/MMC cards

* SDIO: read_register() bug fixed, schematics resized
2016-10-20 10:03:05 +03:00
rus
4e7362f2d4 HMC5883L driver + example 2016-10-13 14:59:52 +05:00
sheinz
0a8c61ffb7 Merge pull request #235 from UncleRus/extras/ultrasonic
Driver for ultrasonic range meters + example
2016-10-13 00:50:55 +03:00
sheinz
36759a2da5 Merge pull request #232 from UncleRus/extras/ds1307
DS1307 RTC driver + example
2016-10-13 00:46:43 +03:00
UncleRus
f31ea70e1b Driver for ultrasonic range meters + example 2016-10-13 00:09:13 +05:00
UncleRus
8ded673ec3 DS1307 RTC driver + example 2016-10-12 23:57:24 +05:00
Brian Schwind
6dea7abfc0 Add extern C declaration 2016-10-11 22:52:11 +09:00
Brian Schwind
6449f243fc Move defined constants to enums 2016-10-11 21:39:22 +09:00
Brian Schwind
cd594a4296 Fix according to review comments 2016-10-11 20:51:29 +09:00
Brian Schwind
a323680115 Add a TSL2561 driver and example usage 2016-09-24 19:54:54 +09:00
Vlad Ivanov
8368929a66 paho_mqtt_c: refactor: rename symbols so they all have same prefix (#204)
* paho_mqtt_c: refactor: rename symbols so they all have same prefix

* Update AWS IOT example after MQTT refactoring
2016-09-15 19:52:57 +02:00
ourairquality
e6eda5c3ff i2c: use open drain for output rather than flipping between input and output. 2016-09-01 22:48:02 +10:00
rongsaws
7041c014bb Added a MQTT pub/sub example of using AWS IoT (#173)
* Added a MQTT pub/sub example of using AWS IoT (via ECC based TLS1.2 connection).

* Fixed a buffer overflow issue when receiving large MQTT packet.

* Reset TLS connection on read/write errors.
2016-08-29 19:55:32 +02:00
ourairquality
f0c43ff5d5 BME280 support.
The BME280 is close to compatible with the existing BMP280 and extends it with support for measuring humidity, so support has been bundled into the bmp280 driver.

The example now auto-detects the device and displays the humidity for the BME280.

The I2C bus initialization has been moved out of the bmp280 driver to support multiple devices.

The check-id and reset logic has been bundled into the driver initialization. It needs to be re-initialized after reset anyway and the chip-id is need to initialize it, just re-initialize to reset.

Support has been added for multiple devices. The calibration data storage needs to be managed by the caller rather than static data. The caller can choose the I2C address to allow two BMx280 devices to be used on the same I2C bus.

An interface has been added to return the measurement values in an integer fixed float format. The float format interface is still there.

All the values are read in one I2C transaction to ensure they are a consistent set.

Renamed bmp280_calib_t to bmp280_t, and removed read_register8.
2016-08-17 23:33:04 +10:00
sheinz
666f821263 ws2812_i2s: WS2812 leds driver implementation using i2s_dma library 2016-08-16 10:53:56 +03:00
sheinz
27135d6252 i2s_dma: Implementation of I2S + DMA wrapper library 2016-08-16 10:19:33 +03:00
Peter Andersson
5ea0228639 spiffs: enable temporal cache for spiffs v 0.3.6 2016-08-14 15:15:45 +02:00
Johan Kanflo
0c09054f3e Merge pull request #178 from sheinz/feature/spiffs_update
SPIFFS: Selectable configuration of SPIFFS
2016-08-09 22:32:37 +02:00
Johan Kanflo
a868f9dadb Updated SPIFFS to 0.3.6 2016-08-09 20:33:40 +02:00
sheinz
5051c5c528 SPIFFS: Selectable configuration of SPIFFS 2016-08-08 23:18:15 +03:00
sheinz
964a2f850a Merge pull request #165 from ourairquality/bmp180-rework
bmp180: make a lower level interface available and support oversampling.
2016-08-06 00:39:43 +03:00
Bhuvanchandra
782cdfd11d extras: ds3231: Add support for DS3231 real-time clock (RTC)
Add support for DS3231 extremely accurate I2C real-time clock (RTC).

Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@gmail.com>
2016-08-03 01:23:43 +00:00
Johan Kanflo
083aa0451a Merge pull request #163 from sheinz/feature/spiffs
File system support. SPIFFS integration.
2016-08-02 15:42:22 +02:00
sheinz
d69b8390d4 SPIFFS: Fix PR review comments.
* Enable SPIFFS_USE_MAGIC
 * Enable SPIFFS_USE_MAGIC_LENGTH
 * Enable SPIFFS_FILEHDL_OFFSET
 * Rebuild mkspiffs if spiffs_config.h is changed
 * Emulate NOR flash in mkspiffs
 * Build spiffs image in 'flash' and 'test' targets
2016-07-27 10:12:59 +03:00
sheinz
0ec47b5de9 Merge branch 'feature/spiffs' into experiments/spi_flash_reimplement 2016-07-21 16:48:26 +03:00
sheinz
38cccbd456 SPIFFS: Optimized SPI data read/write.
Unaligned read/write from/to SPI data registers is rewritten in
assembler to improve performance.
2016-07-21 16:36:55 +03:00
ourairquality
41d4427fba bmp180: separate the task and queue interface from the lower level support.
This just separates them in the one file leaving it as possible future change to actually remove the higher level api or move it to an example.
2016-07-20 18:52:13 +10:00
ourairquality
05bbe48bd4 bmp180: make a lower level interface available and support oversampling.
An application using multiple I2C devices will need it's own
loop. This reworks the code to make the detection, calibration
constant loading, and measurment functions available too without
having to use the bmp810 task which is still retained.

Adds support for oversampling.

Fixes a bug in the calculation of the temperature.

Better error handling. Checks for I2C errors and errors in the loading
of the calibration constants and propagates these up.
2016-07-20 18:42:51 +10:00
sheinz
281faa2cac SPIFFS: Wait SPI idle optimization. 2016-07-19 17:38:21 +03:00
Angus Gratton
22c480b583 Merge pull request #160 from sheinz/feature/bmp280
BMP280 pressure sensor driver and example.
2016-07-19 08:22:14 +10:00
Johan Kanflo
38375e218a Merge pull request #164 from ourairquality/i2c-open-drain
i2c: use open drain outputs.
2016-07-18 22:01:34 +02:00
sheinz
4b1568cbb9 SPIFFS: flash access refactoring. 2016-07-18 13:12:21 +03:00
ourairquality
16157080cd i2c: use open drain outputs.
Configure the pins as open-drain just in case the code forces them
high although it should be configuring them as inputs to let them float high.

Initialize the pins when the driver is initialized.

Enable the internal pull-ups to prevent them floating too high if not
connected and damaging the circuit.
2016-07-18 14:35:01 +10:00
sheinz
5d5f28a22f SPIFFS: Bypass SDK and bootrom for flash access.
Accessing SPI flash using reversed engineered functions.
2016-07-16 00:22:33 +03:00
sheinz
fb187eae08 Merge branch 'feature/spiffs' into experiments/spi_flash_reimplement 2016-07-16 00:19:21 +03:00
sheinz
0a98f43902 SPIFFS: Fixed linux build and travis build
mkspiffs utility explicitly use gcc to compile
2016-07-15 19:01:17 +03:00
sheinz
55b7d29767 SPIFFS: Fix SPIFFS rebuild if SIZE is changed. 2016-07-15 15:44:22 +03:00
sheinz
924860a78f SPIFFS: Update example, README.md
Separate method to initialize SPIFFS memory buffers.
REDME.md for spiffs component.
Simplify spiffs example.
2016-07-15 15:22:03 +03:00
sheinz
66610c56cb SPIFFS: Improve SPIFFS image build
Rebuild SPIFFS image if files change.
Rebuild mkspiffs if SPIFFS_SIZE is changed in Makefile.
2016-07-15 01:21:32 +03:00
sheinz
22654a4de7 SPIFFS: Support lseek, stat, fstat
Support for lseek, stat, fstat added.
Test extended to covert those functions.
2016-07-14 16:13:03 +03:00
sheinz
bfa20af855 Fix branch merging.
Changes in esp_spiffs.c recovered.
2016-07-14 15:44:02 +03:00
sheinz
d25b8b2a55 Create SPIFFS image and flash it.
mkspiffs is added to create SPIFFS image from directory with files.
Build process changed to flash SPIFFS image if necessary
2016-07-14 14:49:34 +03:00
sheinz
5c12b7c7e9 Draft implementation of SPIFFS integration 2016-07-14 14:49:34 +03:00
Angus Gratton
eac9504d8a Merge pull request #158 from baoshi/mqtt_fix
Handling MQTT read failure and send buffer length
2016-07-14 07:30:35 +10:00
Angus Gratton
b15b536e40 Merge pull request #154 from SuperHouse/open-libmain
First open_esplibs batch, libmain (most of libmain open sourced)
2016-07-14 07:29:28 +10:00
sheinz
91e2f6c0a1 BMP280 driver: typo fixed 2016-07-08 14:59:21 +03:00
sheinz
db4e39b8bd Update component.mk
Comment typo fixed.
2016-07-08 12:52:54 +03:00
sheinz
a155928f19 Update README.md 2016-07-08 12:49:51 +03:00
sheinz
c19126fc13 BMP280 driver: Add README.md 2016-07-08 12:40:15 +03:00
sheinz
440ad67834 BMP280 driver: Forced mode. Soft reset. 2016-07-07 23:39:25 +03:00
sheinz
4a2679271e BMP280 pressure sensor driver draft implementation. 2016-07-07 18:04:17 +03:00
sheinz
6ff78f802d DHT11/DHT22 library fixes.
Fixed temperature below zero.
Fixed checksum overflow verification.
Fixed inconsistent reading of DHT11.
2016-07-06 21:01:44 +03:00
sheinz
a41407e3d1 DHT11/22 library fix
Support DHT11/DHT22 modules.
Data representation fix.
Library refactoring.
2016-07-06 15:58:59 +03:00