Embedded Swift
A curated list for Embedded and Low-Level development in the Swift programming language.
Table of Contents
Microcontroller units
Single Board Computers
- buildSwiftOnARM - 🛠All you need to build Swift on a RaspberryPi or other ARM boards, updated to Swift 5.1.1
- Swift on Balena - Docker images for Swift on Raspberry Pi and other ARM devices from balena’s base images.
Communication
Networking, IoT, Bus Protocols, …
- SwiftyGPIO - ⚡️A Swift library for hardware projects on Linux/ARM boards with support for GPIOs/SPI/I2C/PWM/UART/1Wire.
- SingleBoard - GPIO Library for Single Board Computers (Raspberry Pi / Rock 64)
- SwiftyXBee - ⚡️ A Swift library for communicating with XBee radios in API mode
- SwiftLinuxBLE - SwiftLinuxBLE is a lightweight convenience wrapper for the PureSwift BluetoothLinux library.
Displays
- SwiftyOLED - A Swift library for OLED displays based on SSD1306 and SSD1305 drivers.
- SwiftyTM1637 - A Swift class to drive the TM1637 chipset (i.e. 7-segment LK-Digi Display)
- 5110LCD_PCD8544.swift - A Swift library for the Nokia3310/5110 PCD8544 Monochrome LCD display
- HD44780CharacterLCD.swift - A Swift library for 16x2/20x4 Character LCDs with the HD44780(or clones) controller
- LCD20x4_i2c - LCD20x4 Driver in swift for raspberry pi wiring in i2c
LEDs
- swift-raspberry-pi-adafruit-led - Swift implementation for accessing adafruit LEDs on a raspberry pi
- WS281x.swift - A Swift library for WS281x (WS2811,WS2812*,WS2813*) RGB led strips, rings, sticks, matrices and more.
Sensors
- SwiftySHT20 - ⚡️ A Swift library for the I2C SHT20 Humidity and Temperature Sensor.
- LSM303 - LSM303 Accelerometer access through Swift on Raspberry Pi
- PCA9685 - PCA9685 I2C Driver for Swift
- HCSR04.swift - A Swift library for the HC-SR04 (US-015 and similar) ultrasonic ranging sensors.
- DS18B20.swift - A Swift library for the DS18B20 digital temperature sensor
- RCWL-0516-Radar.swift - A Swift library for the RCWL-0516 Microwave Radar
- Nunchuck.swift - A Swift Library for the I2C Wii Nunchuck controller.
- DS1307.swift - A Swift library for the DS1307 (DS1302, DS3231) I2C Real-Time Clock
- MPU-6050.swift - A Swift library for the MPU-6050 (and MPU-6000 family) Accelerometer and Gyroscope
- UBloxGPS.swift - A Swift library for boards with the u-Blox 6/7/8 family of A-GPS receivers
- DHT-SwiftyGPIO - SwiftyGPIO with RaspberryPi + DHT11 Module
Modules
- MCP3008.swift - A Swift library for the MCP3008 (and MCP3002,MCP3004) 10 bits SPI ADC
- MCP4725 - Swift library for interacting with the MCP4725 I2C 12-bit DAC.
- SG90Servo.swift - Swift library for the SG90 Servo Motor, adaptable for other servos (9g ES08A, SM-S4303R, S3003, etc…).
Graphics
- SwiftyGFX - A Swift graphics library useful when working with dot matrix displays.
Contribute
Contributions welcome! Read the contribution guidelines first.
License
To the extent possible under law, Devran “Cosmo” Uenal has waived all copyright and
related or neighboring rights to this work.