1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-15 19:32:46 +01:00
Commit Graph

1512 Commits

Author SHA1 Message Date
quangphhr
afa723b2f7 drivers/hsc: add driver for honeywell pressure and temperature sensor 2021-01-06 10:22:17 +01:00
Marian Buschsieweke
e5a0154255
Merge pull request #14660 from maribu/netdev_confirm_send
drivers/net: Add netdev_driver_t::confirm_send
2021-01-05 16:11:20 +01:00
Marian Buschsieweke
53fcb97b2f
drivers/net: Add netdev_driver_t::confirm_send
Changed the API of `netdev_driver_t`:

- The `send()` function should no longer return the number of bytes and should
  not block
- The upper layer now must call the new `confirm_send()` function after
  calling `send()`; either busy waiting until something different to `-EBUSY`
  is returned, or after `NETDEV_EVENT_TX_COMPLETE` was signaled

During transition to the new API, the upper layer must remain backward
compatible and must assume the legacy API if `netdev_driver_t::confirm_send()`
is `NULL`.
2021-01-05 15:34:11 +01:00
Leandro Lanzieri
675ddb6ccc
drivers/pn532: use pseudomodules to select i2c or spi 2021-01-04 16:55:16 +01:00
Jens Wetterich
e36a0d883a esp_common/esp_now: use netdev_register() 2020-12-23 19:44:57 +01:00
benpicco
770bda165a
Merge pull request #15571 from iosabi/drv_si1133
drivers/si1133: New SI1133 UV/IR/Ambient light driver
2020-12-14 08:41:00 +01:00
iosabi
ce76125a22 drivers/si1133: New SI1133 UV/IR/Ambient light driver
The SI1133 from Silicon Labs is a UV Index Sensor and Ambient Light
Sensor in a small 2x2 mm DFN package. The sensor can measure
independently ultra violet (UV) light, infra red (IR) light and
ambient light, however the ambient light is also influenced by the
IR light requiring compensation from the IR readings.

The SI1133 is quite different from other Silicon Labs chips in RIOT OS
and therefore needs its own driver. In particular, the SI1133 has 7
different photodiode configurations to read but only 6 channels to
read them in parallel so only some channels can be read each time.

This patch implements a new driver allowing to read the data directly
and a saul interface for the three kinds of light source. There are
many configuration options including interrupts and continous modes
that are left out of this initial driver.
2020-12-14 03:13:23 +00:00
dylad
7cbaa3f890 net/netdev: create SAM0 Ethernet entry in netdev_type_t 2020-12-13 21:41:20 +01:00
chrysn
272c8d29cc
Merge pull request #13908 from benpicco/periph/dac_play
drivers/periph_common: dac: add dac_play()
2020-12-11 07:31:44 +01:00
benpicco
1477a340fe
Merge pull request #15150 from fabian18/ieee802154_security
Initial implementation of IEEE 802.15.4 security
2020-12-09 14:14:27 +01:00
Akshai M
bfd3a903fb drivers/rn2xx3 : r/LORAMAC_DEFAULT_AR/CONFIG_RN2XX3_DEFAULT_AR
Move 'LORAMAC_DEFAULT_AR' to drivers/rn2xx3 i.e
'RN2XX3_DEFAULT_AR'
Move 'RN2XX3_DEFAULT_AR' to 'CONFIG_' namespace

Co-authored-by: Leandro Lanzieri <leandro.lanzieri@haw-hamburg.de>
2020-12-08 11:33:44 +01:00
Benjamin Valentin
ceb3f8443a drivers/dac_dds: add module to play sample buffer over a DAC
This adds an API function to play a buffer of Audio samples using a DAC.

Double buffered operation is supported by specifying a callback that will
be called when the next buffer can be queued with dac_dds_play().
2020-12-04 23:12:32 +01:00
Fabian Hüßler
1b5bcec554 drivers/netdev: Add IEEE 802.15.4 security 2020-12-04 09:40:55 +01:00
Akshai M
d65a4b3f97 drivers/ili9341 : Update documentation 2020-12-03 14:20:34 +01:00
Akshai M
9f81956e41 drivers/ili9341 : Model 'CONFIG_ILI9341_LE_MODE' as BOOL 2020-12-03 14:20:34 +01:00
Akshai M
a322c6d4c0 drivers/ili9341 : Move 'ILI9341_VCOML' to 'CONFIG_' 2020-12-03 14:20:34 +01:00
Akshai M
d6935cd7bb drivers/ili9341 : Move 'ILI9341_VCOMH' to 'CONFIG_' 2020-12-03 14:20:34 +01:00
Akshai M
7bb83f9e01 drivers/ili9341 : Move 'ILI9341_GVDD' to 'CONFIG_' 2020-12-03 14:20:34 +01:00
benpicco
a80631a297
Merge pull request #15074 from maribu/ptp-clock
drivers/periph/ptp_clock
2020-12-03 09:59:07 +01:00
Marian Buschsieweke
7d1edd51f4
drivers/periph: Added PTP clock API 2020-12-02 17:53:00 +01:00
benpicco
665c07eb53
Merge pull request #15120 from benpicco/driver/at86rf215-trim
driver/at86rf215: add functions to configure trim & clock output at run-time
2020-12-02 16:53:02 +01:00
Benjamin Valentin
95d082a2be driver/at86rf215: add functions to set trim & clock output at run-time
To calibrate the at86rf215 radio, trim value has to be set at run-time
during board production.
Add two helper functions to control the trim value and clock output register.
2020-12-02 14:59:17 +01:00
Fabian Hüßler
c526a34770 sx127x: make use of netdev_register()
Call netdev_register() in sx127x_setup()
and pass the index in auto_init_sx127x()
and semtech_loramac_init()
2020-12-01 16:34:11 +01:00
Fabian Hüßler
8ca2e09d95 drivers/include: add NETDEV_SX127X 2020-12-01 16:34:06 +01:00
Marian Buschsieweke
56cf30172f
Merge pull request #15532 from fabian18/cc110x_netdev_register
drivers/cc110x: use netdev_register
2020-12-01 16:17:37 +01:00
Fabian Hüßler
39adf908ce cc110x: make use of netdev_register()
Call netdev_register() in cc110x_setup()
and pass the index in auto_init_cc110x()
2020-12-01 12:11:20 +01:00
Fabian Hüßler
320b1c4206 drivers/include: add NETDEV_CC110X 2020-12-01 12:06:12 +01:00
Benjamin Valentin
eb199d4c78 netdev: move definition of NETDEV_INDEX_ANY to netdev 2020-12-01 11:55:06 +01:00
benpicco
333fce44b4
Merge pull request #14973 from benpicco/driver/at86rf215-batmon
drivers/at86rf215: implement battery monitor, add power bus
2020-12-01 11:52:46 +01:00
Benjamin Valentin
a28a60f16c cpu/stm32: periph_eth: register with netdev 2020-11-29 23:10:37 +01:00
Francisco
14877443f7
Merge pull request #15494 from gdiribarne/bugfix/sfr04-avr-overflow
drivers/srf04: fix overflow on AVR
2020-11-26 11:14:15 +01:00
1d5e2e9cd9 all: remove traces of kernel_types.h
Automatically removed using:

    $ git grep -l kernel_types | xargs sed -i '/^#include .kernel_types/d'
2020-11-25 17:52:34 +01:00
0b801c4de0 all: adapt to moved sched defines 2020-11-23 16:56:34 +01:00
Gilles Diribarne
5a5c8507d4 drivers/sfr04: Use uncrustify 2020-11-22 23:12:40 +01:00
Gilles Diribarne
caa1ad822d drivers/sfr04: Fixed int overflow for AVR (arduino board) 2020-11-22 23:03:21 +01:00
benpicco
6cf6b47c27
Merge pull request #15445 from btcven/2020_11_05-gp2y10xx
drivers: add gp2y10xx dust sensor
2020-11-18 09:56:03 +01:00
Jean Pierre Dudey
e920a2e645 drivers: add gp2y10xx dust sensor
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-11-18 09:13:56 +01:00
Hauke Petersen
c4a8c45a3e periph/rtt: fix tick conversion macros 2020-11-16 10:00:24 +01:00
Benjamin Valentin
f9650bdbc3 drivers/at86rf215: implement Battery Monitor 2020-11-13 22:59:09 +01:00
benpicco
be9eb22bb8
Merge pull request #15106 from chrysn-pull-requests/saul-rgbleds
saul_pwm: auto-init'able RGB LEDs and dimmers
2020-11-13 18:22:30 +01:00
benpicco
d9598a0f54
Merge pull request #15412 from bergzand/pr/flashpage/merge_raw
periph_flashpage: Make pagewise API optional
2020-11-12 22:32:21 +01:00
41bbaa7442
flashpage: Make pagewise API optional
flashpage currently requires pagewise implementation with an optional
extension for per block writes (flashpage_raw). Most implementations
with flashpage_raw implement the pagewise access via the flashpage_raw
functions. This commit makes the flashpage raw the main access method
and adds an extension feature for the pagewise access.

The functions and defines are renamed to reflect this. The API is also
extended with a dedicated function for erasing a sector.
2020-11-11 22:26:33 +01:00
Hauke Petersen
8a31519558 drivers: add support for ds3231 RTC 2020-11-09 15:18:54 +01:00
Francisco
3e3da1217d
Merge pull request #15249 from aabadie/pr/tools/typo
tools/codespell: fix new typos and make it fail when typos are found
2020-11-03 15:01:20 +01:00
benpicco
9681c204d6
Merge pull request #14959 from benpicco/at86rf215-mr-fsk
drivers/at86rf215: implement MR-FSK
2020-11-03 11:26:24 +01:00
Benjamin Valentin
6f23263503 drivers/at86rf215: implement MR-FSK 2020-11-03 10:51:21 +01:00
Benjamin Valentin
53ca0dd1d0 drivers/mtd_spi_nor: define WP and HOLD pin
Hold and WP are not used by the driver, but if they are connected
to the flash they must be driven HIGH to enable writes and not stop
any flash operation.
2020-11-02 21:17:36 +01:00
benpicco
e77d12da26
Merge pull request #15188 from benpicco/drivers/kw41zrf-register
drivers/kw41zrf: register with netdev
2020-10-31 14:30:00 +01:00
Marian Buschsieweke
125c892c03
drivers/periph/timer: Use uint32_t for frequency
For all currently supported platforms `unsigned long` is 32 bit in width. But
better use `uint32_t` to be safe.
2020-10-30 22:02:12 +01:00
cd3ee9e825
drivers/mii: fix typo 'auto-negotation' => 'auto-negotiation' 2020-10-27 10:33:48 +01:00
Benjamin Valentin
fde3026312 drivers/mtd_spi_nor: prevent data corruption on 'sector erase'
There is no difference between 4k erase and sector erase.
But sector erase would previously do `.block_erase` which would not
erase a sector (4k) but a whole block (64k).

Fortunately all boards declare `SPI_NOR_F_SECT_4K` and all file systems
don't try to erase anything smaller, so this was never triggered.

Add an `assert(0)` to crash instead of corrupting data.
2020-10-26 13:48:26 +01:00
Benjamin Valentin
0425325260 drivers/mtd_spi_nor: use single transfer to read JEDEC ID
Just read the JEDEC ID with a single SPI transfer, there can only
be 10 banks.

This makes adaption to QSPI much simpler because now flash functions
don't call the SPI API directly anymore.
2020-10-26 13:02:09 +01:00
Bas Stottelaar
26835a949f drivers/*: remove unused assert.h include 2020-10-22 11:29:27 +02:00
chrysn
d196c7c4a6 drivers/saul/auto_init: Add PWM for LEDs
In analogy to the existing GPIO mappings, this provides (write-only)
SAUL entries for PWM'd LEDs in a single-LED (as SAUL_ACT_DIMMER) and an
RGB (as SAUL_ACT_RGB_LED) mode.

Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
2020-10-17 11:20:17 +02:00
benpicco
4edf5c7cbd
Merge pull request #15208 from benpicco/ieee802154_submac-etx
netdev/ieee802154_submac: add retransmission reporting
2020-10-15 14:31:54 +02:00
Benjamin Valentin
37aad4ef38 netdev/ieee802154_submac: add retransmission reporting
If we do software retransmissions, we already keep a count.
Allow to query it with `NETOPT_TX_RETRIES_NEEDED`.
2020-10-15 13:26:42 +02:00
Nishchay-sopho
eb1064eef4 drivers/scd30: Add reset function to Sensirion scd30 sensor 2020-10-14 15:07:01 +02:00
Marian Buschsieweke
6294382627
cpu/stm32: Use mii.h for periph_eth
Use shared MII definitions and utilities instead own definitions.
2020-10-12 08:46:20 +02:00
Marian Buschsieweke
33d916b237
drivers/mii: Media-Independent Interface utils
Add utilities for working with Ethernet Media-Independent Interface for use by
Ethernet drivers.
2020-10-12 08:46:20 +02:00
Benjamin Valentin
b32bc3dbd1 drivers/kw41zrf: register with netdev 2020-10-08 16:19:23 +02:00
Benjamin Valentin
1afe72a5e5 drivers/enc28j60: register with netdev 2020-10-08 10:36:56 +02:00
benpicco
ab37c9fba1
Merge pull request #14949 from benpicco/drivers/mrf24j40-register
drivers/mrf24j40: register with netdev
2020-10-08 10:33:37 +02:00
Francisco
3918d714ce
Merge pull request #13624 from wosym/pr/candev_mcp2515
tests/candev: add mcp2515 + driver/mcp2515: add driver
2020-10-08 09:45:40 +02:00
Benjamin Valentin
a1d8c79a98 drivers/mrf24j40: pass long address via pointer 2020-10-07 16:39:39 +02:00
Benjamin Valentin
988ee1648f drivers/mrf24j40: register with netdev 2020-10-07 16:39:39 +02:00
Marian Buschsieweke
5b9463aca1
drivers/netdev: Clarify documentation 2020-10-06 10:48:06 +02:00
Wouter Symons
757f810118 drivers/mcp2515: complete driver + adapt to 2020 RIOT API 2020-10-03 15:20:42 +02:00
Vincent Dupont
62a9929f9b mcp2515: add a driver for the mcp2515 SPI CAN controller
This driver implements the candev interface
2020-10-03 15:20:42 +02:00
feac7dc978
drivers/pir: fix typo 'whan' -> 'when' 2020-10-02 08:06:16 +02:00
dc8d32d30e
drivers/periph/gpio: fix typo 'occured' -> 'occurred' 2020-10-02 08:05:55 +02:00
9236b6ca5c
drivers/ltc4150: fix typo 'tread' -> 'treat' 2020-10-02 08:05:31 +02:00
59297c3779
drivers/lc709203f: fix typo 'Invlid' -> 'Invalid' 2020-10-02 08:05:00 +02:00
5ef55e37d7
drivers/ina3221: fix typos
- 'measurment' -> 'measurement'
- 'enble' -> 'enable'
2020-10-02 08:04:23 +02:00
2f2eeb7a7b
drivers/at: fix typo 'correspondant' -> 'correspondent' 2020-10-02 08:03:10 +02:00
benpicco
6cb8da7813
Merge pull request #14950 from jia200x/pr/ieee802154/submac
ieee802154_submac: add initial support for common MAC sub layer
2020-10-01 11:31:52 +02:00
Jose Alamos
4bb77b0b2f netdev/ieee802154_submac: add compatibility layer 2020-09-30 17:25:31 +02:00
benpicco
b2401eb73b
Merge pull request #14966 from HendrikVE/pr/driver/aip31068
driver/aip31068: add new driver
2020-09-30 15:52:52 +02:00
Hendrik van Essen
6778bf4b98 driver/aip31068: add new driver 2020-09-29 14:42:15 +02:00
Martine Lenders
cd8666735e
Merge pull request #15107 from benpicco/boards/samr21-xpro_edbg_eui
boards/samr21-xpro: fix reading EUI-64 from EDBG on cold boot
2020-09-29 11:04:04 +02:00
Benjamin Valentin
971c03eeb9 drivers/edbg_eui: add note on edbg startup time 2020-09-28 20:18:43 +02:00
7c029c7f43
Merge pull request #14907 from OTAkeys/pr/adcxx1c_get_alert
drivers/adcxx1c: add clear alert function
2020-09-28 13:28:15 +02:00
316871a4fa
Merge pull request #15068 from MrKevinWeiss/pr/dev_enum
drivers/dev_enums: Remove unused dev_enums.h
2020-09-25 17:35:21 +02:00
MrKevinWeiss
7893158b5a drivers/dev_enums: Remove unused dev_enums.h 2020-09-24 09:27:39 +02:00
Viktor Gal
7ea8f738fd
Add support for Adafruit Seesaw Soil moisture sensor (#14835)
drivers/seesaw_soil: Add support for Adafruit Seesaw Soil moisture sensor
2020-09-23 17:35:33 +02:00
chrysn
9295f69da4
Merge pull request #15062 from kaspar030/fix_efm32_16b_timer_set_absolute
cpu/efm32/periph/timer: fix timer_set_absolute() in 16bit case
2020-09-23 11:28:00 +02:00
chrysn
d8d56e5e3a periph/timer: Document that set_absolute is expected to wrap
Most timers are implemented this way already, and keeping (documenting)
it that way allows the generic timer_set implementation to stay as
simple as it is.
2020-09-23 10:59:18 +02:00
MrKevinWeiss
cc1c2ab811 drivers/periph: Remove unused timer enum from dev_enums 2020-09-22 16:26:01 +02:00
José Alamos
9c130cd2fd
Merge pull request #15032 from jia200x/pr/at86rf2xx/fix_overflow
drivers/at86rf2xx: fix at86rf2xx_set_rxsensitivity
2020-09-17 10:32:06 +02:00
Jose Alamos
074dc8d328 drivers/at86rf2xx: fix at86rf2xx_set_rxsensitivity 2020-09-16 14:47:51 +02:00
Benjamin Valentin
696ddf3dbb drivers/periph/timer: amend documentation for timer_set_periodic()
The function needs the `periph_timer_periodic` feature.
Add a `@note` about that to the documentation.
2020-09-13 19:06:28 +02:00
benpicco
842933855f
Merge pull request #14995 from benpicco/cpu/cc2538-register
cc2538_rf: register with netdev
2020-09-11 16:03:08 +02:00
Benjamin Valentin
1811686540 cc2538_rf: register with netdev 2020-09-11 13:33:37 +02:00
Francisco
858533e68e
Merge pull request #14994 from benpicco/nrf802154-register
nrf802154: register with netdev
2020-09-11 12:48:40 +02:00
Cenk Gündoğan
0d0bc91553
Merge pull request #14754 from leandrolanzieri/pr/no_archives
build system: link object files
2020-09-10 09:36:29 +02:00
Benjamin Valentin
58dc106309 nrf802154: register with netdev 2020-09-10 00:05:25 +02:00
9b9ed236ba
Merge pull request #14916 from MrKevinWeiss/pr/slwstk6220a
drivers/periph: Remove UART from device_enums.h
2020-09-09 10:53:27 +02:00
fdaf7fd822
Merge pull request #14596 from benpicco/drivers/at86rf2xx-retries
drivers/at86rf2xx: support frame retry reporting on AT86RFR2
2020-09-09 10:27:05 +02:00
MrKevinWeiss
bdeb39576e drivers/periph: Remove UART from dev_enums.h 2020-09-09 10:25:38 +02:00
Benjamin Valentin
0871b69c84 drivers/at86rf2xx: support frame retry reporting on at86rfr2
At86rfr2 doesn't report retries directly, but it can generate a TX start
interrupt for each (re)try, so we can count manually.
2020-09-08 14:48:57 +02:00
Benjamin Valentin
634714ff78 drivers/at86rf215: implement Reduced Power Consumption
Reduced Power Consumption is available for MR-O-QPSK and
MR-FSK.
In this mode the receiver will be turned off periodically,
defaulting to a 50% duty cycle.

This reduces power consumption when in IDLE RX by almost 50%
and is therefore enabled by default.
2020-09-07 13:48:47 +02:00