No one could predict that demand for Vampire 600 cards will be in such volume. Simply, in my wildest dreams I couldn't think that more than 100 of them will be sold. Now, I have no idea how much of them are send or how many more needs to be produced. It is not a problem when you need to solder few cards by hand but soldering thousands of them could take too much time, months, years... Biggest problem here is not time itself, problem is that after some time you are sick of it. You start to hate project itself each time more and more when you put single PCB on the desk and start soldering ~50 0402 capacitors by hand. Lot of people offered help in soldering but for various reasons they gave up after seeing the board. Man I trust the most when comes to soldering, kipper2k did amazing job lately by producing more than 500 Vampire 600 cards and sending them to end users. I have ended up in really bad situation because I had multiple task to handle, same time. I was soldering V600 cards for people from my pre-order list, doing 3 redesigns of Vampire 500 and Vampire 1200 design. Same time I entered into territory of high speed signals and I needed to read a lot to understand how DDR3 works. Like that was not enough I had to help with VHDL coding and Gayle/IDE integration into V500. More, BigGun Apollo-team leader after some discussion about our HDMI drivers told me that I should stop talking because I don't know anything about C++. I have found that as a challenge and took 2 months long classes about C++ at my university...
People from my pre-order list asked melot's of reasonable questions. Why they need to wait so long for the cards from me when people are getting them sooner from kipper2k. Answer is simple, if there were no my personal pre-order list none of this could happen. Without money from pre-order list I wouldn't be able to do anything. This story begins and ends with Amiga 600 but what about other models. In current situation there is no normal person who would start production of Vampire 500 without proper plan. How to announce it and survive demand who could be 10 times greater than with Amiga 600. Again, lot of people proposed that cards should be manufactured by professional company so we, from Apollo-team can concentrate on other things. I have tried to manufacture Vampire 600 V1 in Europe and cost for assembled board was around 800Eur so I had to give up. You see, for Amiga market demand is high but for professional manufacturer we are too small to reduce costs by having larger volume of the product. Yes, all is doable, but then forget about low price I m trying to keep here. As a person who want's to have control over certain things I m doing I have decided that only option is to get myself Pick and Place machine.
Professional PnP machines costs tens of thousands dollars so that was out of the question. Only company who produces affordable machine is NeoDen, but then again price is about 4000USD. Same time their low level models have one huge disadvantage, they don't have cam. In the days where USB cameras are everywhere for few USD? Searching the web I didn't find any other company in that price range but what I did find is that few people managed to build PnP machine from old printers, scanners and DVD players. There are also specialized robotics related sites where you can order everything from stepper motors to various controller boards. All of the things mentioned above were not possible in my case. Because of the price I can't buy any of commercial machines, even low end variants. On the other hand I can build machine, I can build anything but my enemy here is the time. For building PnP machine I would probably need 3 years of constant work so going in that direction could delay my other projects. By pure luck I stumbled on liteplacer.com website and start to read. The Low Cost Prototype Builder's Pick and Place Machine as is started on the site and it costs 1199â‚¬, still huge money for me but I had to do it. I was amazed how everything is well documented and I started discussion with Juha Kuusama, man behind this amazing project. He was very friendly and with help from ShK we find a way to get machine to me by using cheapest possible options. Then nightmare begins. About the things I had to do to get machine into my hands is not smart to talk. I only realized that there is close to nothing I wouldn't do for this project...
Box, huge, opening box, I m scared. There are thousands of parts inside, nuts, bolts, pipes, motors, wires. Assembly has started 28.6.2016 and ended up 4 days later, after ~18 working hours. Like I said , because all was documented properly all went fine. For tweaking machine I needed about 16 days more. So not bad. Initial plan was to dedicate on this one month, that was the only time I could afford away from Vampire project. No more or less. Complete assembly puts each of your skills to huge tests. Each time wondering is there something you did wrong. Juha did awesome job with LitePlacer and I m certain that with this project he made lifework and earned his place in scientific world's history. Combining mechanical and coding knowledge he made ultimate tool for every man cave. Using the machine is the experience that can hardly be compared to something else.
What's left to do and not included in the kit was SMDtrays, and for professional SMD trays price can go up to 1800USD, yes you read it right. To solve this problem I had to find plastic or aluminum profiles for other use who can be modified. Five days I have spend in my car, driving to every shop, store, mall in my and closest cities looking for something I can use. Sellers looked me like I m crazy because I was measuring everything from fly killing racket and his grip to the various toys. Can 8mm SMD tape fit and slide inside something. Finally I have found 10mm cable channels and used their cover bending it down to 8mm and gluing 4.8mm plastic tape on the bottom to ensure that parts won't move up and down once PnP needle picks them. In the process of making those trays I cut myself badly. That and many more pictures from LitePlacer's assembly stages you can find in Read More, Pictures, Files... section of this article.
LitePlacer - Placing 0805 capacitors on Vampire 600 V2 accelerator
In the process of making Vampire 1200 I have found only one problem. Card edge connectors with 150 pins are extremely hard to find. Fujitsu made them and then discontinued in 2000. Now they don't have replacement part. Original part number is: FCN-225J150-G/A. Connector itself is right angled with 1.27mm pitch and two separated sides. One side consists of 2x25 pins and another from 2X50 pins. Even building footprint for it was challenging. As I see it here we have only two options either we search for NOS or we manufacture those connectors. So far I have sent anywhere between 200-300 mails and made lot of phone calls with every person who had in his hands connector at least similar to what we need here. Searched over old newsgroups, tracked down people who owned Amiga shops 20 years ago, talked with every card edge manufacturer or reseller in the World. Even talked to Fujitsu directly. Most challenging was to read Japanese and Chinese web pages to be able to search their NOS. So far result is like this. In the existence there are 174 NOS connectors with insane prices and tooling fees with Sullins and Taiwan companies are huge for Amiga hobby projects. What can we say about connector itself. It is not even standard connector as Fujitsu sees it, it is not even listed in their datasheet where all versions of FCN-225J were listed. This decision Commodore made created pure nightmare for any potential hardware developer. Even back then, when Amiga 1200 was designed official proposal was to use two connectors, one with 50 and one with 100 pins, but even that is not an option now because also those are hard to find at normal prices. I keep asking myself after one week of constant searching for those connectors why did they make decision like that when lot of those pins are unused and any card edge connector with 120 pins could be used. Those connectors was standard then and they are standard now and probably they will be standard type of connectors in next 30 years. Another question is why they didn't put just simple 2.54mm pitch male header. All of this only tells me that someone tried to play monopoly game on the market, to create distance from other projects but like history teach us in some areas this is not smart to do. In reality put whatever you want inside box but for talking to outside world use exactly what everyone else uses. Talking about that makes no sense now, what is done it's done. I don't want to use PCI connectors and cut them because that won't look professional and it is time consuming if you consider that we will probably need to make at least 1000 Vampire 1200 cards. It would be also too stupid to have DDR3 on board and in the same time connector who is butchered and then glued. I ll probably find a way how to solve this problem like I solved many others in past years but situation where you need to pay for a connector same price as you are paying FPGA is not an option for now simply because makes no sense. IMHO those connectors shouldn't cost more than 5USD. Quantity we have now is enough to do one small series of cards but what happens later? Some drawings done by kipper2k and actual connector picture, datashet can be found in in Read More, Pictures, Files... section of this article.
Few days ago I have received all the parts needed to start production of the latest version of the Vampire 600. I had some small problems in soldering but as always I received some nice tips from Kipper2k :) Rest of the team worked hard on improving the apollo-core, constantly searching and killing bugs. I m certain that you were able to find lot of videos and pictures lately about this project on some other places by other members of the apollo-team but I wanted to show my configuration in everydays work. Remember, this is not latest apollo-core I m testing and not even fastest or most compatible. It is compiled more than 20 days ago just to show that latest hardware design works nicely.
More pictures in Read More, Pictures, Files... section of this article.
In the matter of hours latest and final design with all hardware problems found before removed will be sent to production. This time I have done much better job in creating 3D model of the board by using STEP models.
Next logical step was to send few cards to other developers inside Apollo development team. This will speed things up lot more because so far I was the only one in the team who had actual hardware. Working in the dark for other developers was nightmare and I was stuck with constant testings and bug hunting with the Apollo core itself. With my limited knowledge I was able to help to some point but I was frustrated because I didn't had much time left for other things, like finishing final version of the Vampire 600 V2 board. Now, when they received their packages team can work properly and I can focus on sending latest design into production. I have sent boards to BigGun, ceiach, ShK and cgugl. Just to mention that this board will never enter serial production. It will be used only for development purpose.
Board sent to cgugl.
Board sent to ShK.
But this article is really about something else :) Kipper2k man from cold, cold Canada done some amazing work with current design in just two days. After me sending him design files I was so surprised to see how fast he is in soldering and getting everything running. IMHO best soldering skills that I have ever seen. From now on he will be sending more Vampire boards to the other developers.
So question is why we will succeed where everyone else failed? Because we are united in one goal to present something new and innovative to Amiga community. We are all from different parts of the world working as a perfect team for more than 15 hours each day. The same time we are acting more like family sharing our everyday stories and our experiences in various projects that's why makes it so fun. All of that with perfect guidance of BigGun and ceiach, developers who are able to motivate rest of us to learn more and contribute properly to this project.
Few months ago I was informed that there is another way to solder PCB, much faster way. Before that I didn't know that there is difference between soldering paste and flux or that such things as a PCB stencils exists. To tell you the truth I was completely unaware that there are some other methods of soldering than regular one. On the video below is my first attempt to solder PCB using stencil done yesterday.
Tools & Parts used: PCB
Soldering paste (Sn63/Pb37)
Solder paste spreader
IRDA soldering station
Selecting stencil: After reading a lot about various stencils I have decided to order each and every version that's available, also considered doing homemade version but eventually that was removed as an option because PCB is way too complex. So basically you can order stainless steel or stencil based on polyimide films (mylar or kapton). In the table below you can see my impressions regarding each of them.
~100Eur, in some cases more
Medium, stencil is not so flexible
Medium, one stencil can be used for building about 200 PCB
My vote goes definitely for polyimide film based stencils. Not just because the price is lower but because it is really tricky to apply soldering paste on stainless steel stencil where FPGA should be placed. Because low flexibility you will end up with too much paste there once you remove stencil. With polyimide stencils that is not the case. They bend nicely under solder paste spreader so you will have proper quantity of paste placed on components pads each and every time.
Soldering: Only important thing here is temperature profile you must follow if you don't want to destroy components. Each manufacturer states maximum temperature values that we can't exceed. What we need is temperature values who will solder component and not overheat it and that's something done over defined period of time. Also In each component we can find moisture so if we heat component too much or too fast component will crack. This is temperature profile I m using.
Last few month you could find lot of images on the web regarding Phoenix core inside Vampire 600 V1 but those are the first official pictures from me and results of Phoenix core inside new accelerator Vampire 600 V2, smallest accelerator ever produced for Amiga. I must say that Apollo-team did great job and in last few years we were working so hard every single day. Happy days for Amiga are yet to come...
Since demand for Vampire 600 V1 was so high I decided to redesign the board, add some more features, bigger FPGA, make board smaller and in any way better designed. Real reason for doing this was high demand for V1 I was unable to fulfill. All day night I was soldering to produce enough boards and I just couldn't keep up with that. Also my problems with customs I have mentioned number of times on various forums. Another reason was bug we had in V1 regarding RESET, bug was solved later in code but I didn't liked the idea to continue development of that card who has hardware bug. In V1 we had small FPGA, at the time that was more than enough but after apollo-team started to port Phoenix core to Vampire design soon enough we end up with lack of LE in our FPGA. For emulating MC68000 8K LE FPGA was enough but after we decided to emulate MC68020 instructions each day this FPGA was telling us that we are wasting our time. This time we will try to not create the same mistake. For easier soldering we are going with FPGA build in BGA package. This FPGA also have some benefits because his PLL can directly accept 7MHz signal from Amiga motherboard so we don't need to use external crystal oscillator on the board to get system synchronization to the mentioned clock signal. Memory size and model will stay the same, so for FastRam we will have 64MB of SDRAM memory who is better designed now regarding traces length. PCB itself is done in 4-layers and that will secure better GND plane and such thing is important if we aim for higher frequencies. For voltage regulation this time switching regulators are used instead linear ones and that will ensure proper work with any Amiga power supply because it will give enough power no matter how core inside of FPGA become complex and how much current it will take. On the board more capacitors are added, and there also we pickup smaller sizes 0402. All of that ensured that this board with his size of 50mmX100mm have good chances to become fastest and smallest Amiga accelerator board ever produced. Designing such board was nightmare because FPGA pads pitch was 0.8mm so Via hole diameter between those pads needed to be 0.2mm and that is something hard to produce for most of the PCB manufacturers. I played a risky game here now knowing how much production of such board can cost and placed the price of the board to 90 Eur before quotation from PCB manufacturer is finished. But after so much work it is about the time to have some luck. Board can be pre-ordered on Amibay or directly contacting me. To understand complexity of this design please look at the pictures found in (Read More, Pictures, Files...) of this article.
URGENT UPDATE: March 29, 2015
Quick update to explain new situation.
As the Phoenix core getting bigger and more complex (having 3 instructions per clk as we speak) with future possibility to add FPU and get into never seen performance at least in Amiga world I had to change few things regarding design. This will affect the price since I just can't find a way to produce card for 90Eur and satisfy Phoenix core needs in the same time. Inside apollo-team we had 3 day long discussion about this. 10K LE Altera Cyclone III could easily fit in that price range but simply that is not enough for Phoenix. So new redesign is taking place and we will use 40K LE Cyclone III FPGA device instead and that is something I can't get cheap. What is discovered that price needs to go up to 120Eur now to cover everything. Also I have decided to cover all loses for early pre-ordered cards so this will not have any affect to those who already ordered and paid for their cards. So from now I can only accept 120EUR for pre-orders. Shipping for Europe 5EUR, rest of the world 10EUR.
OULU, FINLAND - October 27th, 2014 - Finnish Amiga Users Group recently
received offers for two separate Amiga 4000 computer donations, for giving
onwards to worthy Amiga causes. We are very grateful for these generous
offers and have coordinated them to the best of our abilities. The
machines and donations themselves have been handled by private people.
We are now happy to announce that the first one of the Amiga 4000 donations
is on its way to the recipient, Igor "Majsta" Majstorovic in Bosnia. Igor
has worked tirelessly and selflessly on Field-Programmable Gate Array (FPGA)
accelerator cards to bring a modern solution to speeding up our old Amigas,
and we hope this donation we facilitated helps him in that work. The
donation also includes Amiga 4000 accelerator board connectors, plentiful
accessories and some Amiga mementos as well.
UPDATE: November 21, 2014
Received two huge packages. I will write about the things I received in new article after I solve few problems with monitor. He is heavily damaged, cathode tube was moved from its place, most of the wires inside are disconnected, lot of bended pins. It is sad because monitor looks from the inside and outside just like he has left the factory just now. I was repairing it all day and made some progress, got to the menu screen but still he is not working. In the tiny space inside monitor case I left lot of my blood, nasty fingers cuts... Destroyed my hands totally, but hey, it can't get any better than to mix my blood with Amiga devices :)
This is the first public Phoenix core test. Despite some haters statements that this demo was written specially for Phoenix just to trick everyone that core is fast I must say that this is not true. Demo was tested in number of Amiga configurations and here are the results.
In fact you can test the demo on your system and report the results. You can find it in Read More, Pictures, Files... section of this article.
phoenix_demo4 - start from workbench
phoenix_demo4.bin - start from WinUAE selecting it as an main ROM file with 64MB of Motherboard fast.
You may noticed that 3 Vampire 600 boards are send somewhere but no one from pre-order list have been contacted. Don't be mad just read the story. On 21 Aug 2013 I became Apollo Team Member. What is Apollo you may wonder? Apollo-core is fastest FPGA core today and it is based on MC68K series of CPU. Again, you may ask why all of this is important for us? Yes we can run it inside Vampire accelerator series and get fastest Amiga accelerator ever produced. Now you know where are those 3 boards left. For past few days we are doing lot of work regarding optimization of the Apollo-core because original core can't fit into small FPGA used on Vampire 600. New core is taking shape, code named Phoenix, targeted at 100Mips and available as update for current core Vampire 600 is using at the end of November. What is my role in coding you may ask. I will be doing integration of Phoenix to Amiga Bus and few other things. So far I have created 500 lines of code and it seems that I will need to create 1000 more to get it done. All the time I was waiting for the opportunity to work with such names and to learn from them. Don't get me wrong but again I m proud that they recognized my hard work and invited me to the team. Final conclusion is that if all goes well there will be no point of building another accelerators instead FPGA accelerators. I must say that soon no one from other developers will be able to keep up with this.
UPDATE: September 11, 2013
After publishing this information's I noticed that too much people suggesting how and what needed to be done and why all of this is not possible. The same thing happened to most of the Amiga projects where developers just couldn't keep up with various demands. Adding some non standard features to the core usable for only few programmers takes time and most of the people will never notice or use that part. All of those comments created argue in Apollo team so we agreed that we will stop talking about complete project to the day we have first results. I didn't notice anyone contacting me about using schematics of Vampire 600 I published. So instead of talking what and how something should be done do it yourself. Enough said.
For some reason I had to see how all of this performs online and I m satisfied! Is it usable in any way? Yes it is! Like you can see on attached video simple web sites can be used, forums etc. Let me say that maybe 70% of the things you normally do online can be done. But, I have a feeling that all of this could be much better if I had opportunity to connect Amiga to different monitor. Strange thing is that MiamiDX didn't worked and it seems that he have some problems with DNS. For best performance I used Voyager and Aweb. I m disappointed to IBrowse because he was slowest so I don't use it at all. Yes I know that everyone said that he is the fastest one but not in my case. It seems to me also that Voyager have very dirty code with strong will to crash sometimes. On other side is AWEB solid and stable and with few tunings maybe can get most from new sites. Strange thing is that new browsers like OWB and NetSurf needs FPU and ixemul libraries optimised for FPU. Conclusion to this would be that developers are going in wrong way because soon we will have emulated MC68K inside FPGA capable of much more than MC68060 with FPU. On other side there is very interesting project called Merlin Web browser who works on regular MC68K and it has support for CSS it is not stable but it has potential for shore.
For some of you this may not look so strange at all but to me, person who actually never had an Amiga before, it was quite surprise to see Doom running on A600. Yes that's because Vampire 600 is doing acceleration but still I had so much questions in my mind looking at this. Without "real" graphic card, without any serious hardware and comparing that to minimum requirements for PC version gives me permission to say PC is just a trash, who stayed alive all of those years because people those days just don't know about anything else. To play PC version of Doom I had to spend serious amount of money back in the days and still game was not playable. On the paper 486 CPU is much better than older CPU's from MC68K series. Some versions are capable of 50Mips or more but for playing this type of games we needed graphic card, sound card and at least 8MB of memory so comparing Amiga 600 with all of this makes me smile. Small machine sitting on the table and able to perform much more than 486 in huge, heavy case with tons of cables and power consumption 10 times greater than A600.
After today's testing I think that I m proud to myself more than ever. Hey!!! I created my own hardware, in some basement, able to play 3D game, able to play Doom. Imagine!!!
As you may noticed some very interesting things are happened regarding this project but news about that I didn't publish on this site. One Vampire 500 was sent to robinson5 from retroramblings.net and it was the one that I used for my testings. This is maybe most important thing happened to complete Vampire FPGA project because we are now in situation that we have opportunity to exchange codes and to point each other what might be a problem. We have already exchanged few mails and codes and it is very interesting to me that we solved few problems but using different approach. It is normal that two people can think different and coding in VHDL is something that is easier to create than to understand what someone wanted to do with specific part of the code. Another great discovery from robinson5 was bad solder joint on A16 trace of Vampire 500 and that was the reason why my code didn't worked. Earlier I have discovered that there was problem with one resistor placed on 7Mhz clk trace so after solving those hardware barriers everything regarding code should not be such problem.
From the start of this project people on various forums are again against my projects talking that Amiga 500 uses MC68K to the max and that I will never be able to create something that is done for Amiga 600. What can I say about that, only few lines of code were needed to be implemented in old code and everything worked. Now we have 3 versions of the code and all of them are working fine and main differences are in solving accesses to MC8600 peripherals.