Commit Graph

714 Commits

Author SHA1 Message Date
Artur Nasyrov 833990f44d Add ens160 i2c driver
Driver for ENS160 sensor:
https://www.sciosense.com/wp-content/uploads/2023/12/ENS160-Datasheet.pdf
2025-08-10 10:05:18 +02:00
Ayke van Laethem 28d87eb0c5 ws2812: add RP2350 support
Adding 150MHz support for the RP2350
2025-08-10 10:05:18 +02:00
Yurii Soldak ae9e8f915e ssd1306: avoid unnecessary heap allocations (#767)
* ssd1306: avoid unnecessary heap allocations

* ssd1306: extract i2c and spi bus implementations

* ssd1306: refactor tests -- show fps and heap usage

* ssd1306: bring back the lost exported methods

* Adjust examples

* Fix smoketests for ssd1306
2025-08-10 10:05:18 +02:00
JP Hastings-Spital 45fad80c3e feat: allow gps init with address
Adafruit's Mini GPS PA1010D Module works with this device driver, but requires 0x10 as the address, rather than 0x42.

This change allows the device to be initialised with whatever i2c address is needed, while maintaining backward compatibility.

Adds new constants to allow easy configuration of both the ublox device and the PA1010D.
2025-08-10 10:05:18 +02:00
Yurii Soldak 0304d30b78 lsm6ds3tr: avoid unnecessary heap allocations (#766)
* lsm6ds3tr: avoid unnecessary heap allocations
* lsm6ds3tr: use helper functions, for readability
* lsm6ds3tr: return slice of the internal buffer on readBytes
2025-08-10 10:05:18 +02:00
Ron Evans 7de0a0814e Revert "add regmap package to facilitate heapless driver development (#768)" (#776)
This reverts commit 80356fd9d9.
2025-07-14 11:16:56 -03:00
Patricio Whittingslow 80356fd9d9 add regmap package to facilitate heapless driver development (#768) 2025-07-13 09:58:49 -03:00
deadprogram c4ff8242a7 all: updates for drivers release v0.32.0
Signed-off-by: deadprogram <ron@hybridgroup.com>
v0.32.0
2025-06-15 22:36:34 +02:00
soypat 82c41dbf14 add driver design pointer to CONTRIBUTING.md 2025-05-28 11:03:09 +02:00
Hikmatulloh Hari Mukti c4168864fd bmp280: remove alloc on read sensor data 2025-05-28 10:29:08 +02:00
Leon Matthews dbc9022f6a ws2812: add 200MHz support for the Cortex-M0/rp2040 2025-05-20 13:09:35 +02:00
Mateusz Nowak d41bc0b85f fix: remove time.Sleep from SSD1306 SPI transfer code 2025-05-20 12:43:13 +02:00
Craig Swank e7f90166ad tmc2209 bug fixes (#755)
* Make write buffer big enough for crc
* crc according to datasheet
* fix build
* a correct crc func already exists
2025-05-20 12:27:30 +02:00
deadprogram 156d6e7c9c chore: update all SPI usage to use either *machine.SPI or drivers.SPI to accomodate recent switch in machine package
Signed-off-by: deadprogram <ron@hybridgroup.com>
v0.31.0
2025-03-11 12:43:28 -07:00
deadprogram 6e04decf19 Prepare for release 0.30
Signed-off-by: deadprogram <ron@hybridgroup.com>
v0.30.0
2025-03-04 10:11:02 -08:00
deadprogram afb1ea39c2 license: update year
Signed-off-by: deadprogram <ron@hybridgroup.com>
2025-03-04 10:11:02 -08:00
henryleduc 382e79a748 fix(dhcp): fix typo in DHCP error message 2025-03-04 09:25:06 -08:00
Scott Feldman 06dd60fba2 Add wifi driver comboat for Elecrow W5 rp2040 and rp2350 devices (#741)
* Add wifi driver comboat for Elecrow W5 rp2040 and rp2350 devices

Combo-AT driver uses AT command set to talk to onboard rtl8720d wifi
device.  The driver supports UDP/TCP/TLS clients in Wifi STA mode.
Support for UDP/TCP servers is not supported, currently.

https://aithinker-combo-guide.readthedocs.io/en/latest/docs/instruction/index.html
https://aithinker-combo-guide.readthedocs.io/en/latest/docs/command-set/index.html
https://aithinker-combo-guide.readthedocs.io/en/latest/docs/command-examples/index.html

* Add wifi driver comboat for Elecrow W5 rp2040 and rp2350 devices

Combo-AT driver uses AT command set to talk to onboard rtl8720d wifi
device.  The driver supports UDP/TCP/TLS clients in Wifi STA mode.
Support for UDP/TCP servers is not supported, currently.

https://aithinker-combo-guide.readthedocs.io/en/latest/docs/instruction/index.html
https://aithinker-combo-guide.readthedocs.io/en/latest/docs/command-set/index.html
https://aithinker-combo-guide.readthedocs.io/en/latest/docs/command-examples/index.html

* switch to comboat_fw build tag for examples/net's that work with comboat driver
2025-02-21 11:24:15 +01:00
Scott Feldman 27a7d5031e move to latest golang.org/x/net v0.33.0 (#732)
v0.33.0 has fixes for:

CVE-2024-45338: Non-linear parsing of case-insensitive content in golang.org/x/net/html
CVE-2023-45288: net/http, x/net/http2: close connections when receiving too many headers

Note: requires changes from tinygo PR#4685.
2025-02-18 23:34:09 +01:00
John Hobbs 6281f36662 MAX6675 example & smoke test 2025-02-13 18:26:26 +01:00
John Hobbs ccfcfa837e Add MAX6675 device 2025-02-13 18:26:26 +01:00
Amken USA 87c205fd65 Added TMC2209 support (#727)
TMC2209: Added TMC2209 support
2025-01-28 12:42:18 +01:00
Anastasios Papalyras f57b5ecee9 Add sharpmem (#724)
sharpmem: add implementation of sharpmem display driver

* Implement Configure, Clear and ClearBuffer, add some tests, add documentation/comments
* Reverse white
* Inverted bits, fix and improve ClearBuffer, cleanup
* Refine doc comment
* Driver refactor, optimizations toggle, additional tests & support for all SKUs
* Fix address overflow padding, add wire-level tests for assumed address encoding
* Minor rename
* Cleanup and doc fixes
* Add device configs
* Bounds check
* Add example and smoketest entry
* Use uf2 output file format
* Refine example
2025-01-28 12:17:12 +01:00
Amken USA 486949686c Added TMC5160 support (#725)
TMC5160: Added TMC5160 support

* Added example code for tmc5160 and smoke test
* Update go.mod
* Updated mod file
* Cleaned up commented out code and updated readme.
* ran go fmt
* Fixed setrampspeed func
* Removed spi1 pin setup in example.go. Renamed SPIComm to spicomm.go
* Removed unused test file
* Removed commented line
2025-01-18 07:49:00 +01:00
Triston Whetten 00578a3a81 Fixed bug in aht20 driver 2025-01-18 07:45:09 +01:00
ehime-iyokan 17f273243d hub75: fix data buffering 2025-01-04 16:20:10 +01:00
deadprogram 0623bb425c chore: update microphone driver to use latest i2s interface
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-12-18 16:42:00 +01:00
deadprogram 019bbbe5fb Prepare for release 0.29
Signed-off-by: deadprogram <ron@hybridgroup.com>
v0.29.0
2024-10-30 17:02:40 +00:00
deadprogram d04e68bef8 bugfix: correct casting of return value from adc as it was always overflowing the 8 bit result
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-10-29 07:28:29 +01:00
Ayke van Laethem 76a4276b5d pixels: do more extensive testing for roundtrip bugs between Set and Get 2024-10-28 09:07:15 +00:00
Ayke van Laethem 7d7efe25e7 pixel: fix Monochrome setPixel
Set/setPixel and Get weren't using the same indices. I've taken the ones
used in Get and applied them to setPixel too.
This fixes testImageNoise for the monochrome image.
2024-10-28 09:07:15 +00:00
deadprogram 0186d0905d pixel: remove monochrome image from random noise test
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-10-28 05:58:53 +00:00
deadprogram 2f3b5ca59a pixel: correct and clarify code for monochrome get/set pixels
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-10-28 05:58:53 +00:00
deadprogram ecae5e28ad pixel: add NewImageFromBytes() function to allow creating image from existing slice
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-10-28 05:58:53 +00:00
Daniel Esteban bcf3b84654 Revert "pixel: add NewImageFromBytes function (#713)" (#714)
This reverts commit 4fb5d7a0e5.
2024-10-28 01:11:52 +01:00
Ron Evans 4fb5d7a0e5 pixel: add NewImageFromBytes function (#713)
* pixel: add NewImageFromBytes() function to allow creating image from existing slice

Signed-off-by: deadprogram <ron@hybridgroup.com>

* pixel: correct and clarify code for monochrome get/set pixels

Signed-off-by: deadprogram <ron@hybridgroup.com>

---------

Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-10-28 00:59:39 +01:00
deadprogram f12454d4f7 uc8151: add FillRectangle() and SetScroll() functions to satisfy tinyterm.Displayer interface
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-10-27 23:23:31 +00:00
deadprogram 829ae09651 ssd1306: add FillRectangle() and SetScroll() functions to satisfy tinyterm.Displayer interface
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-10-28 00:09:01 +01:00
Ayke van Laethem 30f540c29f touch: add capacitive touch sensing on normal GPIO pins
Tested on the following chips/boards:

  * RP2040 (Raspberry Pi Pico)
  * ATSAMD21 (Adafruit PyBadge)
  * NRF52840 (PCA10056 developer board)
  * ESP8266 (NodeMCU)
  * ATmega328p (Arduino Uno)
  * ESP32C3 (WaveShare ESP-C3-32S-Kit)
  * FE310 (SiFive HiFive1 rev B)

The sensitivity threshold in the example may need to be adjusted per
board though, the default value of 100 typically recognizes when a cable
is being touched but the RP2040 for example is capable of doing much
more precise measurements if the power supply is sufficiently
noise-free.
2024-10-25 06:28:03 +01:00
Warren Guy 6d431e0726 Add I2C INA219 driver (#705)
INA219: add INA219 driver
2024-10-24 07:45:33 +02:00
Daniel Esteban f308f8fce0 Add sponsor button to key repositories 2024-10-23 16:22:42 +01:00
PWND0U 1c2b802f47 servo: Add function SetAngleWithMicroseconds (#695)
servo: Add function `SetAngleWithMicroseconds`,Adjust the angle by customizing the control pulse width
2024-10-23 15:56:41 +02:00
Marcin Białoń ce80e7582f epd1in54: add Waveshare 1.54inch B/W e-Paper display (#704)
epd1in54: add Waveshare 1.54inch B/W e-Paper display
2024-10-23 13:43:30 +02:00
HattoriHanzo031 109cab4f3b onewire improvements 2024-10-23 12:32:32 +01:00
Greg Herlein 07216d3051 expanded README to discuss need to change variables in examples 2024-08-25 20:31:26 +02:00
たぬき d688fa3f3f ssd1306: Add function SetFlip and GetFlip (#702)
* ssd1306: Add SetRotation function
2024-08-19 01:45:59 +02:00
Greg Herlein dd44f9220b removed what seems like an accidental home directory replace in go.mod 2024-08-14 20:00:38 +02:00
Ron Evans ee3842f639 pcf8591: add ADC only implementation for I2C ADC/DAC (#690)
Signed-off-by: deadprogram <ron@hybridgroup.com>
2024-07-01 22:06:25 +09:00
deadprogram 1bf1a11067 all: prepare release v0.28.0
Signed-off-by: deadprogram <ron@hybridgroup.com>
v0.28.0
2024-06-18 11:38:02 +02:00
leongross 848f5def03 nit: increase verbosity of espat NetNotify error (#684)
espat: increase verbosity of espat NetNotify error
2024-06-14 17:36:07 +02:00