Tuesday, December 30, 2008

Tired, Frustrated, Irritated

So my plans to spend this evening debugging Gabor's ADS USB AV704 tuner issue came to a screeching halt when I went to login and my ssh public key wasn't accepted. Tomorrow is New Years Eve, so I probably won't get back to it until perhaps Thursday (and if not Thursday then next week since I am going to Philly this weekend).

I went to work on the Pinnacle Ultimate audio support and panic'd the kernel every time I connected. This is especially bad since my MacBook doesn't have a serial port to dump the backtrace to and, even in 2009, Linux still lacks even a rudimentary kernel debugger bundled with mainline distributions. I hate to point this out, but Windows had a pretty good kernel debugger in the mid 1990's (SoftIce) that took a whole five minutes to install. What the hell is wrong with Linux?

So either I'm going to have to try to move my development over to my other system, or reboot my system 30 or 40 times trying to remove suspect code until the issue goes away.

Wow I'm angry.

I think I'm going to just shelve this whole thing for the evening and watch some TV.

Monday, December 29, 2008

Em28xx fixes

I finally took a break from Pinnacle Ultimate development and got some time to go through my backlog of em28xx issues. They just got merged:

10120 http://linuxtv.org/hg/v4l-dvb/rev/41040ddfad77
10121 http://linuxtv.org/hg/v4l-dvb/rev/f455ec9f2c8d
10122 http://linuxtv.org/hg/v4l-dvb/rev/b7b2621d7ec8
10123 http://linuxtv.org/hg/v4l-dvb/rev/1a92fc0abb10
10124 http://linuxtv.org/hg/v4l-dvb/rev/e02d2bfee024
10125 http://linuxtv.org/hg/v4l-dvb/rev/4a06b5c3344f

Most of these were things I noticed doing the Pinnacle development, but a couple were issues I saw working issues with users in the field on other devices...

Regarding the Pinnacle 808e, I've got CVBS and S-video working, and then realized that the mxl5005s tuner doesn't have any analog support. Doh. Also, still need to straighten out the analog audio, which I haven't really played with yet.

Pop quiz!

Question: How do you know you have the best fiance ever?
Answer: She makes a fresh batch of black bean dip for you to eat after she is gone!

On a separate but related note, tonight I learned not to put an uncovered dish of chick peas in the microwave, even if the directions tell you to - unless you're willing to spend the next ten minutes cleaning up from the explosion that results.

Sunday, December 21, 2008

Pinnacle Ultimate 880e analog bootstrapped (Finally!)

Well, I got my first real video from the composite port of the Pinnacle Ultimate:

I spent the last week debugging what I believed was a bug my driver for the analog frontend/demux subsystem of the saa7136. None of the registers were reporting any sign of video at all (no sync, hlock, etc).

Finally, just for giggles, I unplugged the composite cable running from the DVD player I was using as my CVBS test source and plugged it back into the TV. No picture there either.

Yes, it turns up somehow I managed to break my DVD player when I took it out of my entertainment center last week and moved it to where I was working. Yes, of course I had tested to make sure it was working fine before I moved the unit.


On a sidenote, the screen capture above looks like crap because I just hooked the input to my digital camera and my apartment has low-light.

Early Holiday

Because Victoria and I were going to be celebrating Christmas with out families, we wanted to have some time to ourselves to celebrate our own little holiday at home. So yesterday, we opened each other's presents under our tree!

Later that evening, we went out for a walk to see the tree in Rockefeller Center.

Thursday, December 18, 2008

Four more patches...

Four more patches got merged this morning for various fixes. I needed a couple of these for device support for users I am working with in the field, so this is a good thing:

9920 http://linuxtv.org/hg/v4l-dvb/rev/8760744a13a8
9921 http://linuxtv.org/hg/v4l-dvb/rev/9cd754abbb03
9922 http://linuxtv.org/hg/v4l-dvb/rev/95d2c94ec371
9923 http://linuxtv.org/hg/v4l-dvb/rev/757a1727758c

Wednesday, December 17, 2008

More fun...

Because I was having trouble getting the saa7136 to capture on CVBS, I went to my Windows XP system, to get a reference capture. It turns out the rather slow PC I use just for captures is so slow the Pinnacle software cannot do analog captures. I forced through it though, cut up the i2c calls and embedded them into the source, and then realized that the Windows capture had been against the tuner instead of composite input. At that point, I gave up for the night.

Did some analysis of the traces Gabor provided for the FQ1216ME and it turns out I wasn't initializing the tda9887 driver properly. Sent him a patch and if I'm lucky it will start to just work.

My pull request for last night's fixes hasn't been serviced yet. Wonder if there was a problem...

Will answer a few questions on the #linuxtv chatroom and am off to bed...

Tuesday, December 16, 2008

SQL Server 2008: So good you don't even need support!

Apparently SQL Server 2008 is so problem-free that they don't even put it in their list of products on their support site:

(Click to zoom)

Dell is pretty annoying

Dell is now charging $150 additional for Windows XP on their Dell systems. Yes, $150 *more* than if you use the newer supposedly better Windows Vista.

Remember when the OEM version of Windows XP represented around $50 of the cost of a system?

Also, they got rid of the ability to buy an Ubuntu PC without a monitor. So for those of you who might already have a monitor kicking around, while you can get a cheap Windows PC for $279, you can't get the Ubuntu system for less than $429 (and you're stuck with a monitor you don't need).

I was thinking about buying a new PC and now I'm going to have to go with a different vendor since I won't pay for a monitor that I don't need. I guess I could buy an XP system for $279 and install Ubuntu, but why the hell would I want to give Microsoft money?

I've always been pretty supportive of Dell, but I think perhaps they've lost their minds...

Monday, December 15, 2008

Pinnacle Ultimate progress...

Last night, I started writing a saa7136 driver for the Pinnacle Ultimate 808e. Used the cx25840 driver as a template, and got i2c working properly and am able to perform both i2c reads and writes to registers (successfully read the chip's version info). Next I will get the composite interface working (Pinnacle provided the analog pin mappings for the various interfaces on Friday).

Also sent test patches to users for the ADS Instant TV USB 704 and the Pinnacle PCTV USB (DVB-T). Will hopefully find out in the next couple of days what is still required for those devices based on their testing.

Sunday, December 14, 2008

Christmas tree

Victoria and I went out and picked up a real live Chrismas tree. It's the first tree I've ever bought myself, and despite having brought home trees when I was a kid, I never had to drag it 20 blocks through Manhattan without a car...

I know the lighting is kind of messed up, but it's surprisingly difficult to photograph a Christmas tree without a flash...

Saturday, December 13, 2008

Whole lot of santas...

I heard a crowd outside my window, and saw three Santas walking down 5th Avenue. A minute later, I heard a much larger crowd, and discovered there was actually some sort of Santa march...

Wednesday, December 10, 2008

More Kaffeine debugging

Did some more debugging of the ATSC quality problems in Kaffeine. I did find a bug where we were supposedly sending the modified PAT/PMT entries every 0.5 seconds and there was a race where it wouldn't always happen (sometimes for tens of seconds at a time). This could explain some of the audio dropout problems, but we will see...

It looks like the issues in particular occur when there is a weak signal and lock is being lost temporarily. There is some sort of bug where when lock comes back Kaffeine doesn't recover properly. I have been simulating this by continuously unplugging/replugging the antenna while viewing live TV, but in my case it's actually a little harder than I would like since I get a 20 dB signal without the antenna plugged in.

Got caught up on the last couple of weeks worth of House, thanks to Dan who gave me the Tivo recordings.

No word back from the user with the ADS Tech Instant TV USB, so that is going to have to wait for now. This is the annoying part of remote debugging, since if I had the hardware I would have just done what I needed to and would have had the device support committed by now.

Tuesday, December 9, 2008


Was a relatively uneventful day. Worked. Got a haircut. Watched Get Smart on Netflix.

Wrote an initial device profile for the ADS Tech Instant TV USBAV-704. Just need to work out the GPIOs and I should be able to commit a patch. Shouldn't be rocket science.

Going to try to work through my backlog of em28xx traces that various people submitted over the last couple of weeks. It looks like I won the Ebay auction for a Pinnacle Dazzle DVC-100 for $15.50 (they retail for $49.99), so I should be able to work out the bugs a user reported three weeks ago.

Still parsing through the docs on the saa7136. I've got some questions pending about the Pinnacle Ultimate hardware design that I need to get answered before I take a crack at writing the driver.

Monday, December 8, 2008

Pinnacle Ultimate 808e: saa7136...

Pinnacle came through again this morning and provided me with more than 500 pages of documentation on the NXP saa7136. Spent most of the evening reading. Came up with this basic plan:
  1. bootstrap i2c
  2. get em2882 to identify saa7136
  3. Dump version registers to dmesg
  4. Enable CVBS capture mode
I know some of you might be thinking "what about everything else!?", but bear in mind that the above list demonstrates the core communications to the chip are working. From there I can flesh out the functionality. Audio support, the video scalar, quality tuning adjustments, mxl5005s tuner support - all those build on top of the above.

Fortunately, the device has most of the registers pre-configured for reasonable defaults, so I don't need to setup every register before I start seeing video...

I'm looking at the commitments on my calendar, and am wondering when I'm going to have time to work on this. December is such a busy month...

Friday, December 5, 2008

Fla. congresswoman hangs up on Obama

Here's a classic example of how bad the authentication problem is, even in the 21st century:

Fla. congresswoman hangs up on Obama; thought call was a prank

Even a way for the President of the United States to prove his identity without some form of out-of-band communication...

Thursday, December 4, 2008

Pinnacle 801e and xc5000 tuning...

Thanks to Pinnacle I have made some new contacts at Xceive and gotten access to the reference drivers and register map for the xc5000. With only a couple of hours of reading and experimentation, I now know why the XREG_BUSY register has been misbehaving, as well as the expected power management behavior. Wow, these things go faster when I can just look at the documentation.

If all goes well, I hope to push out the patch series I had been working on with mkrufky, which will bring tuning time from 3200ms down to around 300ms. Just need to prep the new firmware, write two relatively simple patches, and retest with all the xc5000 devices. Yay.

Monday, December 1, 2008

Thanksgiving Weekend

Spent Thanksgiving in New Jersey. Had dinner at Mom's and then spent the rest of the weekend at Victoria's aunt's house. On Sunday we had our engagement party so the immediate families could meet for the first time. Lots of food. Fun was had by all.

I brought the Wii to her family's house, and they really got into it. I came home from shopping to find her aunt, uncle, and 82-year-old grandmother playing Wii bowling.

Ran into Rob Emanuele and his fiance Hillary on Saturday afternoon at a bakery in Brick. Very strange. He lives in Spokane, I live in New York City. Neither of us spend any real time in Brick, and I hadn't seen or spoken to him since 2002.

The Best Buy in Brick had the Pinnacle 80e mispriced and was selling it for $59.99 (it's normally $129.00). They even had an open box for $106.00. Hmmm.... An open box for $106, or a brand new unit for $60: I wonder which is the better deal...

Wow, I feel like crap. Stomach ache.... Going to bed early tonight.