1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

34 Commits

Author SHA1 Message Date
Marian Buschsieweke
c3500eb6e0
tree wide: fix typos in comments found by codespell
This will not change generated binaries, only the Doxygen output and
source code will have less typos.
2023-05-02 09:52:06 +02:00
Benjamin Valentin
67f737b5e0 drivers/cc110x: use pseudo-modules for band selection 2021-09-17 12:58:10 +02:00
Francisco
a1cbcc9ede
Merge pull request #15902 from maribu/spi-api-change-1
drivers/periph_spi: let spi_acquire return void
2021-09-02 08:50:56 +02:00
Marian Buschsieweke
732cbd969c
drivers: update to new periph_spi API 2021-09-01 21:38:40 +02:00
Jan Romann
4384795cb9
treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
benpicco
8f9233f329
Merge pull request #16232 from maribu/drivers/cc110x
drivers/cc110x: add power off (sleep) functions
2021-07-06 12:24:26 +02:00
Marian Buschsieweke
3d76875f38
drivers/cc110x: style fixes 2021-07-06 10:12:21 +02:00
Francisco Acosta
0efc13602f
drivers/cc110x: add power off (sleep) functions 2021-07-06 10:11:55 +02:00
Fabian Hüßler
d8affca746 drivers/cc110x: add weak function cc1xxx_eui_get() 2021-04-08 10:38:16 +02:00
Benjamin Valentin
aa0e5e7afa drivers/cc110x: replace binary constants and use unsigned char
binary constants are a GCC extension
2020-07-31 13:38:03 +02:00
Marian Buschsieweke
f7eb9233da
drivers/cc110x: Replaced some magic numbers 2020-01-23 18:27:03 +01:00
Marian Buschsieweke
84acc746dc
drivers/cc110x: Added missing Doxygen comments
The current stable Doxygen release should no longer complain now
2019-09-06 09:10:38 +02:00
Marian Buschsieweke
b389a9c5fa
drivers/cc110x: Fixed broken Doxygen grouping
The header files of the CC110x contained two Doxygen "end of doc group" (@})
commands. This PR makes sure they are balanced again.
2019-09-06 08:53:40 +02:00
Marian Buschsieweke
3da3280930
driver/cc110x: Fixed indent/alignment in doc
The Doxygen documentation blocks have not been correctly aligned. This commit
fixes this.
2019-09-04 13:15:15 +02:00
Marian Buschsieweke
972367432a
drivers/cc110x: Rewrite of the cc110x driver
The cc110x driver has been re-written from scratch to overcome the limitations
of the old driver. The main motivation of the rewrite was to achieve better
maintainability by a detailed documentation, reduce the complexity and the
overhead of the SPI communication with the device, and to allow to
simultaneously use transceivers with different configuration regarding the used
base band, the channel bandwidth, the modulation rate, and the channel map.

Features of this driver include:

- Support for the CC1100, CC1101, and the CC1100e sub-gigahertz transceivers.
- Detailed documentation of every aspect of this driver.
- An easy to use configuration API that allows setting the transceiver
  configuration (modulation rate, channel bandwidth, base frequency) and the
  channel map.
- Fast channel hopping by pre-calibration of the channels during device
  configuration (so that no calibration is needed during hopping).
- Simplified SPI communication: Only during start-up the MCU has to wait
  for the transceiver to be ready (for the power regulators and the crystal
  to stabilize). The old driver did this for every SPI transfer, which
  resulted in complex communication code. This driver will wait on start up
  for the transceiver to power up and then use RIOT's SPI API like every other
  driver. (Not only the data sheet states that this is fine, it also proved to
  be reliable in practise.)
- Greatly reduced latency: The RTT on the old driver (@150 kbps data rate) was
  about 16ms, the new driver (@250 kbps data rate) has as RTT of ~3ms
  (depending on SPI clock and on CPU performance) (measured with ping6).
- Increased reliability: The preamble size and the sync word size have been
  doubled compared to the old driver (preamble: 8 bytes instead of 4,
  sync word: 4 byte instead of 2). The new values are the once recommended by
  the data sheet for reliable communication.
- Basic diagnostic during driver initialization to detect common issues as
  SPI communication issues and GDO pin configuration/wiring issues.
- TX power configuration with netdev_driver_t::set() API-integration
- Calls to netdev_driver_t::send() block until the transmission has completed
  to ease the use of the API (implemented without busy waiting, so that the
  MCU can enter lower power states or other threads can be executed).
2019-08-20 16:32:11 +02:00
Marian Buschsieweke
615e25f319
drivers: Removed driver for CC110x transceivers
- Removed cc110x driver
- Updated all makefiles
- Kept both board specific configurations and support for it in RIOT's
  upper layers, so re-implementations don't need to start from zero
2019-08-19 12:56:47 +02:00
Marian Buschsieweke
4183e16820
drivers/cc110x: Replaced magic number
Introduced CC110X_L2_HDR_SIZE to get rid of magic numbers.
2019-02-01 12:23:22 +01:00
Marian Buschsieweke
30c79a66d0
drivers: Replaced magic numbers in cc110x
Replaced magic undocumented numbers in the code by human readable preprocessor
macros.
2018-05-24 19:28:46 +02:00
Marian Buschsieweke
cbff3e6d3a
drivers: Implemented missing function in cc110x
Function cc110x_state_to_text is defined and (with ENABLE_DEBUG) referenced,
but implemented. This commit adds the missing implementation.
2018-05-24 19:17:59 +02:00
Marian Buschsieweke
a6f9a86597
drivers/cc110x: Moved cc110x_params.h from boards to driver
- Replaced magic numbers in the CC110X configuration of the MSBA2
   with SPI_DEV(x) and GPIO_PIN(x, y) macros
 - Adjusted implementation of `cc110x_params.h` to match the code of `at86rf2xx`
 - Made MSBA2's CC110X parameters the default configuration
2018-05-21 22:59:46 +02:00
13e0239722 drivers/cc110x: cleanup + remove gnrc_netdev leftover 2017-11-28 11:25:33 +01:00
Martine Lenders
a63bb6d47b
Merge pull request #6895 from bergzand/drivers/radio-rssi-conv
drivers/radios Apply register to rssi dBm conversion to all radios
2017-11-27 23:52:15 +01:00
7dce20afb6 cc110x: Add RSSI dBm conversion 2017-11-27 21:49:15 +01:00
Martine Lenders
31b1ceb440
gnrc_netif2: rename to gnrc_netif 2017-11-17 10:41:54 +01:00
Martine Lenders
e3ef42842e cc110x: port to gnrc_netif2 2017-11-15 22:57:02 +01:00
94c753c07a drivers: doxygen cleanup 2017-09-01 15:12:20 +02:00
0fcc7d3834 cleanup: apply headerguard script output 2017-05-24 17:54:02 +02:00
Martine Lenders
29842bb5e4 netdev2: rename to netdev and remove gnrc_netdev
With some minor hand-edits I used the following chain of commands:

```sh
git rm sys/include/net/gnrc/netdev.h
git grep --name-only -i netdev2 | \
        xargs sed -i -e 's/^\(NETDEV\)2\(.*\)\( [("]\)/\1\2 \3/g' \
                     -e 's/\(netdev\)2\(.*\)\( \/\*\*<\)/\1\2 \3/I' \
                     -e 's/\(netdev\)2/\1/gI'
git add -p
git commit --amend
git ls-tree --full-tree -r HEAD --name-only | \
        grep "netdev2" | xargs -I'{}' dirname '{}' | uniq | \
        grep "netdev2" | while read dir; do
                new_dir="$(echo "$dir" | sed "s/netdev2/netdev/g")"
                git mv -f "$dir" "$new_dir"
        done
git commit --amend
git ls-tree --full-tree -r HEAD --name-only | \
        grep "netdev2" | while read file; do
                new_file="$(echo "$file" | sed "s/netdev2/netdev/g")"
                git mv -f "$file" "$new_file"
        done
git commit --amend
git grep --name-only "\<drivers_netdev_netdev\>" | \
        xargs sed -i "s/\<drivers_netdev_netdev\>/drivers_netdev_api/g"
git add -p
git commit --amend
```
2017-03-15 09:31:20 +01:00
Oleg Hahm
0d3833a88a net: cleanup ng_ remnants 2017-03-02 14:19:25 +01:00
75168936f6 drivers/cc110x: fix typo in macro definition. 2016-07-14 17:22:03 +02:00
Martine Lenders
bd8d2d3a8a cc110x: adapt for info struct 2016-02-22 15:17:05 +01:00
Cenk Gündoğan
c0369f04f6 drivers: make default channel configurable at compile time 2016-02-16 13:07:17 +01:00
Martine Lenders
3c00cec299 gnrc_netdev2: harmonize naming scheme to rest of GNRC 2015-11-27 13:03:37 +01:00
Hauke Petersen
aee4e564c0 drivers/cc110x: moved includes
let the driver follow the same structure than other drivers
for now: keeping 'private' includes in a local include folder
2015-11-20 10:32:43 +01:00