About six months ago I built an Asterisk box for my home network. It allowed my to manage the phones around my house much better and to give a little more control as to what rings where and when. Everything more or less worked ok, but I had built it on my main file server and due to a motherboard issue the Openvox A800P card I had would occasionally have interrupt issues and make the calls choppy. I was able to correct most of these issues by not using the FXS daughter cards on the A800P by using a Cisco/Linksys PAP2T phone adapter, but still could generate problems with large amounts of disk activity which on a file server happen quite often. Additionally, I wanted to make the phone server to be separate from the file server.
After looking around I found an ideal box for my new server. Jetway offers a tiny Intel Atom based server the JBC110C96-525-B which has just enough room to fit the A800P card into it, which was a concern. Actually, getting the card into the machine was kinda tricky and I was concerned I was going to break it. The machine was cheap (< $200 from NewEgg) considering it reports itself as a 4 core 1.8 Ghz processor (I'm sure two are hyperthreaded) and with 2GB of RAM in it, runs very nice. I had a spare 160GB laptop SATA hard drive that I used as the primary storage. You really only need about 20GB for a PBX in a Flash (PIAF) install, and even that is overkill. Tempting to run it off a flash drive.
My experience with PIAF has been hit and miss. I like that everything pretty much works as they say it does. However, I don't like that they don't bother to package all the customizations as RPMS like the base system. To me it would be a big win if they bothered to do that. I also needed to patch the dahdi drivers to support the A800P card. Which if I had not done it before would have been much more difficult. I'm not sure why PIAF can't just provide these drivers in the base install.
Second FreePBX the web management interface to Asterisk has some real problems. I could not get it to configure my outgoing calls to go the way I wanted them, so I actually ended up removing the FreePBX generated configuration files and ended up using my own from the last server. I'm sure I'm losing some features by doing this, but the frustration of making it work drove me nuts. Probably some of this had to do with me not understanding the software that well, but it appeared to me that I had configured it correctly.
All in all the hardware is great, cheap, and dead quiet. The box has plenty of power to handle multiple calls. I've very positive it could scale to at least 10 with no problem, and probably 25 to 30. If I could get a pair of 1.5TB 2.5" SATA drives that were cheap and reliable (seems to be some issues with the quality of these drives at the moment) I would be very tempted to replace my big file server with one of these boxes.
All in all, I'm happy with the hardware I chose, not as much with the software, but there doesn't seem to be any better option at this point.