{"push_id":968269570,"size":1,"distinct_size":1,"ref":"refs/heads/pins","head":"f769f74f9a377e656a97f474e12192f7505d21c4","before":"1e845e7178181166d9ef43c98fe4a53c5899d3ed","commits":[{"sha":"f769f74f9a377e656a97f474e12192f7505d21c4","author":{"email":"bfcdf3e6ca6cef45543bfbb57509c92aec9a39fb@waveform.org.uk","name":"Dave Jones"},"message":"Refactor low level implementation\n\nThis commit is a fairly major piece of work that abstracts all pin\noperations (function, state, edge detection, PWM, etc.) into a base\n\"Pin\" class which is then used by input/output/composite devices to\nperform all required configuration.\n\nThe idea is to pave the way for I2C based IO extenders which can present\nadditional GPIO ports with similar capabilities to the Pi's \"native\"\nGPIO ports. As a bonus it also abstracts away the reliance on the\nRPi.GPIO library to allow alternative pin implementations (e.g. using\nRPIO to take advantage of DMA based PWM), or even pure Python\nimplementations.","distinct":true,"url":"https://api.github.com/repos/waveform80/gpio-zero/commits/f769f74f9a377e656a97f474e12192f7505d21c4"}]}