Wednesday, November 19, 2008

Nextwiki has new name

The TWiki fork has now decided on a name. They have decided on Foswiki. This is the most popular AND least hated of the names they'd decided to select from. Getting both of these is pretty impressive :-)

It's not the most scintillating name but it will not be embarrassing to mention to my managers so it meets my major wish list.

Sunday, November 02, 2008

x10 Automation and the cm15a

Haven't played with misterhouse for a while and since the last time we did, we upgraded the kernel on our freevo misterhouse media box.

Tried to turn on a light for a while and released that as we're using the usb cm15a as our pc interface, I needed to rebuild the module. Look at my last blog notes and found that they really weren't detailed enough for me to remember how it all worked. Bad bristley - should take better notes.

Searching google based on the sparse clues I'd left myself I found this useful post on the cm15a with the generic usb driver.

So a synopsis in case it disappears or I'm too lazy to look it up next time.

Doing cat /proc/bus/usb/devices shows me that I have the x10 usb device there but no driver.

T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 4 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0bc7 ProdID=0001 Rev= 1.00
S: Manufacturer=X10 Wireless Technology Inc
S: Product=USB ActiveHome Interface
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 2mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
E: Ad=02(O) Atr=03(Int.) MxPS= 8 Ivl=10ms


I already had the iplc driver code from this page sitting in my home directory from last time. I had already modified the code to work with the latest 2.6 kernels as recommended on the instruction page. I installed the kernel headers and kernel source (apt-get - I love Debian).

Then I built the cm15a driver - this is the bit I'd forgotten. I tried make -f Makefile.cm15a but what you're supposed to do is

make cm15a


This built the driver for me in /root/iplc/driver/linux-2.6/cm15a.d/cm15a.ko
From the cm15a.d directory I ran
insmod cm15a.ko


And then my at cat /proc/bus/usb/devices showed

T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 4 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0bc7 ProdID=0001 Rev= 1.00
S: Manufacturer=X10 Wireless Technology Inc
S: Product=USB ActiveHome Interface
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 2mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=00(>ifc ) Sub=00 Prot=00 Driver=cm15a
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
E: Ad=02(O) Atr=03(Int.) MxPS= 8 Ivl=10ms


Note that Driver on the I line now says cm15a. And there is now a /dev/cm15a0 device.

Thursday, October 30, 2008

Watching the TWiki fork

I've been watching the TWiki fork for the last day with interest. Living with one of the "forkers" makes it more interesting but I also have to watch what is happening because we've used "The Project Formerly known as TWiki" at work for years. I need to make sure there will be an upgrade path for us.

What I hope is that they choose a name for the fork that doesn't turn up with search results about tv shows and puppies. A good example of why you should check trademarks and search engines before naming your project.

Sunday, August 03, 2008

X10 Automation

Last Sunday I was looking at lighting design on the web again. With our plan to get cover the dreaded vermiculite ceiling, we'll need lights. All the lighting sites say use a mix of lighting and we didn't just want to put in newer versions of the overhead dome lights when we finally got the new ceiling. We have these lamps around the room but it's quite awkward to get to the switches to turn them on and off because of other furniture in the way so we rarely use them.

So last Sunday I ordered 2 appliance modules, a TM13 appliance module/transceiver, a little x10 wireless remote control and a cm15a usb computer interface. The remote control was part of the kit with the appliance modules and was my backup plan if I couldn't get the usb driver working with linux very quickly.

The package arrived on Wednesday. As toys go it almost qualifies as a dismal failure - I plugged a lamp into the TM13, pressed the corresponding button on the remote control and it worked. Straight way. I didn't have to modify anything - that's no fun :-)

Just as a record of what information I found:

Then I plugged the usb module into my computer. We're using debian testing 64 bit for our tv box now. Found the module code on line thanks to Linux home automation. Got the linux headers kernel package for our kernel.
Found this post on modernizing the module a bit for a later 2.6 kernel.

Read the README code and built the module.

I found various versions of mh integration of the CM15a - and finally found what I think is the latest version which worked.
useful post

So it works - except for some reason the power point the tv is plugged into - probably the crappy old wiring in our apartment block.

Using misterhhouse by the way.

Saturday, April 19, 2008

Freevo and the Aver Tv Volar - 3 tv cards

The next task with setting up the new box is getting the new usb tv card to work. It was very cheap and we just thought we'd try it out. Luckily I'd just had to use the get_dvb_firmware script from the kernel source for the other tv card so this one was a doddle.

Plug it in and dmesg says:
usb 1-3: new high speed USB device using ehci_hcd and address 4
usb 1-3: configuration #1 chosen from 1 choice
dvb-usb: found a 'AVerMedia AVerTV DVB-T Volar' in cold state, will try to load a firmware
dvb-usb: did not find the firmware file. (dvb-usb-dib0700-1.10.fw) Please see linux/Documentation/dvb/ for more details on firmware-problems. (-2)

Googled dvb-usb-dib0700-1.10.fw and found various sites where I could down load the fw file.
Put it in /lib/firmware. Unplugged the usb tv card. Plugged it back in again and got:

usb 1-3: new high speed USB device using ehci_hcd and address 5
usb 1-3: configuration #1 chosen from 1 choice
dvb-usb: found a 'AVerMedia AVerTV DVB-T Volar' in cold state, will try to load a firmware
dvb-usb: downloading firmware from file 'dvb-usb-dib0700-1.10.fw'
dib0700: firmware started successfully.
dvb-usb: found a 'AVerMedia AVerTV DVB-T Volar' in warm state.
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (AVerMedia AVerTV DVB-T Volar)
DVB: registering frontend 2 (DiBcom 7000MA/MB/PA/PB/MC)...
MT2060: successfully identified (IF1 = 1220)
input: IR-receiver inside an USB DVB receiver as /class/input/input7
dvb-usb: schedule remote query interval to 150 msecs.
dvb-usb: AVerMedia AVerTV DVB-T Volar successfully initialized and connected.


ran tzap and instantly got a lock.

My work here is done :-)

Now of course I have to make freevo work with one card watching and two cards taping.

Freevo and TV Card Again - Blogs are Useful

In October 2006 I blogged about setting up a new tv card to work with Freevo. Today I set up a new box and I referred to my own blog post to set it up. Isn't that cool.

We've got two digital tv cards and one was working and one wasn't. I could run scan and tzap and get a lock on adapter 1 but adapter 0 just said:

sylvia:/usr/share/doc/dvb-utils/examples/scan/dvb-t# tzap -a0 -c /tmp/channels.conf "ABC1"
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
tuning to 226500000 Hz
video pid 0x0200, audio pid 0x028a
status 00 | signal ffff | snr 0000 | ber 0001fffe | unc 00000000 |
status 00 | signal ffff | snr 0000 | ber 0001fffe | unc 00000000 |
status 00 | signal ffff | snr 0000 | ber 0001fffe | unc 00000000 |
status 00 | signal ffff | snr 0000 | ber 0001fffe | unc 00000000 |

The new tv box is called sylvia because she's silver :-)

Swapped the cables over - and same result. Looked in dmesg (which I should have done first) and found


tda1004x: found firmware revision 0 -- invalid
tda1004x: waiting for firmware upload (dvb-fe-tda10045.fw)...
tda1004x: no firmware upload (timeout or file not found?)
tda1004x: firmware upload failed

lspci says

04:00.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
04:00.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)
04:01.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)


Found my block post and it helpfully told me to download the kernel source package (we use debian), look in the Documentation/dvb directory and run

get_dvb_firmware tda10045

This downloads the firmware and you then copy it to in our case /lib/firmware.

run tzap again:

tda1004x: found firmware revision 0 -- invalid
tda1004x: waiting for firmware upload (dvb-fe-tda10045.fw)...
tda1004x: no firmware upload (timeout or file not found?)
tda1004x: firmware upload failed
tda1004x: found firmware revision 0 -- invalid
tda1004x: waiting for firmware upload (dvb-fe-tda10045.fw)...
tda1004x: firmware upload complete
tda1004x: found firmware revision 2c -- ok


The other stuff I had to do then with blacklisting modules etc is no longer necessary.
we are running a 2.6.24 kernel.

tzaps happily now.
Now onto the usb tv card :-)

Wednesday, April 09, 2008

Feeling of Successful Altruism

I've received several thank you notes from people who've found answers to problems in my neglected blog. The most common is my post about finding the thinkpad wireless switch. The little one, you can't see from above on the front of the notebook that when you turn hit it by accident disables your wireless. I had to do a google search to find it - finding the manual originally and some people have found the answer from my blog. I have done some good in the world :-)