FiiO E07K Andes USB DAC/Amplifier

I have been complaining about computer audio for quite a while. Routing my headphone and microphone cabling around my desk has been a nuisance, and headphone static has been a constant problem whenever my headset’s microphone is plugged in. On the rare occasions when I want to use my gaming headset for some multiplayer PS3 gaming, I have to fish out the headset’s extension cable and amplifier. This is troublesome because the cable is routed all the way around three sides of my desk.

My friend Brian must have gotten sick of listening to me complain, because he bought me a FiiO E07K for my birthday. I’ve been shopping for some sort of USB sound card for quite a while now, and I’ve been having trouble finding one that fits my needs. I was hoping to not just find a quality DAC for my headphones, but also an ADC to plug my microphone into.

Units with both features are hard to find. I found some really cheap hardware with both audio input and output, usually marketed as USB Skype adapters, but I didn’t think those would be much of an upgrade.

FiiO E07K Andes DAC

There are some fairly high-end DAC units that also feature an ADC, but they didn’t fit my needs even at their much higher prices. They are aimed at a market way above what I’m looking for. They have RCA and ¼ inch line-in and line-out ports, and I’m just looking to plug in a simple 1/8-inch, 4-conductor headset.

I had a lot of trouble deciding to pull the trigger on one of the units in between these two extremes because they don’t quite meet my needs. Brian knew I was looking at the FiiO E07K Andes amplifier, and we can all thank him for pulling the trigger for me!

The hardware

The FiiO E07K is a small aluminum box that’s right around the size of your average smartphone, but just a little shorter and thicker. It has a pair of amplified headphone outputs on one end, and an audio input and mini USB port on the other. It feels like a very solid piece of hardware. It also has a small OLED screen on the front, but that is something I don’t really need.

The E07K is also equipped with a rechargeable battery. You can use the heavy-duty rubber bands to strap the E07K to your phone and connect them together with the short 1/8 inch audio cable, both of which were shipped with the unit. I tried this out with my Nexus 4, and I have to say that there isn’t a significant difference in audio quality when doing this. It would probably allow you to crank the volume up pretty high, but I’m not one to blast music in my ears. This feature is lost on me.

The FiiO E07K is equipped with a 24-bit, 96 kHz USB DAC (Digital Audio Converter). It can also be used at a more standard setting of 16-bit, 48 kHz. I’ve tried both, and even downloaded some very high-quality 96 kHz classical music tracks. They sound fantastic, but my ears can’t tell the difference between 96 and 48 kHz. Your mileage may vary!

The FiiO E07K vs. the on-board audio

On-board PC audio has been more than satisfactory for me. I don’t turn my speakers up very high, and the laptops I’ve been using for most of the last decade have been very well shielded. The new desktop machine I built last year has been a bit less pleasant to my ears, though.

When the CPU and video card are working hard, I can sometimes hear a faint buzz from the speakers. I have a similar problem with the microphone on my Monoprice Gaming Headset. When I turn on the microphone on its little USB audio adapter, it generates static on the speakers.

FiiO E07K in a custom mount

The FiiO E07K generates absolutely no audible static that my ears can detect. I didn’t even realize just how much static was coming out of my headphones before. It was very faint, but I now know that it was there! Unfortunately, I don’t have a convenient way to use the FiiO unit with both my speakers and headphones.

I am absolutely amazed at how much better games sound through my headphones when using the FiiO DAC. The first thing I fired up was Team Fortress 2. I tweaked the volume of the FiiO box to match the level that I normally use when playing. The Reserve Shooter has A LOT more bass now, and I can hear low-volume chatter in the distance (“Stand by little wagon!”) much more clearly than before.

I don’t know if this is due to the higher-quality DAC or if the FiiO’s equalizer settings are doing a better job.

Static on the microphone!

My Monoprice Amplified Gaming Headset uses a 4-conductor 1/8-inch headphone jack to connect its speakers and microphone using a single port. This didn’t seem like it would be a problem. I ordered a cable to split it into separate microphone and headset connectors, and I ordered a long extension cable to plug the microphone directly into the computer.

I even designed and 3D printed a custom mount to attach all of this directly to my desk. All of this worked just as I planned except for one small detail: I’m still hearing static in the headphones when I plug the microphone in!

It is a lot less static than I had before. If I connect everything up before putting the headphones on, I won’t even know that it’s there. It is much quieter than my computer’s fans. The static is very obvious if I plug in the microphone cable while the headphones are already on my head.

This seemed very peculiar. I didn’t understand why the separate microphone and microphone cable should be affecting the headphones. It took me a while, but I finally realized that the headphones and microphone aren’t as separate as I thought. They are sharing a ground wire because of the 4-conductor 1/8-inch connector!

I don’t have a good way to work around this issue. The static is very quiet, and I only have to listen to it if I’m using the microphone. Thankfully, I don’t use the microphone very often.

The verdict

I’m very pleased with the FiiO E07K DAC. It sounds wonderful, makes my games sound a lot better, and it is small enough that I’ll have no trouble taking it with me when I travel. It’d be nice if FiiO would release a DAC anywhere in the $50 to $150 range that also includes an ADC. If the E07K had a microphone input, or better yet, a 4-conductor headset jack, I wouldn’t have anything to complain about.

Craft Coffee - July 2014

I’m doing things a little differently this month. I’ve only been using my new Rancilio Silvia for less than a week, and I’m still trying to learn how to use it properly and consistently. With my old Mr. Coffee espresso machine, I would rotate through the beans one latte at a time.

The pressurized portafilter on the Mr. Coffee machine was very forgiving. I’ve heard it said that machines with pressurized portafilters pull a consistently mediocre shot of espresso every time, and I am inclined to believe that. Miss Silvia is much less forgiving, but she’s a much more capable machine in the right hands. Those hands aren’t yet mine, though.

The first shot I pulled with my fresh beans from Craft Coffee was a complete failure. My grind was just too fine—it almost completely blocked the machine. Things went much better after that but not perfectly.

This month, I am going to use up each pouch of coffee before starting the next. I am going to write about (and post!) my thoughts as I finish each bag. I am going to wait until all the coffee is gone before I send this post to my most excellent editor for proofreading, so please excuse any grammatical errors in the mean-time!

Caffe Vita, Seattle, WA
Producer SOPACDI
Origin South Kivu, DR Congo
Variety Typica
Elevation 1,460-2,000 Meters
Process Washed
A robust, vegetal bouquet complements full flavors of caramel and dark chocolate with a slightly smoky finish resembling cavendish tobacco and leather.

I have had a lot of trouble with this coffee, and I don’t know if it is my fault or the beans. There are a lot of words in the description that my taste buds won’t be happy about: “vegetal bouquet,” “dark chocolate,” and “tobacco.”

The coffee from Caffe Vita has a strange aftertaste. Some of the lattes I made seem a bit sour at the end, while others seem bitter. I’m drinking the last one right now, and I can’t decide which it is. Whatever this aftertaste is, it is definitely bringing tobacco to mind.

The third or fourth shot I pulled seemed like it was going technically perfect. I got right around 2 ounces of espresso in just shy of 30 seconds. It was quite bitter and far from perfect. I clicked the grinder up one notch, but that double shot only took about 10 seconds. I made a latte out of that shot anyway, and it tasted surprisingly good. Not very flavorful, but there were no offensive sour or bitter tastes.

I split the difference for this final shot—I dialed the Baratza Preciso back to where it was and moved the micro-adjustment lever to the half-way mark. This is probably the best latte I’ve made with the beans from Caffe Vita, but it still has a strange aftertaste. I’m not ready to blame it on the beans, though!

Metropolis Coffee Company, Chicago, IL
Producer Grupo Asociativo Cafe Andino
Origin Bruselas, Huila, Columbia
Variety Caturra, Columbi
Elevation 1,500-1,900 Meters
Process Washed
Leading off with aromas of nougat, honey, and tobacco, this silky brew offers flavors of roasted almonds and candied yams and finishes with butter notes of caramel and milk chocolate.

The coffee from Metropolis was similar to, but seemed smoother than the coffee from Caffe Vita. The description on the Metropolis pouch also mentions tobacco, but only in relation to the aroma. I don’t know if my nostrils are just tricking my taste buds, but it sure seemed like it had the same sort of tobacco-like finish as the Caffe Vita coffee—it just wasn’t as strong.

It is entirely possible that the aftertaste in both coffees is related to my lack of skill and experience with my new espresso machine. Some of the lattes I made using the Metropolis beans were the best that I’ve managed to make with the Rancilio Silvia.

This will probably be the norm for quite a while. I won’t be surprised if every pouch of coffee tastes better than the last as my barista skills improve.

Forty Weight Coffee Roasters, Ithica, NY
Producer Girma Mill
Origin Sidama, Ethiopia
Variety Heirloom
Elevation 1,800-1,900 Meters
Process Natural
Tangy aromas of raspberry and pineapple lead into flavors of a summer afternoon in the park–peanut butter and jelly sandwiches, strawberry limeade, and chocolate malted milk balls.

I saved this one for last, and I’ve been looking forward to trying it. I’ve really enjoyed all the Ethiopian coffees that I received, and I thought it would be best to get more practice with my new espresso machine before trying the beans from Forty Weight.

I goobered up more shots of this coffee than any of the others. It is a much lighter roast than the other two, and I ended up having to move the setting on the grinder up by more than two full clicks, and I’ve been making micro adjustments the entire time.

I also used my 3D printer to print a proper 58 mm tamper while I was half-way through these beans. It sure looks like I’ll be able to be much more consistent in my tamping now, but this also lead to me wasting two more double shots of the Forty Weight coffee.

I did manage to make one or two pretty good lattes, though, and this is definitely my favorite coffee of the three. It doesn’t have that strange tobacco-like finish, and I can pick out most of the flavors I have come to expect from Ethiopian coffees.

No more sample pouches for me!

I changed my Craft Coffee subscription so that they will send me a single 12-oz bag of coffee each month. I’ve completely wasted at least one quarter of each sample-size pouch just trying to tune in a reasonable shot of espresso, and I haven’t gotten things tasting good until just about the last shot in each pouch.

This should mean that I’ll still have at least a half pound of coffee left after I’ve gotten things tuned in, but it also means that my little coffee review posts will be much shorter. We’ll see how it goes next month!

Use my referral code “pat1245” and you’ll get 15% off

If you use my referral code (pat1245) when checking out at Craft Coffee, you will get a 15% discount. Not only will you save money, but they tell me I’ll get a free month of coffee with every order. That sounds like a good deal for both of us!

Creating a 3D Printed Desk Mount For My FiiO E07K USB DAC using OpenSCAD

I’d been complaining about headphone wiring and computer audio-quality issues quite a bit recently. Someone must have gotten tired of hearing me complain, because I was given a FiiO E07K Andes headphone amplifier for my birthday. It is a nice little piece of hardware that can be used as a high-quality USB sound device. It sounds excellent, and I can’t hear even the faintest hint of static through my headphones.

FiiO E07K Mount

The trouble was that I needed to put it somewhere within reach of my short headphone cable. My quick and dirty solution was to use some poster tack to stick it to the right-hand side of my desk. It was easy to arrive at this solution, because that’s exactly what I was already doing with the small microphone adapter box that came with my headphones.

This worked, but you can see that it was an ugly solution. I have a 3D printer, so I figured I should be able to come up with a better solution. I wanted to make some sort of case that I could slide the FiiO Andes amplifier right into, and I thought it would be nice if it could also hold on to my microphone extension cable for me.

It took me three iterations to finally print the mount that I am using right now. This seems to be par for the course so far for my attempts at 3D design.

Using OpenSCAD instead of Blender

Blender lets you create shapes and modify them vertex by vertex, so it is very flexible. It is also a pain in the neck to design anything which requires very precise and specific measurements. Good luck adjusting your model if you print a part and learn that an opening is just a fraction of a millimeter too wide.

When you use OpenSCAD, you have to build your model pragmatically from basic shapes, and you can store all your dimensions in variables. It took me longer to get going, but being able to make minute adjustments to your measurements without having to manually manipulate the model is well worth the extra effort up front.

1
2
3
4
5
6
7
8
9
include <MCAD/boxes.scad>

width=55;
length=90;
height=14.53;

edgeRadius=3;
thickness=4;
tabwidth=2.5;

After my first print, I realized the mount was too loose, and the tabs at the top weren’t quite wide enough to hold the FiiO in place. All I had to was adjust the width and tabwidth variables, and the whole model rebuilt itself based on the new dimensions. In fact, I could easily reuse this OpenSCAD file to build a case or mount for just about anything, like a phone or a tablet.

The first attempt

I was really amazed with how well the first mount came out. It was a little too boxy—I hadn’t figured out how to make bevels like I could in Blender, and it was pretty loose. The FiiO amplifier could slide around quite a bit, and the tabbed overhangs at the top were very narrow. You could just about lift the FiiO right out of the top with a bit of force.

OpenSCAD rendering The first boxy print

I could have stopped right here, though. I had already screwed this mount to the desk, and it was working just fine. The microphone extension holder worked perfectly, which was a huge surprise to me. It is a little snug, but I was able to snap the connector and cable into the slot with just a bit of force.

The channels in the bottom of the mount lined up perfectly with the rubber feet on the bottom of the amplifier, and they were just deep enough. I’m getting pretty good at measuring things accurately with my caliper.

The second attempt

I learned quite a bit from the first print, and I made some significant improvements to the design. I found the MCAD library on GitHub, and it has a handy “rounded box” function. I replaced the biggest “cube” in my design with a combination of two rounded boxes, but it wasn’t as straight-forward as I hoped it would be. It worked out in the end, and now my mount has some nice rounded edges and corners.

OpenSCAD rendering The less boxy second print

I also added two small bump stops to the front of the case. They’re supposed to be the top half of a pair of spheres, but they printed like two tiny cylinders. They still work great, and they keep the FiiO amplifier from sliding out on its own. The mount was still too long, so the amplifier could slide back and forth quite a bit.

I increased the width of the overhangs on the top by quite a bit. I bumped them up to 2.5 mm. This is more than wide enough to keep the FiiO amplifier from falling out, but still narrow enough that the first overhanging layer doesn’t sag too badly. I also carved out a channel in each side for the FiiO’s buttons to pass through. They were rubbing quite a bit on the first mount.

I should have cleaned up the sagging material before trying to slide the FiiO unit into the mount. The combination of this extra material and my impatience caused one of the tabs on the front to snap off. Even without this tab, the case was still a much better fit than the first one.

I also messed up the microphone extension holder. I moved the holder towards the back of the mount to get it out of the way of the beveled edges, but I quite literally only moved the holder. I didn’t move the model of the microphone extension back with it. That meant that when I subtracted the microphone extension from the “cube,” it just didn’t quite line up anymore, and it couldn’t hold the cable nearly as well. This was simple to fix in the final print.

OpenSCAD doesn’t always catch your mistakes

The version of OpenSCAD that I’m using is a few releases behind. The new version lets you specify the diameter or radius of spheres and cylinders. The version I’m running only allows you to specify the radius.

I accidentally supplied a diameter for the cylinders I’m using for the screw holes. OpenSCAD still gave me two cylinders, but they were too narrow. They seemed a bit tight, but they worked, so I assumed that I measured wrong.

I fixed this in the final design, and added some room so I could cleanly countersink my screws. These new screw holes work much better than the broken ones!

OpenSCAD also lets you use misspelled variable names. It will still generate the shape you’re looking for, but it won’t be the correct size. This was difficult to debug on more than one occasion.

The finished product

I only made minor adjustments before the final print. I measured how far the amplifier could side while in the mount, and I subtracted that from the length of the mount. You’ll probably be as surprised as I was to learn that I measured this perfectly. When you push the FiiO unit into place, it goes past the bump stops with a satisfying thump. Once it is in place, it doesn’t move at all!

The final print

I also made the gaps on the sides as narrow as I could. They need to be wide enough so that I can get to the buttons, but I was able to add 3 mm to the fragile front tabs. I hoped this would help, but I ended up breaking the opposite tab on the final version of the mount while I was recording the video.

I’m still using the mount with the broken tab. The FiiO E07K still fits nicely, and it isn’t going to fall out. I won’t be printing a replacement unless I think of a better solution to the problem.

The walls of this mount are already pretty thick—3 mm thick. I did weaken them a little when I made enough room so that the buttons wouldn’t get hung up on the sides, and it would probably help if I compensated for that. I don’t really want to do that, because the screw holes would move.

That would mean that I’d have to put more screw holes into my desk. I’m definitely willing to do that—there are already quite a few holes in the legs—but the mount is still very solid even with the missing tab.

Final thoughts on OpenSCAD and my OpenSCAD source code

I’m extremely happy with OpenSCAD and will probably be using it for every functional 3D model I create in the future. I am unhappy with the state of the source code for my FiiO mount, and it is more than a little embarrassing to share it with you.

Things started off so well. I had nice definitions for the dimensions of the FiiO E07K, and I built up the walls of the mount by adding my “thickness” variable to those dimensions. A few steps later, things started to get more complicated and a little weird. Sometimes I was adding or subtracting that “thickness” variable, or double the “thickness,” or half.

Sometimes it made sense. Sometimes it didn’t. I wasn’t planning ahead. I was just trying things to see how they would render. This made for some very haphazard and ugly math that should definitely be refactored and cleaned up.

First Day With My Baratza Preciso Coffee Grinder

My new Baratza Preciso grinder arrived today. I’ve been impatiently waiting for it to arrive since Thursday—the day my Rancilio Silvia was delivered. Since Thursday, I’ve been making the most bitter lattes that I have ever made using some pre-ground coffee. It just wasn’t ground quite right to match Miss Silvia, but I did manage to make two or three lattes over the weekend that were at least drinkable.

I was hoping the Preciso would help me out, and it most certainly did. It wasn’t entirely smooth sailing, though. I have a small portion of the Rwanda beans from Central Market that match the coffee I ground in the store. I don’t want to use that right away, because I want to use it to see how my skills and tuning improve over the next few days.

The first shot with the Baratza Preciso

My research on the Internet told me that a setting of 10C might be a good starting point, but the brochure that came with the Preciso grinder suggested settings 2 through 6 for espresso. I decided to trust the manual, and I started at setting 6, and I loaded up the machine with the Ethiopian Harrar Deep Blue Oromia Addison Coffee Roasters.

This was a complete failure. The Rancilio Silvia could barely move any water through the portafilter. I abandoned that attempt pretty quickly. I moved up to setting 10, and I slid the micro adjustment level to the center.

A Beautiful Latte

My second pull went much better. I wasn’t being very scientific at this point. I was pulling the shot directly into the 12-ounce Bodum double-walled glass that I usually drink my lattes out of. It looked like it was about the right volume of espresso, probably in the ballpark of two ounces, and it took about 25 seconds to pull the shot.

This was easily the best latte I’ve made with the Silvia up to this point. It was a little bitter, but things were definitely looking up! I repeated the process an hour later, and produced another similar beverage. I was very excited—I already had repeatability!

Trying to tune out the bitter taste

The espresso troubleshooting guide told me that bitter espresso can be caused by water that is too hot. I’ve been practicing my “temperature surfing” all weekend, and I’ve been pulling my shots about 40 seconds after the boiler shuts off. I thought waiting a full minute might improve things.

It did not improve things. In fact, this time it came out absolutely awful. I decided that it was time to use some science.

Don’t do it this way

I had the brilliant idea to use old, stale, cheap coffee while trying to tune in the grind and my tamping. This seemed like an excellent idea, but I was very wrong.

I brought the grind setting down one notch, filled up the portafilter, and tamped exactly like I have been all day. The water just passed through the coffee like it wasn’t even there. I filled a pair of shot glasses in less than ten seconds—that’s just way too fast.

I set the grinder down at 6, and I got much closer to my goal, but it was still too fast, so I moved that dial down to 5. I was surprised to see another two ounces of coffee flow out of the espresso machine in less than ten seconds.

I pulled two more shots with the grinder set to 5, and the second try took just about 20 seconds. This is when I started thinking that experimenting with old beans was a bad idea.

Back to the fresh Addison Coffee Roasters beans

I swapped out the old beans and managed to get coffee grounds all over the counter. I think I left the settings alone, so the grinder should be at 5 now. I thought for certain that I was going to gum up the machine again.

It wasn’t a perfect pull. One of the shot glasses filled up faster than the other, and I had to stop the pull short so as not to overflow. Even with the uneven shot glasses, I probably pulled just a hair over two ounces of espresso in 22 seconds. That’s a bit shy of my 25-second goal, but I was satisfied enough that I decided to steam some milk.

This was one of the very best lattes that I have ever made. I’d like to tell you that I’m drinking it as I’m writing this, but I would be lying. I finished it almost a dozen paragraphs ago.

I’ve been drinking coffee from Addison Coffee Roasters for a few years now, and I’d say they roast a pretty good bean, but I’ve been spoiled by Craft Coffee. The beans I’ve been getting each month from Craft Coffee have been absolutely stellar.

My batch of Craft Coffee for July shipped today, and it is due to arrive on Thursday. I’ve been worried that I wouldn’t have the espresso machine tuned in well enough by then, but this delicious latte has me thinking otherwise. I’m really looking forward to Thursday!

The First Night With My Racilio Silvia

My friend Brian is an awesome guy. He wanted to pay me back for many years of various sorts of technical help, blog-related advice, Piwik hosting, and virtual private server hosting, so he decided to buy me an espresso machine. Not just any espresso machine, but one of the best espresso machines you can buy without spending thousands of dollars on an actual commercial machine.

He bought me a Rancilio Silvia. This machine is a HUGE upgrade over my old Mr. Coffee espresso machine. It is big, heavy, and very durable. Almost everything except the water tank is made of steel or brass, and if anything ever does go wrong, almost all of the internal parts can be purchased separately. I expect to be pulling shots with this machine for the next ten or twenty years.

I’m also replacing my cheap burr grinder with a better model. I deliberated on this quite a bit and decided to go with the Baratza Preciso grinder. The other two choices on my list were the Rancilio Rocky and the Gaggia MDF.

The Gaggia was very tempting because the refurbished MDF grinders are half the price of the Baratza Preciso. I didn’t really like what I was reading about it, and it sounds like the doser on the Gaggia is quite messy. I’m expecting the grinder to last as long as the Miss Silvia, so I didn’t mind spending a little more.

Miss Silvia

The Rancilio Rocky sounds like a quality machine, but I was seduced by the vast array of grind sizes of the Preciso. The Preciso has 40 “macro” adjustments that can each be fine-tuned with 11 “micro” adjustments. That is probably a lot more control than I need, but I read that only about three grind settings on the Rocky are suitable for espresso. The Preciso can also grind coarse enough for a French press, while the other two can’t.

The problem with the grinder

I couldn’t order the grinder from Amazon. At least, that’s what I thought. The Baratza Preciso grinders at Amazon with Prime shipping didn’t seem to have the portafilter holder attachment. As I’m writing this, I realize that I was mistaken in that thought.

Since I wasn’t smart the other night, I ended up ordering my grinder from Whole Latte Love. I picked up the Racilio Silvia from Brian’s house tonight, but the grinder won’t arrive for another three days. This was a bit of a conundrum, since my grinder doesn’t have a fine enough grind setting for the Silvia.

We stopped at the Central Market on the way home from dinner, and I picked up some of their in-house roasted coffee. I bought some of their organic coffee from Rwanda. I picked some up last week, and it was pretty good. This time, though, I used their grinder. I figured this would let me play with my new machine before my new grinder arrives on Monday.

Trying out the steam wand

Last night, I watched Gail from Seattle Coffee Gear steam some milk with a Rancilio Silvia on YouTube. She told me about how much weaker the steam wand on the Silvia is compared to the high-end commercial machines, and watching her steam milk didn’t seem very impressive. It seemed to be working better than my little Mr. Coffee machine.

One of the first things I did after priming the machine was test out the steam wand. I pointed it at the sink, and I turned it on. Holy moly! It is SO much more powerful than my old machine. It seemed like it filled the entire sink with steam!

Gail is definitely using a much bigger frothing pitcher than my little 12-ounce pitcher. I filled it up less than half way, and I had to turn the dial way down to keep it from spraying my milk all over the place. I already ordered a 20-ounce pitcher.

I don’t steam my milk to as high a temperature as most people. I stop at around 130 or 140 degrees. The Silvia brought my milk up to temperature in about 20 or 30 seconds. It probably takes two or three times longer with my old machine, and the foam came out so much better. I’m sure that will improve even more once I practice more with the Silvia.

Pulling a good shot is a lot harder

I knew I was going to have trouble pulling a shot without a grinder. The first shot was very problematic. I filled up the portafilter, leveled it off, and tamped it down pretty hard with the weird convex tamper that came with the Silvia. I had trouble getting the portafilter onto the machine.

I took it off to see if I was doing something wrong, and there was an indent in coffee from a bolt on the Silva. This seems to be normal, but I assumed I had too much coffee in there. I muscled the portafilter into place anyway, and I pulled a double shot.

It was very uneven coming out, but it was coming out at close to the correct speed. I combined it with the milk I had just steamed and made myself a latte. I let Chris taste it first, and she made a horrible face. It did not taste good at all.

Then I tried measuring out about 14 grams of coffee. This should be about the right amount, but it didn’t pile up high enough for me to level it off correctly. I did my best, though, and tried pulling another shot. This one was going way too fast, and it tasted terrible.

My understanding is that there are two variables that control the speed at which the water moves through the portafilter: the size of the grind, and the force of the tamp. I can’t control the grind yet, but I can control the tamp, so tamping is what I did. I put in another 14 grams and I tamped it as hard as I could.

I’m a pretty heavy guy, and I put a lot of weight on that tamper. It wasn’t enough. It still passed through the portafilter like there was no coffee in there.

One last try for the night

I gave up on the idea of using 14 grams. Just like the first attempt, I put a big heaping lump of coffee in the portafilter and brushed off the excess. I tamped it down as hard as I could and pulled another shot. I pulled this shot into a 2-ounce demitasse cup.

It filled up in about 22 seconds. That sounds a little fast, but it was the best I could manage for today. I’m finishing up the latte that I made from that shot right now.

It is one of the worst lattes I’ve made this year, but it was good enough that I finished the whole thing. In my opinion, that means I’ve had a most excellent first day with my new Rancilio Silvia!

The new grinder will be here in a few days, and my next Craft Coffee delivery should arrive a few days after that. I have a feeling that next week is going to be a delicious one!

3D-Printed Tablet Stand For an Inexpensive Bluetooth Keyboard

I ordered an adjustable tablet stand not even two days before I decided to buy a 3D printer. That stand is inexpensive and versatile, but it doesn’t do quite what I wanted. What I really wanted to do was attach my LG G Pad 8.3 to a compact Bluetooth keyboard.

There are plenty of models at thingiverse.com that do this, but they are all designed around Apple’s Bluetooth keyboard. I don’t want to use Apple’s keyboard. I don’t expect to use this setup very often, and I want to use cheap hardware. Cheap enough that I could buy extras so I can keep one in each car. Cheap enough that I won’t care if they get lost or stolen.

I found a pretty good keyboard that fits that description. It is a generic knock-off of an Apple keyboard, and it is sold under a dozen different brand names at Amazon. I ended up buying the SANOXY Wireless Bluetooth Keyboard. It was one of the lowest priced of an array of identical-looking keyboards that were available with Amazon Prime shipping. There is absolutely no branding on this keyboard whatsoever, and I am confident the brackets I designed will work with any of the other identical looking keyboards.

The first attempt was a failure

My box of M3 nuts and bolts arrived shortly after I finished up my very first custom-designed part. I wanted to try designing an object with a captive nut. I figured I could build a nut into the bracket and tighten a bolt to clamp the bracket to the keyboard.

I’m both proud and excited that I was able to model a hex-shaped hole into the bracket for the captive nut. It was a little snug, but it worked just fine! The base of my bracket just wasn’t strong enough. When I tightened the bolt, it would just bend the bracket.

This wasn’t how I originally envisioned this part anyway. That first test piece showed me that I transferred my measurements of the keyboard’s battery compartment into Blender correctly, and the dimensions carved into the top for the tablet were pretty close to correct.

I just needed to expand on that initial design, and I would be all set.

The new clip works great, but there were many failures.

Measure twice and cut once. That’s what they say, and I measured the heck out of this keyboard with my caliper. My dial caliper is SAE, so I spent a lot of time asking Google to convert my measurements to metric. I need to remember to pick up a metric caliper to speed things up.

All my measuring paid off. I was able to get the brackets to snap onto the keyboard on my first try! That was all that worked on the first try, though. As you can see in this YouTube video, I didn’t properly account for the angle of the keyboard.

It seemed like this was going to be easy to fix. I pushed the keyboard into its correct position, and I measured the gap between the desk and the tips of the brackets using my caliper. It was off by about 8 mm, so I adjusted the model accordingly—or so I thought! I repeated this process a few more times, and I still had a wobbly tablet stand.

The finished product

I took one final measurement, and I added about 50% to it. I figured that if that didn’t get me the angle I needed, then nothing would. I also tweaked the depth, width, and angle of the notch for the tablet. I tested one of the earlier pieces with my Nexus 4 phone, and the notch just wasn’t quite wide enough to fit the phone. I don’t know that I’ll ever use this stand with my phone, but it was a simple fix, and I’d like to keep my options open.

I also discovered my new favorite tool in Blender: the bevel tool. Until now, all of my designs have sharp angles. I used my new found knowledge to change two of the sharp corners of this bracket into nice, long, sweeping curves! It looks so much nicer now.

I am very pleased with how they came out. They do their job very nicely, and I learned a lot during the design process. I’m looking forward to taking my keyboard and tablet on a field trip in the near future.

How is the keyboard?

I haven’t typed more than a few paragraphs with this wireless keyboard, but I’m reasonably happy with it. It feels like a laptop keyboard, but the key spacing is almost identical to my big, old IBM Model M mechanical keyboard. I don’t enjoy typing on these short-throw laptop-style keyboards, but proper keyboards and very portable.

It is most definitely worth the $13 that I had to pay for it.

Upgrade from 120 GB Crucial M4 to 480 GB Crucial M500 SSD

I didn’t really need to upgrade my solid-state drive. The Crucial M4 is a fast and reliable drive, and even at only 120 GB, I still had plenty of free space. We had another machine that needed a replacement drive, though, so I decided to use my Crucial M4 for that machine and buy a new drive for my own workstation.

I had my eye on the new Crucial MX100 drives. I even ordered one from Amazon that was available with Prime shipping. I didn’t notice until the order was complete that the drive was back ordered and wouldn’t ship for almost three weeks. I canceled that order and decided to go with the 480 GB Crucial M500.

The 512 GB Crucial MX100 is a faster, a little bigger, and costs a bit less than the 480 GB M500 drive, but none of that mattered to me at the time. I needed to start moving drives around sooner rather than later.

Better performance just doesn’t matter

I ran some benchmarks on this new drive, and the new SSD is quite a bit faster than the old Crucial M4, but that doesn’t really matter. If it weren’t for the benchmarks, I wouldn’t be able to tell you that the Crucial M500 is any faster. My computer booted up fast before, and it still does. Applications used to open very, very quickly, and they still do.

I’ve been saying for a long time that the biggest value a solid-state drive brings over a traditional hard drive is the much-improved random access. Spinning hard disks have been stuck at around 100 to 200 seeks per second since the late 1990s. Even an SSD from a few years ago can manage several thousand seeks per second.

It is those random I/O operations that count. The maximum sequential throughput that the drive can sustain is almost meaningless. You won’t notice it unless all you’re doing is copying large files around your local machine.

Size matters

In my computer, I have one solid-state drive and a mirrored pair of 1 TB 7200 RPM disks. This has served me quite well. The only thing I didn’t have room for on my SSD were some of my larger games, but it was no big deal keeping those on the 1 TB RAID 1 array.

Upgrading to an SSD that is four times bigger than the old one has been a very pleasant experience. I was able to move a whole bunch of stuff from the slow RAID array over to the SSD, including the “huge” 90GB Steam library. I still have over 150 GB free. That’s five or six times more free space than I had on the old solid-state drive.

It really is wonderful that spacious solid-state drives are finally becoming affordable.

Benchmark caveats

I ran my obligatory Bonnie++ benchmarks on the Crucial M500. There are plenty of other benchmarks available these days, but I’ve been running Bonnie since the late nineties. Somewhere here in my archives I have Bonnie benchmarks of old IDE disks, and benchmarks of my old 8-port 3ware IDE RAID card.

So far, I figure it is best to keep running benchmarks that I can compare to my ancient machines.

I did something very different this time. Bonnie defaults to using a scratch file that is twice the size of your available RAM. I usually reboot and tell the kernel to only use two or four gigabytes of RAM. This helps make sure the benchmark doesn’t take too long to run, that I don’t needlessly waste write cycles of the flash chips, and that I even have enough room to store a 64-gigabyte file.

I just ran the benchmark without rebooting this time. I had almost 400 GB free on the drive, and this drive is pretty fast, so it didn’t take long to run at all!

I am also using full disk encryption, so I am artificially limiting these drives. They’re still much, much faster than they need to be, but don’t be surprised if my numbers come up lower than you expect.

And finally, the obligatory benchmarks

1
2
3
4
5
6
7
Version  1.97             ------Sequential Output-------- --Sequential Input-- --Random-
Concurrency   1           -Per Chr- --Block--- -Rewrite-- -Per Chr- --Block--- --Seeks--
Machine              Size K/sec %CP K/sec  %CP K/sec  %CP  K/sec %CP K/sec %CP  /sec %CP
FX-8350 480 GB M500   63G   483  99 406072  55 150005  34  1362  99 309761  38 +++++ +++
FX-8350 120 GB M4      7G   632  99  96865  10  77523   7  3124  99 300500  15  4234 104
FX-8350 120 GB M4      7G   642  99 178581  28  82598  25  3065  97 200485  32  2439 179
Laptop 80 GB X25-M     8G 56415  89  87157  11  39827   9 69707  98 298590  29 16150  45

I included two sets of results for the Crucial M4. I know those benchmarks were both run shortly after I built my new desktop machine, but my notes aren’t giving me a hint as to why the block input and output results are so wildly different between the two. I thought it best to include them both.

I also included the results of one of my old benchmarks of my Intel X25-M G2. That one is cheating a little bit, because it isn’t encrypted. You might also notice that the X25’s “per character” results are orders of magnitude faster. I’m not sure why that is, but all of the Bonnie benchmarks that I’ve run in recent years have resulted in abysmally slow “per character” throughput. It doesn’t matter which drive I test or which machine it’s in.

Analyzing the results

In my tests, all three drives are capable of sustaining about 300 MB/s sequential read speeds. Other people have seen higher read speeds, so I’m assuming encryption is causing this bottleneck for me. I’m not worried. That is plenty fast enough for my purposes.

I was most impressed by the write speeds of the Crucial M500. It is more than twice as fast as my old Crucial M4. What’s more surprising to me is that the encryption isn’t limiting it to 300 MB/s. I’m guessing that writes are easier to encrypt in parallel, so my workstation’s 8 cores are being better utilized during writes.

I had to check the Bonnie++ documentation to find out what it means when the result of a test is a row of plus signs instead of a number. It does this when a test completes in less than 500ms. I have to assume that means the Crucial M500 is beating my old X25’s 16,150 seeks per second.

The drive I chose not to buy

I also looked at the 500 GB Samsung EVO 840. The EVO is comparable in performance to the Crucial MX100, and both are a little faster than my Crucial M500. However, the Samsung EVO was $40 or $50 more. I didn’t see the need to spend more for performance I wouldn’t even notice.

Which drive should you buy?

I combed through all sorts of benchmarks before buying the new drive. That’s what I do. I enjoy reading benchmarks and specifications. It is really a waste of time. Most of the solid-state drives on the market today are extremely fast, especially the ones from all the major makes and models.

You’d have a hard time buying a “bad” drive from any of the popular SSD manufacturers. Intel, Crucial, and Samsung have been making fast and reliable drives for several generations now.

If you’re spending extra money to pick an SSD that makes higher numbers in a benchmark, you’re probably not going to be able to notice your investment without a stopwatch. My wife’s computer still has the hand-me-down 80 GB Intel X25-M, and it still boots up fast and is as quick and snappy as my computer.

That said, had the Crucial MX100 been available, I would have chosen it instead. It is faster, bigger, and costs less than the Crucial M500. I’m not unhappy that I had to choose the lesser drive, because I’ll never notice the difference.

Bulletproof Coffee

There is a new coffee trend called bulletproof coffee. I can’t avoid reading about it. It has shown up countless times on Twitter, Stumbleupon, and in my RSS feeds. It sounds more than a little strange, but every time I read about it, I want to give it a try.

The most intriguing part of the recipe is the recommendation to use Unsalted Kerrygold Pure Irish Butter, and the shipping cost on this stuff from Amazon is extremely high. This stuff is “grass-fed butter,” and I had absolutely no idea what that does for the butter. I was over at The Allen Wickers last week with my friend Brian, and we talked about this.

  • Me: “It’s grass-fed butter.”
  • Brian: “Grass-fed?”
  • Me: “Grass-fed!”
  • Brian: “Hold on there, Pat. Butter doesn’t eat grass.”

Brian is correct. Butter does not eat grass. I guess most dairy cows are fed some sort of grains. The folks at Kerrygold feed grass to their dairy cows instead of grain. Apparently this leads to a different array of fats being present in their milk. They say these fats are better for you than the fats in plain old butter, but I have absolutely no idea how true that is.

I can say for certain that this Kerrygold butter is different than the other sticks of butter in my refrigerator. It is a lot softer. It takes quite a bit of effort to cut through my store-brand butter when I’m cutting up a few tablespoons’ worth for my home made pizza dough—enough effort that you can hear the clank when the knife breaks through and hits the plate underneath.

At the same temperature, the Kerrygold cuts almost like warm butter. I’m betting it tastes different, too. I’m going to bake up some French bread soon so I can try it out.

My wife, Chris, and I were at our local Sprouts market recently, and I was very excited to go. I was certain they’d have some Kerrygold butter, and I was right, so I picked up a package.

That’s enough talk about butter! Where’s the coffee?

I forgot that we also needed coconut oil for this recipe, and we didn’t have any. The next night we were out at dinner with Brian and his wife, Julia. I mentioned my mistake, and Julia told me she had coconut oil at home. I asked if I could borrow some, and she said yes.

There was no good way to just borrow a couple of tablespoons, so I stole the whole jar. With all the ingredients in hand, we decided to make some bulletproof coffee earlier this afternoon.

I planned on using my little pour-over cone. I don’t use it very often, so I had to ask the Internet how much coffee was required to make the 500 ml of coffee that the recipe calls for. I did the math, and I weighed some water, and I figured out that 500 ml was probably more coffee than we were going to drink. I ended up cutting the recipe in half.

Here’s what I used:

I followed all the directions. I preheated the blender, then I added the butter and coconut oil to the blender, poured all the hot coffee in, put on the lid, and fired up the blender.

Bulletproof coffee

The coffee aerated quite a bit in the blender. It bulked up enough that it nearly filled a pair of my Bodum 12-oz double-walled glasses, so I’m pretty happy that I cut the recipe in half. I didn’t think to take a picture of the coffee until after drinking some, but I came to my senses pretty quickly on that front.

How does it taste?

I like it, and I’m very surprised. I don’t like coconuts or anything coconut flavored, so I was fully expecting to not like bulletproof coffee with coconut oil. I was completely wrong. This has to be the best-tasting coffee drink I have ever made without using my espresso machine.

I added sugar to mine. I used about four teaspoons—the same amount I put in my 12-ounce lattes.

Chris didn’t seem to like hers at all. I don’t think she even finished one quarter of her coffee, whereas I finished my entire coffee. This is completely backwards. I almost never finish my coffee unless it is a latte.

Will I make it again?

We’ll definitely give it one more try. I’d like to swap out the coconut oil with extra butter and see how that tastes. Other than that, I don’t think I’ll make it again.

Making a latte with the espresso machine takes less time and effort than making a bulletproof coffee, and it’s easier to clean up. The lattes taste quite a bit better, too. I might change my mind if I didn’t have access to an espresso machine.

Strike Suit Zero

I picked up my copy of Strike Suit Zero quite a while ago as part of the Humble Indie Bundle X. When this bundle launched, it wasn’t very exciting for me, but I bought it anyway. I don’t think I’ve missed a Humble Indie Bundle yet. It became much more interesting when they added Strike Suit Zero during the second week.

I had never heard of the game before, but it sure looked like the sort of game I’ve been waiting for. Strike Suit Zero looked like a modern Wing Commander-style game, and I played the heck out of Wing Commander and Wing Commander 2 when I was a kid.

I installed the game as soon as I could and gave it a try. The first two missions most definitely reminded me of Wing Commander. The steering with the mouse is pretty similar, but the aiming is very different. In Wing Commander, you have to line up your shots using the crosshairs in the cockpit—you could only fire directly ahead. Your ship fires towards the mouse pointer in Strike Suit Zero, and the pointer turns red when you have a viable shot lined up.

The strike suit

Things were going so well right up until I unlocked the strike suit. Using the strike suit is absolutely nothing like Wing Commander. When you transform into strike mode, your ship becomes almost stationary. In strike mode, the goal is to lock on to many targets simultaneously with missiles or use the auto targeting with the primary weapon.

I did not adjust to this transition at all. I failed this mission over and over again until I finally gave up.

I was traveling at the time, and I only had my laptop with me. On my laptop, the frame rate would drop considerably when lots of things were exploding. Between that and my inability to pilot the strike suit, I didn’t see much point in playing anymore.

Second chances

I tried the game again a few weeks ago, and I am very glad that I did. You can retry previous missions with the upgrades you’ve earned in the harder missions. I decided to go back to the first mission using the strike suit, and I got as much practice as I could by using strike mode at every possible opportunity.

The practice definitely paid off. I’m not sure how many times I had to retry the mission where you acquire the strike suit, but I know it wasn’t very many! After that, it was relatively smooth sailing.

Strike Suit Zero

I’m having quite a bit of fun now. The entire game is basically what every space combat movie or television show is all about. You’re one of the guys in the small fighter craft. Most of the time you’re in dogfight with other fighter craft. Sometimes you’re strafing in close to huge battleships taking out their big guns so your own battleships can survive.

I’m a bit stuck right now near the end of the tenth or eleventh mission. I just can’t seem to keep my carriers alive! I’m sure I’ll get it, though.

Closing thoughts

I’m disappointed that I took a dislike to the game so early on. I almost bought gift copies of this Humble Indie Bundle for all my Wing Commander loving friends, but I decided against it as soon as I encountered the strike suit. I don’t know if my wallet is deep enough to buy so many copies at full price, though!

I’m looking forward to finishing the game, and I’m definitely considering buying the DLC. Strike Suit Zero runs great on Linux, but I have had an occasional crash when completing a mission. I only lost progress because of this once. I’m having no trouble running the game at 2560x1440 on my computer.

Craft Coffee - June 2014

My third month with Craft Coffee might be the most delicious yet. As soon as I opened the box, I fired up the Espresso machine and made myself a delicious latte using Oren’s Daily Roast. I knew immediately that this had to be the best coffee of the three—it was just SO smooth and delicious.

I was very wrong. All three coffees this month are on pretty equal footing.

Craft Coffee selection for June 2014

You’ll probably notice that I use the word “delicious” quite a bit. This is why I mostly write about technology and not food or drink. I am apologizing for this in advance.

Oren’s Daily Roast, New York, NY
Producer Ardi, Guji
Origin Sidamo, Ethiopia
Variety Heirloom
Elevation 1,900-2,000 Meters
Process Washed
A nose of mixed berry jam introduces a cup bursting with juicy blueberries and strawberries, dark molasses, and a hint of fruity bubblegum, with a sweet and malty finish like a great Belgian ale.

I just had to open this one first. The Ethiopian Yigracheffe from Slate Coffee Roasters in my first package from Craft Coffee was spectacular. That made me decide to buy some Yigracheffe locally from Addison Coffee Roasters. The Yigracheffe from Addison Coffee Roasters was pretty good, and it might even be my new favorite coffee of theirs, but it just isn’t in the same class the beans from Slate Coffee Roasters.

These beans from Oren’s Daily Roast are also from Ethiopia, and they are unwashed beans like the ones from Slate Coffee Roasters. I just couldn’t help myself. I had to try these first.

I’m glad I did. This coffee is fantastic. It is smooth and silky. It doesn’t have the extreme dried strawberry finish that the Slate Coffee Roasters coffee had, but I can easily pick out the blueberry flavor in here.

Irving Farm, New York, NY
Producer Daterra
Origin Cerrado, Brazil
Variety Typica, Bourbon, Caturra, Mundo Novo, Icatu
Elevation 1,150 Meters
Process Washed
Rich aromas of raisins and freshly roasted pecans lead into a creamy, full-bodied cup with decadent layers of peanut butter and milk chocolate that fade into a lingering, buttered toast finish.

I don’t know if I goofed up when pulling the first shot, but I had trouble picking up on the flavors mentioned in the summary on the pouch. It tasted great, and I could pick out a bit of a nutty flavor, but that was about it.

The second latte I made was much more flavorful. The smell of raisins was easy to pick out, and the flavor really did remind me of peanut butter. I don’t know that I identified the buttered toast, but the finish and aftertaste were quite pleasant.

There is a chocolate flavor there, but I think I pick up on that in most lattes that I make. I’m always telling people that I know I made a good latte if it reminds me of a hot chocolate.

Willoughby’s Coffee, Branford, CT
Producer Granja La Esperanza, Potosi
Origin Valle Del Cauca, Trujillo, Columbia
Variety Caturra, Columbia, Typica
Elevation 1,550 Meters
Process Washed
A lush, easy-drinking Columbian with flavors of caramel, black cherries, and rose water, accented by vibrant aromas of oranges and chocolate-covered graham crackers.

I’m definitely picking up the caramel flavor of this coffee from Willoughby’s, but I’m having trouble finding any of the other characteristics listed on the pouch. I might be picking up a hint of black cherry right as I’m finishing each sip, but it vanishes pretty quickly. I’m not sure if it is really there, or if I’m just convincing myself that it is.

This is another smooth and delicious coffee, just like the other two.

The Verdict

This has been another excellent selection from Craft Coffee. Last month’s coffee was very good, too, but this month the flavors are much more interesting. The coffees in this batch are also some of the least expensive coffees they’ve sent me.

Before they arrived, I was a little pessimistic. I thought it looked like they were going to be making a better profit this month by shipping me cheaper, less awesome coffee, but I couldn’t have been more wrong. This is some really awesome coffee, and they’d all be excellent candidates to replace my “go-to” coffee.

This marks the half-way point of the Craft Coffee subscription I received as a gift three months ago. I’m definitely very pleased with it. All the coffee they’ve sent is delicious and freshly roasted. Every pouch has the date of roasting printed right on it—these were roasted on June 10. That’s roughly one week before they arrived at my door.

It was a delicious gift, and I’m very seriously considering extending my subscription. It is a pretty good value. I don’t think I can have 12 ounces of many of their selections shipped to my home for less than Craft Coffee’s monthly subscription fee, and they’re always sending me something new and delicious.

Use my referral code “pat1245” and you’ll get 15% off

If you use my referral code (pat1245) when checking out at Craft Coffee, you will get a 15% discount. Not only will you save money, but they tell me I’ll get a free month of coffee with every order. That sounds like a good deal for both of us!