I wrote last month about using Upverter, and now there's a new OSHW repository on the scene: Solderpad. While Upverter is trying to provide both cloud-based design tools and a repository, Solderpad has taken a more modest path and provides only a place for you to store your designs after you've used whatever tool you want to create them. So you might ask how that's any different from just storing your design on Github. Well, in addition to the Git-based repository, Solderpad adds these capabilities:
After @tautic alerted me to the opening of Solderpad, I took the opportunity to try it by entering my OSHW XuLA FPGA board as a Solderpad project. There's the normal procedure for starting an account (although you don't need one if you're only interested in looking at designs others have entered), and then you can create an entry for each project. Along with the project title, tags, links to external documentation and description (in markdown format, which I had to learn), you also select one of about a dozen OSHW licenses to cover your design (OSHW designs are hosted for free, closed-source requires a fee, I guess).
Once you create a project, you can either clone a git repository from Solderpad, or push an existing, local repository to Solderpad. This is where I had problems. I setup my public key per Solderpad's instructions so I could SSH with their site, but I was unable to push my existing repository to Solderpad because I was asked for a password that I didn't know. After an email exchange, they quickly fixed a problem with an SSH configuration queue and things started working.
After I had my Eagle schematic and board files pushed up to Solderpad's site, I decided to generate the files needed to support schematic, PCB and BOM viewing. I printed the schematic and PCB into PDF files named schematic.pdf and board.pdf, respectively. Then I used a ULP provided by Solderpad to output my BOM in JSON format. Then, in my local project repository, I created a .solderpad subdirectory and stored the schematic.pdf, board.pdf and bom.json files in it. (The Solderpad site requires this specific directory and these file names in order to locate the information for the various viewers it provides.) But after commiting the files to my local repository, I was unable to push them to the Solderpad site. It kept telling me my repository was already up-to-date. After exchanging four emails with the Solderpad guys, they identified that I had pushed my .solderpad files to a side branch, but I was pushing my master branch (which did not include the new files) to Solderpad. Doh! After merging my branch into the master, I was able to push the new files to my Solderpad project and see my schematic, PCB and BOM online.
After using both Upverter and Solderpad, which do I prefer? Right now, I have to give the nod to Solderpad for these reasons:
That said, there are a few things about Solderpad I would like to see improved:
Finally, there are a lot of new sites trying to be the repository for OSHW projects. That makes it hard for any one site to gather a critical mass of projects, meaning that developers have to post their projects in multiple places to reach a larger audience. And what happens to the projects when a site goes belly-up? (As will undoubtedly happen.) These problems wouldn't arise if repository sites had a way to share a single, central repository and they would just provide views into it. Solderpad seems to indicate this is possible with their site using git commit hooks. I haven't had a chance to look at this, but if it works then that's even more reason to use their service.