Trouble Loading a GitHub Library


I'm trying to load a library written by Cort Buffington for the MCP23S17 chip. It's on GitHub but every time I've tried to include it into the library via the "Add .zip Library" I get an error message "specified folder/zip file does not contain a valid library". I've tried to troubleshoot the process with no luck and was wondering what the heck I'm doing wrong. Is there something wrong with the GitHub files or is there something wrong with me. I suspect the latter!

Any help would be greatly appreciated.


Please post a link to the GitHub page.

Extract the files from the zip and install it manually

List the files in the zip here for further help

My guess is it's something really silly, like an extra layer of folders. Or maybe not enough layers of folders. Very likely something like that.

I would second the "just install it manually"

Personally i avoid the board and library managers like the COVID... (I wear gloves and a mask while I prepare the board manager releases...)

Thanks for the quick response guys. I've tried manually, I think, but it doesn't seem to work either!

This is the link to the files I'm trying to get: GitHub - n0mjs710/MCP23S17: Arduino Driver for Microchip MCP23S17

It looks like someone else has had a problem as well: cannot import .ZIP library in Arduino IDE · Issue #18 · n0mjs710/MCP23S17 · GitHub

I've been looking around online for quite a while trying to get these files loaded into my library but as yet no success. For any of you with knowledge of the MCP23S17 is this the best library to use for using this chip or is there a better alternative? Should I just move on and stop wasting time?

No problem here. Downloaded the zip file from github, extracted it to MCP23S17-master, then copied MCP23S17 directory from there to Arduino/libraries. All the example sketches compile correctly. You may need to restart the IDE after copying the library into the libraries folder before the examples will show up.

As DrAzzy guessed, the problem is that the library author placed the library in a subfolder of the repository. The Arduino IDE requires the library to be in the root of the .zip file for the "Add .ZIP Library" installation method to work.

I have submitted a pull request to fix this issue:

I've tried manually, I think, but it doesn't seem to work either!

Please provide a detailed description of what you mean by "doesn't seem to work". If you're getting any error messages, then post the full and exact text of the error messages.

Well, so much for that. n0mjs710 just deleted the repository. I think that's a good sign that you should look for an alternative library. If the author doesn't think it's good enough to keep, that's probably a sign it's low quality.