Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Rc Switch | 1,580 | 10 months ago | 270 | C++ | ||||||
Arduino lib to operate 433/315Mhz devices like power outlet sockets. | ||||||||||
Arduino Kicad Library | 204 | 22 days ago | cc-by-sa-4.0 | |||||||
KiCad Symbol & Footprint Library for Arduino Modules (Shields, Sockets and Tiles) | ||||||||||
Yampad | 198 | a year ago | 2 | mit | ||||||
Feature-packed open source macropad | ||||||||||
Arduino.js | 109 | 12 years ago | other | ActionScript | ||||||
Experimental JavaScript-to-Arduino I/O. Implemented as a wrapper for the "AS3Glue" library (Rube Goldberg-esque stack: JavaScript <-> Flash <-> Socket/serial proxy <-> Arduino USB.) Next steps / fork ideas: NodeJS + WebSocket instead of socket proxy + Flash? | ||||||||||
Ethernet_enc28j60 | 74 | 7 years ago | gpl-2.0 | C | ||||||
[NOT MAINTAINED, NOT COMPLETED] Implementation of an Arduino-compatible socket layer library that uses Microchip ENC28J60 Ethernet controller. | ||||||||||
Arduino Robust Serial | 67 | 4 years ago | 1 | April 15, 2018 | 1 | mit | C++ | |||
A simple and robust serial communication protocol. It was designed for Arduino but can be used for other purposes (e.g. bluetooth, sockets). Implementation in C Arduino, C++, Python and Rust. | ||||||||||
The433 | 58 | 3 years ago | gpl-3.0 | C++ | ||||||
control 433MHz (compatible with Arduino libs) sockets/devices through web and time rules | ||||||||||
Iotsocket | 29 | a year ago | 5 | September 20, 2020 | mit | Python | ||||
A python-based secured IoT WebSocket to handle multiple clients simultaneously. | ||||||||||
Arduinocontrol | 27 | 4 years ago | JavaScript | |||||||
"Arduino Control" Gnome-Shell Extension | ||||||||||
Espscopea0 | 25 | 6 years ago | 4 | lgpl-2.1 | Arduino | |||||
On-line wave-forms of ESP8266's A0 in a web browser using web sockets |
Version 4.0.0
This is a library of KiCad schematic symbols and PCB footprints for most Arduino modules. You can use them to make your own PCB design which will effortlessly connect with your chosen Arduino module.
Currently included modules:
"Shield" means the module is designed to plug in from beneath your PCB. "Socket" means the module is designed to plug in from above your PCB. "Tile" means the module is designed to be soldered directly on to your PCB using surface-mount pads.
This library requires at least KiCad 6 to function, and is tested on KiCad versions 6.0.8 and 7.0.0. Note that the installation procedure is different for KiCad 6 and 7; please see the Library Installation section below.
All are welcome! Please open an Issue or Pull Request, as appropriate.
To install this library in your copy of KiCad, choose the correct section for your version of KiCad and follow the steps given. These instructions only cover automated installation using KiCad's built-in Package and Content Manager (PCM); manual installation is possible but not supported.
Warning: Do not change the nickname prefix from that given in step 4 below. If you do so KiCad will not assign the correct footprints to the symbols by default.
Recommendation: If you can, you should upgrade to KiCad 7.
Warning: Do not change the Nicknames from those given in steps 12 and 18 below. If you do so KiCad will not assign the correct footprints to the symbols by default.
I really hope you've found this library useful. If you'd like to buy me a beer in thanks for the work I put into it, you can make a donation using the button below:
Copyright 2017-2023, Nicholas Parks Young.
Except as otherwise noted, all content of this library is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License, with the following additional exception:
To the extent that the creation of electronic designs that use the Licensed Material can be considered to be Adapted Material, the Licensor waives Section 3 of the Public License with respect to these electronic designs and any generated files which incorporate data provided as part of the Licensed Material.
The two images "resources/banner.png" and "resources/icon.png" are licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. These images are derivatives of "Arduino Open-Source Community: Main Logotype RGB Colors" originally created by Arduino.
Original Images: Copyright 2013, Arduino. Derived Images: Copyright 2023, Nicholas Parks Young.
The word "Arduino" is a registered trademark of Arduino. This trademark is used in this library to refer to Arduino products and to identify Arduino-related non-commercial content, as permitted by Arduino's trademark guidelines. This project is not affiliated with nor endorsed by Arduino.
On Arduino modules it is not possible to categorically state the appropriate electrical type for some power pins, as that depends on exactly which module you're using and how it's connected in your design. Sometimes a pin must necessarily be a power input or output, or is internally disconnected by default, but some pins may be either depending on how you are using the module.
Regardless, I needed to make a decision about what electrical type to apply to these pins. I could use something like "passive" or "unspecified", but then KiCad's electrical rules checker (ERC) tool would not be effective in catching errors on these pins at all, whilst using "power output" can mean it objects to you joining pins together even when that's okay in some situations.
Therefore, I have adopted the following methodology for deciding the electrical type of a given power pin:
Two concrete examples:
Reset pins on Arduino modules have interesting electrical characteristics which mean that no KiCad electrical type exactly matches their functionality. I settled on "open collector" as the nearest candidate, but unlike a true open collector pin on an integrated circuit, the reset pins on Arduino modules have an internal weak pull-up and a reset button that can strongly pull low, so your design needs to be able to cope with all these situations. In other words, if you use the reset pin as an input to your PCB then you do not need to add a pull-up (doing so will actually make it less responsive). Conversely, if you want to drive the reset line in order to reset the module from your PCB, you need to ensure that you only ever pull it low: if you pull it high at the same time as an unwitting user hits the physical reset button, you've created a short between power and ground through the microcontroller, and that would be very bad.
The KiCad ERC cannot catch all the possible electrical errors on your design as it doesn't natively support the reset and power pins' electrical types. Even if the ERC says it's OK, double check it manually.
If the ERC says that your power pins are undriven, first manually check they are being driven. If they are driven, then add a "PWR_FLAG" component to the net to make the error go away.