I've had a few days to play with my FPGA kit now since it arrived last week.
I'm going to get the moaning over with first, don't worry, it gets better later on, stick around...
The Papilio website freely admits that this product is inspired by the Arduino project. Well that's nice I guess. It doesn't help though. The Papilio website, nice as it is, is just as bad as the Arduino one.
Another thing the Papilio shares with the Arduino is the appalling manufacture quality.
Upon arrival, my Papilio showed poor quality soldering on all the through-hole parts (the jumper posts for voltage selection). I had to desolder and re-do all the through hole joints before I was happy that the thing would probably work before I took the power plug anywhere near it. If I pay £60 for something that is nothing more than a circuit board with a few simple parts on I want it FINISHED before I get it.
That's not the worst though. Three of the jumpers had NO solder on one side of the gap. Not even a bad joint, just no solder at all. Unbelievable.
My supplier is just as much to blame as the manufacturer, but I won't go into that now.
Anyway, rant over. I was ticked off but still prepared to finish the product for them on my bench before commencing with the festivities of hacking some cute little hello-world circuit together.
Step 1 is to solder on some female header strips to the IO ports. I don't mind this at all, my iron was already hot anyway right?
Step 2 is to plug it in and watch the power LED come on... check! Yup, it works.
Step 3 is to wander around the website looking for a hint regarding what software I need to actually flash code onto this thing. That was easy enough, it's easily found from the main page.
Step 4 is to wonder how to write code for this thing...
Hmm....
They don't go out of their way to make that easy. I couldn't find any recommendations regarding what dev tools to use, at least not on the main site. I had to download a bunch of tutorials first and then go with the average toolset that everyone seems to use. This turned out to be the "Xilinx Design Tools". Great, now all I have to do is download this installer and off we go!
Another minor rant (sorry)...
The analogy between Papilio and Arduino starts to dissolve when you realise that this Xilinx dev kit (apparently the most accessible one by all accounts), is almost 18 gigabytes in magnitude.
18,000,000,000 bytes. Seriously.
After regaining sensation in the left side of my body I bit the bullet and downloaded it. Then I went to bed. Later that week I installed the dev kit, and went to bed again, what with it being too late at night to actually do any useful hacking.
Only one further annoyance assailed me - the software doesn't play well with Windows 7. You have to "Run as administrator" if you want to do something exotic such as save a file to your hard drive (this is 2012 after all).
My gluttony for punishment was then sated when everything from that point onward began to run smoothly.
Breadboarding up a few switches and LEDs allowed me to throw some code on this FPGA board and coax life out of it! Then I soldered up a proper perfboard circuit with male headers to allow more long-term prototyping...
Great. Now I'm in business.
In a follow-up post I'll share some code that I used with this IO "wing" board that shows a 3-bit full adder configuration on the FPGA.
I'm going to get the moaning over with first, don't worry, it gets better later on, stick around...
The Papilio website freely admits that this product is inspired by the Arduino project. Well that's nice I guess. It doesn't help though. The Papilio website, nice as it is, is just as bad as the Arduino one.
Another thing the Papilio shares with the Arduino is the appalling manufacture quality.
Upon arrival, my Papilio showed poor quality soldering on all the through-hole parts (the jumper posts for voltage selection). I had to desolder and re-do all the through hole joints before I was happy that the thing would probably work before I took the power plug anywhere near it. If I pay £60 for something that is nothing more than a circuit board with a few simple parts on I want it FINISHED before I get it.
That's not the worst though. Three of the jumpers had NO solder on one side of the gap. Not even a bad joint, just no solder at all. Unbelievable.
My supplier is just as much to blame as the manufacturer, but I won't go into that now.
Anyway, rant over. I was ticked off but still prepared to finish the product for them on my bench before commencing with the festivities of hacking some cute little hello-world circuit together.
Step 1 is to solder on some female header strips to the IO ports. I don't mind this at all, my iron was already hot anyway right?
Step 2 is to plug it in and watch the power LED come on... check! Yup, it works.
Step 3 is to wander around the website looking for a hint regarding what software I need to actually flash code onto this thing. That was easy enough, it's easily found from the main page.
Step 4 is to wonder how to write code for this thing...
Hmm....
They don't go out of their way to make that easy. I couldn't find any recommendations regarding what dev tools to use, at least not on the main site. I had to download a bunch of tutorials first and then go with the average toolset that everyone seems to use. This turned out to be the "Xilinx Design Tools". Great, now all I have to do is download this installer and off we go!
Another minor rant (sorry)...
The analogy between Papilio and Arduino starts to dissolve when you realise that this Xilinx dev kit (apparently the most accessible one by all accounts), is almost 18 gigabytes in magnitude.
18,000,000,000 bytes. Seriously.
After regaining sensation in the left side of my body I bit the bullet and downloaded it. Then I went to bed. Later that week I installed the dev kit, and went to bed again, what with it being too late at night to actually do any useful hacking.
Only one further annoyance assailed me - the software doesn't play well with Windows 7. You have to "Run as administrator" if you want to do something exotic such as save a file to your hard drive (this is 2012 after all).
My gluttony for punishment was then sated when everything from that point onward began to run smoothly.
Breadboarding up a few switches and LEDs allowed me to throw some code on this FPGA board and coax life out of it! Then I soldered up a proper perfboard circuit with male headers to allow more long-term prototyping...
Great. Now I'm in business.
In a follow-up post I'll share some code that I used with this IO "wing" board that shows a 3-bit full adder configuration on the FPGA.