27th November 2012

Remote Light Sensor with XBee

Ironically my first project hasn’t used a Netduino yet. I’ve started playing with using XBee units to transmit a remote value of a light sensor, and it turns out the XBee units are based on their own microcontroller that has a reasonable amount of built-in functionality so you sometimes don’t need an additional fully programmable controller. Even more wacky, you configure the things with a variation of the good old Hayes AT command set, something that I’m more than familiar with from my modem days, but that frankly I was hoping to never see again.

So this project has two parts- a remote unit that just uses an XBee transmitter to read the value from a photo resistor, and a second XBee unit that receives the data and interfaces with a PC via USB. For this first attempt I’m using two XBee series 1 units, two Uartsbee interface units and a breadboard.

The Uartsbee units are pretty convenient to get going at first with the USB interface, but their design as one big flaw. The XBee units themselves aren’t compatible with breadboards since their pins have 2mm spacing instead of the .1”/2.54mm spacing that the breadboards use. The Uartsbee device however has its two rows of pins so far apart that if you put it in a breadboard it fills the entire width of the breadboard giving you no room to attach them to anything.

My project was modeled after one in chapter 4 of Building Wireless Sensor Networks: with ZigBee, XBee, Arduino, and Processing. For this project I needed to wire the photo resistor to the analog input with connections to ground and +3.3v. However the necessary pins were on opposite sides of the board and I couldn’t plug them in to my breadboard. The hack I did was that I configured IO pins 1 & 2 to be digital outputs and set one to low and one to high. That gave me the ground & +3.3v signals that I needed. I just used the USB connector for power, and that way didn’t have to attach anything to the other side of the board. I did however have to hookup one additional pin that the book doesn’t mention- they didn’t show wiring to the vREF and I couldn’t get it to work until I saw a reference to that in the XBee documentation and attached +3.3v to vREF (pin 14).

Next step was to configure the XBee units. I hooked them both up to USB and ran the XBee X-CTU utility twice. It showed me COM3 and COM4 and I used the terminal mode to hook up to each unit on a distinct port. The only configuration that was really required was on the “remote” unit- I hit it with-
ATD02 (analog input)
ATD15 (digital output high)
ATD24 (digital output low)
ATIR 3e8 (sample rate every 1000ms)
ATWR (write configuration)

After the ATIR command data started showing up on the “PC” side XBee- success!

Last step is to write a program to read the data on the PC side. I was really happy to see that the drivers just made the output from the XBee show up as a serial port so I could just use System.IO.Ports.SerialPort to read it. The documentation on the packet formats were a bit confusing so I spent a little time decoding them and I still get packets that are a different size than I expected, but I got the whole thing working- code is below.

using System;
using System.IO.Ports;

namespace XBeeBase
{
    class Program
    {
        static void Main(string[] args)
        {
            SerialPort port = new SerialPort("COM3");
            port.BaudRate = 9600;
            port.Parity = Parity.None;
            port.DataBits = 8;
            port.StopBits = StopBits.One;
            port.Handshake = Handshake.None;

            port.Open();

            try
            {
                while (true)
                {
                    byte[] buffer = ReadPacket(port);

                    switch (buffer[0])
                    {
                        case 0x83:
                            int sigStr = buffer[3];
                            int options = buffer[4];
                            int numSamples = buffer[5];
                            int chanInd = buffer[6] * 256 + buffer[7];
                            int value = buffer[buffer.Length - 3] * 256 + buffer[buffer.Length - 2];
                            if (numSamples == 1 && buffer.Length == 13)
                            {
                                System.Console.WriteLine("Read str= " + sigStr + " opt=" + options + " len= " + (buffer.Length-1) + " num= " + numSamples + " chan=" + chanInd + " value=" + value);
                            }

                            break;
                        default:
                            System.Console.WriteLine("Invalid input " + buffer[0]);
                            break;
                    }
                }
            }
            finally
            {
                port.Close();
            }
        }

        static byte[] ReadPacket(SerialPort port)
        {
            while (true)
            {
                int b = port.ReadByte();
                if (b != 0x7e)
                    continue;

                int sizeH = port.ReadByte();
                int sizeL = port.ReadByte();
                int size = sizeH * 256 + sizeL;
                byte[] buffer = new byte[size + 1];

                int pos = 0;
                while (pos < size + 1)
                {
                    pos += port.Read(buffer, pos, size + 1 - pos);
                }

                // Ignoring the checksum. Ideally we would validate it here.
              return buffer;
            }
        }
    }
}

References-
Building Wireless Sensor Networks: with ZigBee, XBee, Arduino, and Processing
XBee documentation from Digi
XBee Adapter Kit I didn’t use this one yet but it looks better than the one I did use for the breadboard unit.
XBee Series 2 I used the Series 1 so far for this project but the Series 2 are more flexible.

posted in Hardware, Microcontrollers, Networking, Technology | 0 Comments

7th November 2012

Posts about Netduino

I bought a Netduino a couple of weeks ago and am planning on posting about my experimentation with it (& other related stuff). I’ve played with electronics since I was in high-school, but its amazing the recent breakthrough that makes this stuff accessible. Back then I would pour over the Apple ][ schematic and try to learn how that stuff worked and hook up simple circuits with TTL gates. In college I built a simple 6502 computer by wiring up the CPU and some SRAM and having manual switches to input stuff. I made a very simple boot loader, but it was such a pain to get it going I never made it do anything interesting.

Now these new platforms are amazing. You can buy the Netduino which is an inexpensive 32-bit ARM microcontroller running the .NET Micro Framework, fire up Visual Studio, plug in the controller with an USB cable and hit F5 and its doing stuff. It has a bunch of I/O breakouts, and so you can build cool circuits from there. So far I made some simple light flashing things and a RGB LED controller that cycles the colors of a RGB LED and changes the cycle speed based on the setting of a pot. Next step is experimenting with some XBee controllers to do some simple mesh-networking. Part of the cool thing of those is it seems like simple functions can be wired directly to the XBee controller without needing a distinct microcontroller in each location.

posted in Hardware, Microcontrollers, Technology | 0 Comments

9th December 2011

Hardware Misc- NewEgg SSD Deal and Anand’s Guide

NewEgg has the OCZ Agility 3 240gb SSD drive on sale today for $239. This is the same one I just used in my new workstation and its been working great for me so far. This is a great price and together with another few recent sales marks SSD prices dropping below $1/gb.

Also AnandTech writes up their latest High End Buyers Guide and their SFF HTPC build is very close to my workstation build. Same processor, motherboard, case. Smaller SSD for only $20 less than the deal above, and they added a slot-based cable video input instead of the graphics card (since they did this as an home theater machine). Of course my HTPC is in an even smaller case and uses the external 3-channel video input and a slightly lower end processor.

posted in Hardware, Technology | 0 Comments

7th December 2011

Upgrades- 16gb of RAM and Radeon 6950 Hacks

Two quick updates on the new desktop PC before I get around to writing up more about the build process. First of all I mentioned in the previous post that I went with 8GB of RAM because the larger DIMMs were just to expensive. It turns out this is a perfect example of just how fluid the PC industry can be. Just a few weeks ago the only options to buy a 2×8GB RAM set cost more than $250, and last week NewEgg did a Shell Shocker for $99 which of course I snapped up. They are still more than 2x the price of 2×4GB sets, but since I love to run lots of things at the same time, run lots of VMs, etc, the extra RAM is really nice.

Meanwhile I also read about how you can upgrade 2GB Radeon 6950 boards to 6970s just by updating the BIOS to enable the extra shaders. Since I have one of those this sounded great, so I followed the instructions over at TechPowerUp. Er, except that I didn’t read all the instructions and missed the bit where for my board I was supposed to use a different tool RBE to update my existing BIOS instead of using the alternative BIOS they supplied. The result was a video board that hangs Windows anytime Windows starts up with the board installed and enabled. Luckily my motherboard has on-board video so I could use that but unfortunately the software that flashes the BIOS doesn’t work when the board is disabled in Windows.

Furthermore, the instructions on TechPowerUp show how you can easily fix these problems just by flipping a dual-BIOS switch on the board. So I look on my board and find the spot where the switch is supposed to be- the board has stenciled labels but I guess they cut costs by leaving the switch off. Grrrr.

I finally solved this by making myself a DOS boot disk using these instructions and putting the ATIFlash DOS utility on it. I was lucky I did follow the instructions about saving a copy of the old BIOS and that restored me to working state.

Proving that I’m a glutton for punishment I then tried the suggested technique of using RBE to update my existing BIOS. It didn’t seem to work for me- GPU-Z reported the same number of shaders and the machine seemed noticeably less stable. So I went back to the beginning and everything is running fine again.
Then I put the new RAM in. The downside of a smaller PC case is that it can be a real pain to modify it in any way. To replace the RAM I had to remove the video board (since it was in the way of the RAM side-clips), and the power supply (since it blocks everything in this case). Luckily the power supply is fairly easy to remove since there are nice thumbscrews that let you pull it out the back without un-plugging anything.

With the new RAM in I start up the machine and ran the Windows memory diagnostics. I always like to do this with new RAM to make sure everything is ok, especially given how much of a pain it can be to return stuff after 30 days. Its really great that Windows 7 has built-in RAM diagnostics- you just hit F8 during boot up, then tab to switch the “page”, and then select the diagnostics. I got a clean pass from those and am now full-steam ahead with 16GB of RAM.

posted in Graphics, Hardware, Technology | 0 Comments

29th November 2011

Details of the New Desktop PC for 2011

I’ve now completed building out the new desktop PC and thought I’d detail the hardware component choices I made. As I said last post, one of the key advantages of building your own PC is that you can pick the exact components you want, so its worth going over the list of those components and why I picked each one. In a future post I’ll fill out details about the challenges I encountered putting this thing together.

Finished view of my new PC in a Mini-ITX case

Finished view of my new PC in a Mini-ITX case

Component List

Processor: Intel Core i7- 2700K (quad core, 3.5ghz, 3.9ghz turbo)
Motherboard: ASRock Z68M-ITX/HT (Intel Z68 chipset, Mini-ITX)
RAM: G.SKILL Ripjaw 8GB (2×4GB DDR3 1333)
Graphics: HIS IceQ X Turbo Radeon HD 6950 2GB
Boot Drive: OCZ Agility 3 240GB
Other Drives: 2x Raptor 150GB Drives (from my old machines), Blu-Ray/DVD/CD burner (from my old machine)
Case: Lian Li PC-Q08B (Black aluminum Mini-ITX Tower Case)
Power Supply: Antec NeoPower 550W Power Supply
USB3 Hub: Syba SD-HUB20058 USB 3.0 4-port hub (internal/external)

Component Details

Before I dive into the details I’d like to reiterate my goals for the system. The idea is to build out as high end of a system as possible while staying within as small of a form factor as possible and not buying any of the extremely-expensive parts. This is my main workstation machine for my home office so I use it for coding, running VMs, browsing and playing games.

Processor- for a brief window of time the Core i7- 2700K was the top of the line processor available. For some time Intel has always had a “top of the line processor” that cost close to $1000. But this past year the best processors have been under $400 so its been a fairly easy choice to get the high end one. Intel just came out with the new Core i7- 3960X that costs $1049, but that takes a new chipset and socket type and there aren’t any mini-ITX motherboards that support it. So I get to stick with the 2700K which is just as good for most games, and even better for most encoding tasks (since it has the on-chip GPU that can be used for encoding).

Motherboard- There are really only two choices here. I wanted the Z68 chipset since it improved a bunch of things over the previous ones for a high-end system, and only Zotac and ASRock make motherboards in Mini-ITX form factors. The Zotac board I just couldn’t get to work. It fails pretty consistently on boot. I’ve tried it with multiple CPUs and RAM, so the problem is definitely the board. Also its impossible to upgrade the BIOS without booting to Windows (as far as I can tell) and since I can’t boot to Windows without crashing, that ends up being a pretty serious problem. The Zotac board has some nice video outputs, but they don’t matter for this system, and the ASRock adds an eSATA port which is really nice. The only problems I have with the ASRock board are that the eSATA port doesn’t support port-multipliers. I had been hoping to use it with an external Sans Digital 4-drive eSATA box, but it only shows one drive when I plug it in.

RAM and Power Supply- I got both of these on New Egg “Shell Shocker” specials. No special logic for these other than that I wanted brands that are generally well known, I wanted 8GB of RAM (tempted to get 16GB but the 8GB DIMMS are still way too expensive) , and I wanted a “modular” Power Supply that lets you just connect the specific connectors that you need to reduce cable clutter inside the box.

Graphics- I’ve generally liked the ATI/AMD boards lately and this one seemed to be this generations sweet spot of being able to drive 3+ monitors and give enough performance at 2560×1600 without being in the stratosphere of pricing and heat. This board seemed like it would be relatively quiet with decent cooling for the system which I was expecting to have a fairly crowded box.

Boot Drive- I’ve been using an Intel X25M 80gb and the boot drive was getting a bit cramped. NewEgg had a killer sale on this OCZ Agility 3 and 240GB gives me plenty of room for boot-drive stuff. One interesting note- because my old system was on my old drive as a VHD, I was able to copy the VHD file over to the new drive using a “VHD Resize” utility, reinstall boot-loader stuff, and it made it fairly easy to just switch all my existing OS over to the new machine.

Case- The Lian Li PC-Q08B case was one of the few choices in this range. I was looking for something that was as small as possible, but would still accommodate a full-sized video card. This case supports plenty of drives and overall ends up far smaller than what I had before. Overall the case was a pain to setup, but that usually goes with the territory when you are trying to build a smaller form-factor system (although plenty of big systems are a pain too). The way the USB3 ports on the front work are especially weird. They didn’t include a normal USB motherboard header (which the ASRock board wouldn’t have had anyway- the one advantage of the Zotac is it has extra USB3 ports). The front panel connectors just terminate in USB3 plugs that you have to work through the case and plug into the back. Instead I bought a small “internal” USB3 hub that can run off a standard floppy power connector and stuck it in my internal drive bay. Now, that thing is plugged into one of my back USB3 ports, but at least both of my front ports work and I still have one in back.

As I said, I’ll fill in more details about the various challenges putting this thing together shortly. The results appear great right now though- instead of taking up a huge amount of floor space, I have a small mini-tower in the corner of my desk. The CPU doesn’t exactly run cool (its ~40C at idle and maxes out at ~70C under high workloads), but its well within the expected limits. And best of all the overall result is acting very stable and is snappy fast.

posted in Hardware, Technology | 3 Comments

21st November 2011

New Desktop and Media PC Builds November 2011

Here I go again. I’m starting to feel like a bit of a masochist building my own PCs rather than just buying something nice off the shelf. A colleague asked me the other day why I build my own and sometimes its hard to actually figure it out.

Ultimately it comes down to being able to spec out exactly the parts that I want. I can get the exact processor, video card, dvd drive, hard drives that I want. When you buy from a vendor you have to deal with their choices which are often optimizing for very different things. They also tend to have weird pricing where certain crappy components are cheap but the ones you want are a huge upsell (SSDs are still in this category- they charge far higher than market prices for them when you configure one with a PC now). Also by buying pieces I can more easily roll over components that are still working fine from the previous PC.

Either way the biggest pain is dealing with broken pieces. This is frankly where Apple has it nailed lately- bring your broken stuff into an Apple store for the first year and they just fix them (although sometimes you wait around for a year). Dealing with replacements and RMA shipping whether from Dell, HP or NewEgg is just a huge pain.

For components in general I’m a big fan of NewEgg. Buying stuff from them is great, their prices are decent, they ship things quickly, and its easy to find the right stuff on their site. But when something doesn’t work the RMA process can take hours to the point where I often just give up rather than try to get the component replaced (which I suppose is the point). I’ve discovered you need to be careful about buying the components of a system early since after 30 days returns become an extra-nightmare. I bought a nice slim blu-ray drive for the Media PC but took more than a month to try it out. It turns out it was DOA. So I contact NewEgg. They say “too late, contact the manufacturer for their warranty”. So I contact Sony Optiarc and they reply “we are just an OEM, contact your retailer for warranty support”. And thus we enter Kafka land… Eventually someone worked it out and $10 and several hours later my drive is on its way back to them to be replaced, but I assume it will be weeks before I get my replacement.

This year’s upgrades are both pretty similar. Both my Media PC and my main home workstation are getting new Sandy Bridge processors and new smaller cases with mini-ITX motherboards. The old Media PC was in a fancy “media case” which was about the size of a big receiver and the new one is more like 10″x12″x3″. It doesn’t have room for 5 drives in it like the old case, but then again I bailed on putting 5 drives in the old case since the heat and noise was a big problem and I didn’t need more than 2TB storage in the actual media center box anyway (all the big movies are off on the server anyway).

The workstation has moved from the huge and heavy Antec P182 case to a new mini-tower that is more like 14″x10″x12″ and is about as small as you can get with a mini-ITX motherboard, high-end CPU, a few drives, and a full double-width video card. Its still super-tiny compared to the huge old tower and I should be able to stick it in the corner of my desk behind my monitors and free up a ton of floor space.

More details on both systems in later posts.

posted in Hardware, Technology | 0 Comments

17th November 2011

Kindle Fire Day 1 Impressions

As with many others, I received my Kindle Fire yesterday and thought I’d write up my initial impressions. My main frame of reference is comparing it to older Kindles and my gen-1 iPad which probably sees 50% of its usage as a Kindle reader.

I should start off my with my expectations. First of all the price point is low enough for me that I was willing to take a chance with it to learn what its like to live with an inexpensive mini-tablet. I’m hoping that it fills a role in my multi-device household that includes ePaper kindles, the iPad, many PCs (laptops and desktops) and the xbox. I should be able to use it to read a book, to check recipes in the kitchen, or watch some TV shows on Hulu, NetFlix or Amazon. I’m also putting my entire music collection into the Amazon Cloud Drive so checking out how they pull off the seamless integration with their cloud services should be obvious.

First of all, overall the device is really nice. The display looks good although its pretty reflective and certainly shows fingerprints pretty easily. The lack of any hard-buttons other than power means that simple things like increasing/decreasing volume require hunting around on the screen (& multiple steps) which makes it pretty inconvenient as a music playback device.

Again, the general impression was that its a solid effort but with some rough edges. It should actually have plenty of CPU compared to my gen-1 iPad and WP7 phone but lots of simple animations “tear”/drop frames. The best test of this I did was that I used my iPad & Fire to read exactly the same book side by side and flipped pages. The iPad page transitions were smooth, the Fire ones would glitch. The same sort of thing happens in the flip UI on the home page (which is actually not a very practical UI anyway although its nice eye-candy when it works smoothly).

Overall video playback worked pretty well, although NetFlix seemed like the audio was slightly out of sync with the video. Hulu seemed like it was better enough that it wasn’t annoying (watching a TV show on NetFlix was off enough that it bothered me).

The browser is ok, although it also just “felt” a bit rough. Pages just felt like they were loading in a bit of a funny way. Also it will be interesting to see how I feel about the 7″ form factor after using it for a bit. For reading fiction in the reader it was fine, but reading a technical book felt really squished and most web-sites wouldn’t fit in portrait so I had to switch to landscape which was a bit awkward.

I’m a little disappointed that it doesn’t have audio-in of any sort. If it did you could see amazing apps like Amplitube run on it. At $200 for an amazing guitar/vocals effects box I’d probably buy a few. Of course if Amazon is losing money on every one sold that might not work out so well for them. It will be interesting to see if the USB port can ever be used for any peripherals?

The lack of any option for 3g is too bad also. The whole billing model for cellular network devices is a mess right now but I’m assuming by 2020 we will have that all figured out and these super-portable devices will be much more killer when they are just automatically internet connected, always, everywhere.

One other frustrating thing is that the on-screen keyboard is terrible compared to those in iOS and Windows Phone. I don’t really have any experience with other Android phones or tablets- is keyboard input this bad on all Android devices? Or maybe the Fire has a less expensive touch digitizer so its less accurate at reading the positions of my taps?

Overall, its still a very solid inexpensive media consumption device and it seems like it could open up this category for a much broader audience. Further, its realistically a v1, and I’d expect to see lots of improvements polishing these rough edges in the future.

posted in Hardware, Technology | 0 Comments

13th December 2009

Winter PC Cleaning

As I typically do this time of year its is time for “Winter PC Cleaning”. This is the time of year when I often end up looking at which machines around the house I need to upgrade, which to replace with new machines, and which machines to reinstall Windows to get rid of the cruft that tends to build up over time.

On that last point, its unfortunate that its necessary but it really does seem like a good thing to do. It isn’t as bad as it was in the old days when your system really got slower and slower and progressively less stable if you didn’t clean it up. But as improved as it has been the last couple of years, there is still plenty stuff you install that makes various hooks into the Windows Explorer, into your codec list, and all over the place and without starting from scratch now and then. In the past I’ve felt like I had do to this every year with my main machines, but I guess its a mark of progress that I’ve survived for a whole 2 years without worrying about it.

Two years ago I built my new workstation using top of the line parts of the day. At the time a 3ghz (overclocked to 3.66-4ghz) quad-core CPU with 4GB RAM was pretty much top of the line (unless you went to the server-class Xeon chips in which case you could use two quad-core CPUs for 8…) It is an interesting benchmark of the state of progress in the industry that while the shiny new Core i7 machines are indeed faster, they aren’t enough so that I’m really eager to build out a whole new system right away.

Still there have been a couple of things that have been annoying me. My home workstation was still running Windows Vista and while I’ve been increasingly using a Win7 VM on it, having used Windows 7 at work for a long time now I’ve been eager to upgrade it. The other biggest concerns were that the main disk has been feeling really slow. Its one of the expensive faster “Raptor” drives, but its not that much faster and combined with the fact that I’ve been running 32-bit Vista which sure seems to page a ton, and that the drive is so noisy you really hear it when its seeking all over the place, it has felt like a real dog.

So given that I’m moving up to Windows 7, I bought myself two key upgrades- more RAM to take the system to 8GB (which with the 64-bit install of Windows 7 I plan should work nicely) and a SSD for my boot drive. NewEgg was nice enough to have a screaming black-friday deal on the 80GB X25Mg2 drive for $219 (down from the usual $279 or so) which was enough for me to pick one of those up right away. I kind of wish I’d bought two so I had one for my laptop, but I’m not quite going there yet.

The other big plan is to install Windows 7 in a VHD so that I’ve got more flexibility to backup my OS image. I found some instructions here although I’m not worried about the dual-boot thing. I know some friends who are using dual-boot to have separate partitions for non-released stuff (beta versions of Office and other stuff) but I just run those in VMs and don’t mess with different base OS images.

There was one big trick missing from the instructions for VHD install. When I went to setup Windows and selected the VHD disk it told me that the given partition was not supported for boot. Turns out that the “Next” button was enabled after all and the install worked just fine, so that warning just needed to be ignored.

So hopefully that should do it for now. I suspect it will be time to upgrade my video card (currently an ATI 3870) in a few months, although I’m really hoping that they will come out with some that support 4-6 outputs on a single card (which is the rumor). Those of course might need new connectors (DisplayPort) so the scary part might be waiting on a new generation of displays. Since large multi-touch displays should also become practical sometime in the next year, I’ll be waiting on those for sure before I upgrade anything.

posted in Hardware | 0 Comments

6th November 2009

2.5″ SATA

One interesting twist- when I was doing my table I was mostly thinking of SATA in terms of the high capacity 3.5″ drives, where you can get a 1TB drive for ~$90 and a 1.5TB drive for $120. So that is actually $.08/GB (which I rounded up to $.1). But a very interesting in-between solution is to go with the commodity 7200RPM 2.5″ drives. The fancy 10k/15k RPM SAS drives are always worse performance/$, but a $60 250GB 7200 RPM 2.5″ drive gives you pretty much the same IOPS. Plus I’ve seen 2U server designs that can fit more than 25 in a single box (as compared to ~8-10 max 3.5″ drives).

So if you aren’t trying to maximize capacity in a 2U unit you can either do-
10×1.5TB 3.5″ drives, 15TB storage, 750 IOPS, $1200, 0.625 IOPS/$
or
25×250GB 2.5″ drives, 6.2TB storage, 1875 IOPS, $1500 1.25 IOPS/$

Which represents twice the performance/$ at a cost of less than half the capacity/$. But again, if you weren’t going to be able to use that capacity anyway, its a great trade-off.

Alternatively in the same price range you could get two of those SSDs if you data-set is really small-
2×64GB SSDs, .13TB storage, 6600 IOPS, $1400 4.7 IOPS/$

So the SSD performance/$ is still better, but the capacity is so small that its unlikely to work for many applications.

posted in Hardware, Storage, Technology | 0 Comments

26th February 2009

New Printer- Canon Pixma MX7600

I keep meaning to post more about what is going on at work, but that always seems like so much effort to get it right. In any case I got a new printer, which is fun. I’m a fan of the multifunction printers, by which I mean ones that can scan and print in the same unit- fax I don’t really care about and I suppose in theory I could “copy” but I never do.

My old printer was a Dell All In One 962. Dell was practically giving these away free a few years ago and frankly it has done a decent job. But as with most cheap mechanical devices it has started being more and more flaky, plus the software never really worked right with Vista and so the older scan to PDF (with OCR) function hasn’t been working right which has sucked.

Looking at reviews of other printers I noticed that Canon overall seems to get good marks and I was pretty excited to see a couple of models that support duplex printing and scanning. The worst part is that it was very very difficult to tell what the difference was between models, but I ended up getting the slightly more expensive one at just less than $300. In today’s printer market where the printers are almost free and they gouge you on ink, that is a fortune.

My first impression was that the footprint of this thing was huge- much bigger than I expected. It fits in the spot where my old printer was, but only by bulging out onto my desk an extra 6″ and getting a little in the way. I suspect this might have to do with various protrusions that are used to flip the paper for the duplex stuff. Setting it up I noticed a cool feature that old printers didn’t have- the print head unit is replaceable- one of the big problems with my old Dell is that over time the print head has gotten gross so being able to replace it is a nice thing (even if at close to $50 it costs as much as many printers).

The ink is also in individual reservoirs for each color. Again, this gives you potential savings since you don’t have to replace the whole thing the first time one runs out, but it also means there are 6 different things to replace at $15 each. It also has this “clear ink” which frankly I don’t get. This review of the MX7600 explains that clear ink is used to coat normal pages so they work as well as special inkjet paper so we will see.

The setup was both of a bit of a pain and kind of cool. It does a self-calibration step that takes 10 minutes and failed the first time, but basically prints some stuff and uses some optics to make sure it worked right automatically. Still, it did work on the second try and I was off to software setup. The software setup took forever and a half and installed 300mb+ of crap on my machine and required a reboot, none of which are cool. I’m using the printer connected to the network but it doesn’t just work as a normal Windows network printer- you have to hook it up the first time on USB + Ethernet and then you can ditch the USB. Still it requires their software install on every computer that wants to print (unless you use a computer as a server which isn’t really the point of a network printer in the first place).

Printing seemed slow but the quality was fine, and what do you expect for an inkjet. Scanning seemed much faster and the software is much nicer than the old stuff from Dell. Duplex scanning from the paper-feeder rocks, and they have a great mode where it shows the scanned pages and lets you easily rearrange / collect them before combining them in a PDF.

Overall looks pretty good so far..

posted in Hardware, Technology | 1 Comment