Skip to content

Commit

Permalink
More updates!
Browse files Browse the repository at this point in the history
The editor froze and I had to submit or lose everything, this is finishing off the work from the previous commit.
  • Loading branch information
Alarm-Siren authored Nov 28, 2017
1 parent 45f20d6 commit c13aec5
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,13 @@ Currently included are:

Shield means the Arduino is designed to plug in from beneath your PCB; socket means it is designed to plug in from above.

## Comments, Requests, Bugs & Contributions
All are welcome. Please file an Issue or Pull Request at https://github.com/Alarm-Siren/arduino-kicad-library

## License
Copyright 2017, Nicholas Parks Young. Some Rights Reserved.
This library is licensed under the GNU LGPL v2.1, which can be found in file LICENSE.txt.

## Library Setup
To add this library to your KiCad Project, do the following steps:
1. Copy the source files to your Project. Make sure that the Arduino.pretty folder structure is preserved.
Expand All @@ -25,21 +32,14 @@ To add this library to your KiCad Project, do the following steps:
7. In the new line of the table, set Library Path to "$(KIPRJMOD)\Arduino.pretty" and ensure Plugin Type is "KiCad". Options and Description can be left blank. You should set Nickname to something descriptive - like "Arduino" for example!
8. All done: you are now ready to use these schematic components and footprints!

## Comments, Requests, Bugs & Contributions
All are welcome. Please file an Issue or Pull Request at https://github.com/Alarm-Siren/arduino-kicad-library

## License
Copyright 2017, Nicholas Parks Young. Some Rights Reserved.
This library is licensed under the GNU LGPL v2.1, which can be found in file LICENSE.txt.

## A note about Power and Reset pins

### Power
On the Arduino Platform, it is not possible to categorically state that the power pins are "power inputs" or "power outputs", as that depends on exactly how you're using the Arduino. For example, if you're powering the Arduino from USB then GND, +3.3V and +5V would be power outputs and VIN would do nothing, whereas if you're powering the Arduino from a battery via your Sheild then VIN and GND are power inputs whilst +5V and +3.3V are power outputs. There are other, more esoteric possibilities too.

Regardless of the above, 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 means it objects to you joining pins together (for example, joining all the GND pins into a common net) even when that's OK in some situations.

Therefore, I have decided to use Power Input as this presents the least issues.
Therefore, I have decided to use Power Input as this presents the least issues. This means if you're actually using any of the power pins as Power Outputs in your schematic, by default the ERC will complain that the relevant nets are undriven. To fix this you will need to add a special "PWR_FLAG" component to the affected net.

### Reset
Reset pins on the Arduino Platform 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 the Arduino Platform have an internal weak pull-up, and the reset button that can strongly pull low, so your circuit needs to be able to cope with all these situations.
Expand Down

0 comments on commit c13aec5

Please sign in to comment.