This project will only be funded if at least €3,000 is pledged by .
About this project
(if video doesn't play, download here: http://grindhold.de/pinmagic_cf_trailer4.ogg )
PinMagic
Makers, hackers, tinkerers, wireheads, techies and other carbon-based lifeforms out there behold! I present to you PinMagic, a free-as-in-freedom logic editor and code generator written for (but not necessarily limited to) your RaspberryPi.
With PinMagic you can put together digital circuits and then use the GPIO pins of your RaspberryPi to emulate them. For rapid prototyping, for learning the fascinating field of digital electronics or simply for testing circuits before buying actual components to build it, PinMagic is just the right helper for your awesome projects.
The workflow couldn't be simpler:
- A new project starts with inputs and outputs that you can activate at will.
- Create new logic elements by drag'n'dropping them from the toolbox at the left.
- Interconnect them via drag'n'drop to form the circuit you desire.
- Hit the export button and PinMagic will generate a Python file that can be deployed and run on your RaspberryPi.
Please help this campaign to make this software reality.
What I need you for
I need to cover some expenses in order to realize this software:
- Buying hardware (see "Stretch Goals"-section)
- Server costs
- Visiting a few conferences to get the word out
- Last but not least, unfortunately I have some bills to pay, too (see "Background"-section)
If we are going to hit the 3000 €, you will get a GPL-licensed software tool that anyone can use to tinker and learn with for all times, for free and with no further strings attached. Featuring:
- Graphical logic editor
- Ability to save and load projects
- Ability to compile your logic projects down to Python
- Live-mode (if you let PinMagic run directly on a RaspberryPi, you can assemble your circuits live and watch the state of the connections between your logic gates)
- Basic logic gates (AND OR XOR NOT …)
- Flip-flops
- Multiplexer / Demultiplexer
- A neat package to install the program on your Debian or Ubuntu based machine.
- A neat package to install the program on Raspbian.
Furthermore I will instantaneously upload the software-prototype from the video to GitHub for you to tinker around with (altough it is very limited). Development on the final implementation will also happen in an open fashion on GitHub.
For your direct contributions there are a few attractive perks available, ranging from your name mentioned in the software's about dialog over neat stickers up to attractive possibilities to advertise on PinMagic's future website.
I will also start a blog on how development proceeds, so you can track my advances towards the release of PinMagic.
What has been achieved so far and what is to be done
The program that you see in the videos and images above is a prototype of PinMagic that I wrote over the last summer. It's purpose is to prove that writing a software like this is possible.
In this prototype I have built proof-of-concepts for the features that I want to include in the software. In this prototype, you can create projects, edit them, load and save them and compile them to python. You might ask yourself, what else I need to do. For example, the prototype features only one type of logic gate (the AND gate). This was sufficient for the proof of concept. But now it comes the time-intensive task of implementing out all the logic gates and gate compounds that the final tool will need to support. Then there is a lot of testing to do, unit-testing as well as testing by hand. There are nicer graphics to make. There are optimizations to do that concern the performance of rendering the digital circuits on screen. Then some kind of documentation has to be written, packaging has to be done.
Turning a prototype into a full-grown software is a big piece of work.
Stretch Goals
There are some attractive stretch goals that I will pursue if you decide that this project is worth more than 3000 €.
- Integrating more platforms: Though the RaspberryPI is an awesome board, there are more out there. There are several Arduinos, BeagleBones and others. The software is able to support more than one platform but this is another hard piece of work. I have to write new code for each and every logic-gate that PinMagic supports. Additionally I have to buy the hardware that the code should run on in order to test the feature.
- Integrating more logic components: There is a huge range of elements that I can imagine to be featured by PinMagic. I'd love to add support for counters, converters that turn bits into integers that you can do algebra with, and much more.
- Doing ports to other operating systems: Though developing on GNU+Linux, I pay attention to my program staying portable. I only use cross-platform capable dependencies. Thus there is a possibility to port PinMagic to Windows. (I cannot deliver an OSX port at the moment as I do not own any Apple computers).
Each of these goals means a great deal of work. For each additional 1000 € that this campaign gets, I will either integrate one additional platform, add the additional logic components or do the Windows port. Which of those stretch goals will be implemented will be up to the contributors to this campaign. I will provide you with a possibility to vote on this after the campaign has ended.
When will it be done?
If everything works as planned I will ship in the third quarter of 2016.
The Background
I am a certified software developer from Germany with a strong affinity for free (as-in-freedom) software and I want to make software that helps the people to use their computers for making the world a better place.
After doing my exams with the IHK (German chamber of commerce and industries) I decided to stay in academic circles and do my bachelors degree which, unfortunately, isn't very lucrative and I need a side job to cover my living costs. I want said side job to be working on PinMagic. I want to create something that I think is worth putting my blood sweat and tears into. If you think that PinMagic is a nice and useful idea, please enable me to do so for the next half year.
Risks and challenges
As described above, I tried to eliminate a huge load of potential risks upfront to starting this campaign by building a prototype and building proof-of-concept for every feature that I plan to realize. Few risks remain:
Windows-port could take longer than expected: Although I ensure to limit myself to use only cross-platform-capable libraries, porting can be quite a hassle with lots of unforeseeable little details that don't fit at first.
I will write a bunch of exams in the first quarter of 2016. This may slow down development for a few weeks.
FAQ
Have a question? If the info above doesn't help, you can ask the project creator directly.
Support this project
Funding period
- (60 days)