Monday Aug 31, 2009

Epson NX - A cheap refurbed printer

I went out shopping at Fry's last Friday and just on a whim, saw they had a diminishing stack of refurbished Epson NX400 inkjet Multi-Function copier, scanner, printers. Price was right. Just $45. So I bought one. Heck, the stack of 4 black, cyan,magenta, yellow cartridges alone was worth about that much. So it was definitely a good deal. Like buying the cartridges and getting a free printer!

I waited until Saturday evening to unpack and install. I used to dread hooking up printers because it'd be a lot of trial and error to get it working. But if folks have noticed since SNV build 90 or so, the printing has been greatly simplified by the support of CUPS option. Solaris LP is still standard on the system, but it's very easy to change. Simply, use the print-service -s cups command to switch over from regular LP to CUPS (see the man page for more info).

The reason why I bought it was due to clogged heads on my older Epsons, and try as I might with the Windex spray into the heads and soak over night (folks may want to do some web search on ammonia-based cleaning and declogging procedures), the black printing head was clogged beyond repair. I did get the colour printing going, but after many dark stains on my fingers, I gave up.

And the reason for my clogged inkjet heads was due to lack of use. Ever since my wife discovered 14 cents/picture Costco Photo Center then found out she can pick up in at most an hour (sometimes in 30 minutes!), she'd rather just print it there. So I don't need to print colour copies often at home, and if colour inkjet printers don't get used often, ink can dry on the heads and clog them up. Some printers are designed so the cartridges contain a fresh head, like the HP inkjet printers. However, this tends to add cost to each cartridge, but has the advantage that each cartridge comes with a new print-head. Needless to say, I placed my bets on lower cost cartridges.

Still, I have to print with a colour printer every Fall, and that's because my kids go back to school. Our school has an annual request for emergency rations and updated emergency contact information, which includes a couple of colour photos of each child that can be used in case of an emergency for identification by law enforcement or school staff.

So what was great about the NX400 was that it has USB and PictBridge. It allows me to directly print from the camera. It also has a small 2 inch or so colour LCD display. And the reason I bought it was because if I couldn't get Solaris to recognize it, at lease, with direct printing from a camera or USB, I could copy my picture onto some flash memory and use my camera as the printer driver. But deep down, I was hoping for CUPS to recognize it.

Upon plugging it in the first time, Solaris CUPS responded and loaded the driver for Epson Stylus CX8400. I brought up my browser and put in the URL for http://localhost:631/ and then tried to use the browser links to have CUPS print a test page. But after shooting out 5 pages of blanks, then marking the top of the next 20 pages with a couple of characters each, the NX400 was definitely not happy. So I managed to dequeue the remainder of the print job, and shut down the printer and restart it to clear the job. I guessed this would happen and it did so nothing was new. But I decided to make a concerted effort to try each printer type under Epson listed in CUPS and see if those drivers would work. One by one, I tried for about an hour, working backwards from the bottom of the list. I finally tried the Gimp-print driver for the Epson CX3100, and to my great surprise, the test page printed beautifully. I couldn't believe it, and setup a remote system to network print using this printer. On the remote side, I configured it to issue out generic Postscript. And it too printed out over the network! Fantastic.

Fig. 1. Epson NX200 multi-function printer/scanner/copier

So I went back to Fry's Sunday and found they were out of stock. There, I notice another Epson printer, the NX200, which looks almost the same in size, design, shape, and even multi-function scanner/copier features, except for no colour LCD display. Instead, it has push buttons. But this too, offers PictBridge and USB/SD card direct printing from my camera. When I asked the sales clerk if he had any NX200 units in the back, he said, "No." However he explained the Palo Alto store had 14 in stock. But what was amazing was the $29.99 price tag. A truly excellent deal considering the print cartridges are worth more than that.

I rushed to the Palo Alto store and on a hunch, picked up another printer, the NX200. Rushing home, I unpacked it, and it was indeed identical, using the same cartridges, and had the same chassis and only varied by the display and button interface. Plugging it in, and configuring CUPS, indeed, it uses the same Stylus CX3100 Gimp-print driver and prints well under Solaris. I went back to the Palo Alto store in the evening to check if there were more, and picked up 3 NX200s, no limit, at $29.99 each. I figured my parents, in-laws, and other friends might need a printer as a gift.

In printing out colour pictures, I found the PictBridge from my DigCam to printer to work great. Colours were vivid and accurate and no PC needed. However, printing from GIMP on Solaris, simple line art prints beautifully and fast. But photo-printing is too light in 360 DPI as well as 720x360DPI, but too dark using 720x720 DPI and finer. I tried playing around with GIMP brightness and contrast and colour saturation. I managed to get the 720x360DPI mode to print acceptable albeit somewhat grainy pictures, and in doing so, I also accomplished what I originally set out to do - to print my kids ID photo collage and age/height/wt info on the picture for their start-of-school-year emergency packet.

Tuesday Jun 02, 2009

JavaOne/CommunityONne OpenSolaris 2009-06 Install

I'm blogging from the OpenSolaris install booth at CommunityOne/Javaone 2009 at Moscone Center, San Francisco. This must be the 10th show I've actively participated in. Prior years, I was a Java guy setting up talks, doing BOFs and sessions of my own or with a team, but in recently years, since moving over the C-side of Solaris drivers, that hasn't been the case. And in a way, it was a protest against policy on giving away bags to the Sun speakers, which I have a great collection of in the early years. LOL!

Of course, from an internal standpoint, my colleagues and I in the driver team always have a lot of fun doing bring up of systems on earlier versions of OpenSolaris. Some versions die horrible deaths and take hardware with it. But as part of the Instal-Booth staff at the show, I gave a final test run of the bits yesterday, and after a little bit of fiddling last night, I've now got 3 laptops installed with the June 2009 bits of OpenSolaris. BTW, we announced them yesterday.

Overall, the experience was pretty good. I've really gotten fond of USB-stick install, and so I carry around at least a few 1GB sticks. The image is about 800MB on the USB stick. The CD image is just under 700 MB. The USB stick seems to average just 18 minutes on my dual core laptop, and over 31 minutes from a USB CDROM drive. Most of the folks have some trepidation about install because currently, we're not bundling a partition utility. But colleague Mark Logan recently checked GNU parted ported to Solaris into the build tree, so it should be coming soon, at least on Nevada. It may take a bit of time to appear on formal install media, but what that means hopefully is that folks will be able to boot the runnable image, then upload via USB bits as a separate wad of stuff, and then unpack and run it. It includes NTFS support and I've gotten it to work on most disks and laptops and systems for dual-boot.

But just in case we have issues with some disks and VTOCs that don't quite follow a standard, I carry a Knoppix 6.0.1 bootable USB jumpdrive which seems to deal with partitioning a little bit better than Solaris due to a broader support for standard and non-standard VTOCs disks. Speaking of disks and VTOCs, some of the really cheap 2GB and 4GB USB sticks don't seem to follow VTOC standards either and while those sticks are flashable and bootable for OpenSolaris, for some reason, we can't install from them due to a particular read and mount issue. Most higher-end Sandisk USB sticks have worked great, and the higher quality sticks usually have been great. But the low-end 2GB+ ones have been problematic.

Armed with the right tools, OpenSolaris 2009-06, at least for me, installed fine, didn't kill my Windows slice, and most everything works. HD Audio, graphics, networking. I was even surprised when my Realtek USB wifi came up automatically with NWAM. That's impressive. Even my webcam works on both the Acer which has a built-in unit, and my el-cheapo A4Tech 720MJ $25 usb cam.

community one webcam image

Above is a picture of a developer session I sat in at Community One while playing with my webcam. I was video conferencing with another colleague via The A4Tech camera is fairly inexpensive but follows the USB Video Class standard and works fine with Solaris. It's been problematic in the past with OpenSolaris finding a cheap USB Video Class webcam because of cost. It seems like a lot of vendors either claim support but don't quite follow the standard, or use one of two other protocols. But with Microsoft demanding vendors to follow the USB VC standard for 2009 and later cams to have Vista certification, hopefully, more cheaper cameras will arrive on the market for under $25. I will testify that the on-board webcams for many netbooks and laptops, like the Toshiba M10 and R600 and for the Acer 8.9 and 10 inch netbooks, the Toshiba NB200 network, etc. all seem to have working USB webcams that run fine with OpenSolaris. One thing with the software on GNOME is that it's still a bit fresh and so the streaming images have streaks. I haven't looked at the source yet, but it may be that double buffering or lack there of is leading to streaking, or maybe some USB interrupt architecture that unnecessarily impacts streaming video is causing streaking on OpenSolaris. But the picture is still very usable.

Signing off for now. More conference to attend.

I did find out the latest Mozilla Firefox has some better security, but I used to set my forms to prefill name and email address for me, but those settings are lost. I have to figure that out

Tuesday Feb 10, 2009

Hacking nevada audiohd parser for S10 update 6

I received a phone call from a partner asking about running a demo on a new workstation/desktop platform at a tradeshow soon. He needed to get audio working on a number of systems to play simple clips, maybe some online YouTube stuff. He knew the Solaris audiohd driver was working great in latest Nevada SXCE but he hasn't been able to get the same support for audiohd drive on Solaris 10 update releases.

Just last week, a colleague mentioned the same problem on a new hardware platform also going through bring up with Solaris 10 update. So I got around to finally trying to back-port the latest audiohd codec parser to S10 from the Nevada source. Luckily the work was trivial. I just needed to remove a single function symbol in a struct and comment out a couple other lines for audiohd_quiesce() and rebuild on S10. The code needs to compile using Sun studio compilers 11 or later or a full complement of GCC compiler tools with C99 support. On solaris 10, just 15 minutes and I have audiohd working with a number of new platforms. The codec capabilities parser is sure great.

I don't know if there are plans in place to back-port the parser formally to S10 update. Audio is still considered a secondary function, and likely, that's the priority where it'll remain. But I know for users like myself, audio is clearly a top priority to get working on any solaris system. Plus, I've been getting re-acquainted with all that 80's synth band music which I hadn't heard in a while, like Depeche Mode, Electronic, and New Order. I just bought the best-of collections for all 3 bands and listen to them on my test S10 lab boxes. Kinda cool and nostalgic at the same time.

I've put together a src tar-ball and uploaded it to Hopefully, some folks can get some use out of it if they plan to stick with S10 update only.




« July 2016