├── CONTRIBUTING.md └── README.md /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contribution Guidelines 2 | Please ensure your pull request adheres to the following guidelines: 3 | 4 | * Please search previous suggestions before making a new one, as yours may be a duplicate. 5 | * Please make an individual pull request for each suggestion. 6 | * Use the following format: \[RESOURCE\]\(LINK\) - DESCRIPTION. 7 | * Keep descriptions short and simple. 8 | * End all descriptions with a full stop/period. 9 | * Make sure your text editor is set to remove trailing whitespace. 10 | * Order projects alphabetically within each category. 11 | * Check your spelling and grammar. 12 | * New categories, or improvements to the existing categorisation are welcome. 13 | 14 | Thank you for your suggestions! 15 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome AVR Microcontrollers 2 | A curated list of awesome AVR tools, libraries, resources, and shiny things. Inspired by awesome-... stuff. 3 | 4 | - [Awesome AVR](#awesome-avr) 5 | - [Boot Loader](#boot-loader) 6 | - [Driver](#driver) 7 | - [EEPROM](#eeprom) 8 | - [I2C](#i2c) 9 | - [ISP](#isp) 10 | - [JTAG](#jtag) 11 | - [Keyboard](#keyboard) 12 | - [LCD](#lcd) 13 | - [PWM](#pwm) 14 | - [SPI](#spi) 15 | - [TWI](#twi) 16 | - [USART](#usart) 17 | - [USB](#usb) 18 | - [Wireless](#wireless) 19 | - [nRF24L01](#nrf24l01) 20 | - [ZigBee](#zigbee) 21 | - [Xmega](#xmega) 22 | - [Miscellaneous](#miscellaneous) 23 | - [Hardware](#hardware) 24 | - [Programmers](#programmers) 25 | - [Software](#software) 26 | - [Compilers](#compilers) 27 | - [Integrated Development Environments](#integrated-development-environments) 28 | - [Simulators](#simulators) 29 | - [Resources](#resources) 30 | - [Articles](#articles) 31 | - [Books](#books) 32 | - [Videos](#videos) 33 | - [Websites](#websites) 34 | - [Other Awesome Lists](#other-awesome-lists) 35 | - [Contributing](#contributing) 36 | 37 | ## EEPROM 38 | * [i2ceeprom](https://github.com/w0qs1/i2ceeprom) - A simple C library for interfacing with 24CXX series I2C EEPROMs. 39 | 40 | ## I2C 41 | 42 | * [i2cdevlib](https://github.com/jrowberg/i2cdevlib) - I2C device library collection for AVR/Arduino or other C++-based MCUs. 43 | * [I2C-master-lib](https://github.com/g4lvanix/I2C-master-lib) - Lightweight I2C library for 8-bit AVRs. 44 | 45 | ## Keyboard 46 | 47 | * [tmk_keyboard](https://github.com/tmk/tmk_keyboard) - A keyboard controller firmware for Atmel AVR USB family. 48 | * [AVR-Keyboard](https://github.com/BathroomEpiphanies/AVR-Keyboard) - USB Keyboard firmware for Atmel AVR microcontrollers. 49 | 50 | ## LCD 51 | * [I2CLCD](https://github.com/w0qs1/i2clcd) - A simple C library for interfacing with I2C LCDs. 52 | 53 | ## SPI 54 | 55 | * [AVRLib/SPI](http://www.tinkerer.eu/AVRLib/SPI/) - Serial Peripheral Interface. 56 | 57 | ## USB 58 | 59 | * [v-usb](https://github.com/obdev/v-usb) - A Firmware-Only USB implementation for Atmel's AVR Microcontrollers. 60 | * [LUFA](https://github.com/abcminiuser/lufa) - A lightweight USB Framework for AVRs. 61 | * [libusbx](https://github.com/libusbx/libusbx) - A cross-platform user library providing access to USB devices. 62 | 63 | ## Wireless 64 | 65 | * [rf24boot](https://github.com/nekromant/rf24boot) - nRF24L01+ bootloader for avr and other mcus. 66 | * [libnrf24l01p](https://github.com/omriiluz/libnrf24l01p) - NRF24L01+ Transceiver library. 67 | * [RF24Network](https://github.com/maniacbug/RF24Network) - Network Layer for nRF24L01(+) Radios. 68 | * [nrf24L01_plus](https://github.com/kehribar/nrf24L01_plus) - Portable nrf24L01+ library with auto acknowledgement and auto retransmission support. 69 | * [arduino-nrf24l01](https://github.com/aaronds/arduino-nrf24l01) - An Arduino port of the [nRF24L01](http://www.tinkerer.eu/AVRLib/nRF24L01) library. 70 | * [NRF24-BTLE-Decoder](https://github.com/omriiluz/NRF24-BTLE-Decoder) - Sniff and decode NRF24L01+ and Bluetooth Low Energy using RTL-SDR. 71 | * [AVRLib/nRF24L01](http://www.tinkerer.eu/AVRLib/nRF24L01/) - Nordic Semiconductor nRF24L01. 72 | 73 | ## Miscellaneous 74 | *Useful libraries or tools that don't fit in the categories above or maybe just not categorised yet* 75 | 76 | * [AVR Libc](http://www.nongnu.org/avr-libc/) - A high quality C library for use with GCC on Atmel AVR microcontrollers. 77 | * [light_ws2812](https://github.com/cpldcpu/light_ws2812) - A lightweight library to control WS2811/WS2812 based LEDS and LED Strings for 8-Bit AVR microcontrollers. 78 | * [avr-os](https://github.com/chrismoos/avr-os) - A multitasking OS for Arduino and AVR platforms. 79 | * [AVR-Crypto-Lib](http://avrcryptolib.das-labor.org/) - A library providing implementations of cryptographic algorithms for the AVR 8-bit microcontroller family. 80 | * [libemb](https://github.com/wendlers/libemb) - A collection of libraries which try to make things needed in many MCU based projects more convinient. 81 | * [Pocket AVR Programmer](https://github.com/sparkfun/Pocket_AVR_Programmer) - Example firmware and board files for the Pocket AVR Programmer. 82 | * [avr-tutorials](https://github.com/abcminiuser/avr-tutorials) - LaTeX typeset versions of my popular AVR Tutorials. 83 | * [AVRliberty](https://github.com/dreamiurg/avr-liberty) - Library of routines for AVR microcontollers. 84 | * [AVR-EAX-AES-bootloader](https://github.com/sirgal/AVR-EAX-AES-bootloader) - Bootloader for AVR microcontrollers featuring EAX mode encryption in 1024 bytes. 85 | * [ArduinoAES256](https://github.com/qistoph/ArduinoAES256) - Ilya's byte-oriented AES-256 implementation implemented for Arduino. 86 | * [Arduino AESLib](https://github.com/DavyLandman/AESLib) - Arduino Library for AES Encryption (source based on avr-crypto-lib). 87 | * [avr-libs](https://github.com/supermucca/avr-libs) - Some other libraries and code examples for interfacing AVR microcontrollers with external devices 88 | 89 | # Software 90 | *Software for creating a development environment.* 91 | 92 | ## Compilers 93 | *List of AVR compilers* 94 | 95 | * [avr-gcc](https://gcc.gnu.org/wiki/avr-gcc) 96 | 97 | ## Integrated Development Environments 98 | *List of AVR nominal IDEs.* 99 | 100 | * [Atmel® Studio](http://www.atmel.com/tools/atmelstudio.aspx) 101 | * [CodeVisionAVR]() 102 | 103 | ## Simulators 104 | *List of AVR Simulators* 105 | 106 | * [simavr](https://github.com/buserror/simavr) - A lean, mean and hackable AVR simulator for linux & OSX. 107 | 108 | # Resources 109 | *Various resources, such as books, websites, and articles for improving your AVR development skills and knowledge.* 110 | 111 | [AVR Resources](https://github.com/IsaacAneek/avr-resources/) - A curated list of resources to learn AVR Atmega328p 112 | 113 | ## Articles 114 | *Fantastic AVR related articles.* 115 | 116 | ## Books 117 | *Fantastic AVR related books.* 118 | 119 | * [Make: AVR Programming](http://littlehacks.org/AVR-Programming) - Learning to Write Software for Hardware. 120 | 121 | ## Videos 122 | *Fantastic AVR related videos.* 123 | 124 | ## Websites 125 | *Useful AVR related websites.* 126 | 127 | * [AVR Freaks](http://www.avrfreaks.net/) - AVR Freaks Forum. 128 | * [AVR Projects](http://www.avrprojects.net/) - Free projects for 8-bit atmel avr microcontrollers. 129 | * [Arduino for Projects](http://duino4projects.com/) 130 | * [ATmega32 AVR](http://atmega32-avr.com/) 131 | * [PIC-Microcontroller](http://pic-microcontroller.com/) 132 | 133 | ## Persian Websites 134 | 135 | * [avr92](http://avr92.ir/) 136 | 137 | ## Other Awesome Projects 138 | *Collection of useful codes, snippets, ...* 139 | 140 | * [AVR-Programming](https://github.com/hexagon5un/AVR-Programming) - Code examples for the book "Make: AVR Programming". 141 | * [AvrProjects](https://github.com/KonstantinChizhov/AvrProjects) - Different projects and drafts for Atmel's avr controllers. 142 | * [Tinkerer's AVRLib](http://www.tinkerer.eu/AVRLib/) - A small collection of code snippets which are often needed programming Atmel AVR-Controllers. 143 | 144 | # Other Awesome Lists 145 | *Other amazingly awesome lists* 146 | 147 | * [lists](https://github.com/jnv/lists) - List of (awesome) lists curated on GitHub 148 | * [awesome-awesomeness](https://github.com/bayandin/awesome-awesomeness) - A curated list of awesome awesomeness. 149 | * [awesome](https://github.com/sindresorhus/awesome) - A curated list of awesome lists. 150 | * [awesome-cpp](https://github.com/fffaraz/awesome-cpp) - Awesome C/C++ frameworks, libraries, resources, and shiny things. 151 | * [free-programming-books](https://github.com/vhf/free-programming-books) - List of Freely Available Programming Books 152 | * [papers-we-love](https://github.com/papers-we-love/papers-we-love) - Papers from the computer science community to read and discuss. 153 | 154 | # Contributing 155 | Please see [CONTRIBUTING](https://github.com/fffaraz/awesome-avr/blob/master/CONTRIBUTING.md) for details. 156 | --------------------------------------------------------------------------------