Date : Thu, 11 Feb 2010 18:26:45 +0000
From : philpem@... (Philip Pemberton)
Subject: Ground Control UTA-1 Teletext Receiver: The Gory
Hey guys,
I've got the UTA-1 grabbing Teletext pages off-the-air!
Basically, it's using a ByVac BV4221 USB-to-I2C adapter to talk to the
CITAC (tuner) and EuroCCT (teletext) chips in the UTA, and is
successfully grabbing pages off the air and printing them out on a Linux
terminal. Any non-printable characters (e.g. control codes) get replaced
with spaces at the moment, but it is, as you can see, working pretty well:
philpem at cheetah:~/dev/iic$ ./test
channel 47, tunerval 14368
tuner status: 8c LOCKED
Requested page 100...
Waiting for page... Page found!
eurocct ram req done
Teletext 100 Feb11 18:19:58
`pp0`p0`0 pp ppp pp p `0ppp
"k7! s j5 jw{5# #jw{5+t>!# #
j5 ssjupjws1 jws1~'o4
"! "#!"## ## # ## # "! #
ITV1 YORKSHIRE 4/8ML
00 7#################5
Destinations 210 5 BALEARICS 205 5
Special Offers 220 5 Discover that 5
City Breaks 230 5 the Balearics 5
Regional Depts 239 5 have something 5
UK Breaks 240 5 for everyone; 5
Cruise Holidays 270 5 quiet bays and 5
Hol Companies 280 5 lively,vibrant 5
``````````````````` 5 party resorts. 5
TV Channels 397 5 5
Telephony 140 5 z `>/<d 5
Bookmakers 524 5 x 'xo7di 5
NHS Choices C4 700 5 l|< %&" 5
``````````````````` 5 ,(0$ j ((,` 5
Subtitles 888 5 p~t 5
Digital Switch 283 -,,,,,,,,,,,,,,,,,%
Yes, it's ITV1 Teletext (didn't they get stripped of their Operator's
Licence?) so no accounting for taste, but it works :)
I'd love to set the Page Request Block to "don't care" and see what
happens, but I bet it won't be anything good -- after all, this thing
only has a few K of SRAM (enough for one Teletext page and the Ghost Rows).
It looks like it's possible to make it grab "any" page, though I can't
tell if the completion of a page request terminates that request -- that
is, once it has a page, does it wait for you to send another page
request before it goes looking again? Need to RTFM a bit more for this.
Also not sure how to handle saving of pages that change. Maybe hash all
but Row 0 (page header) and save the page if it changes? Hmm.
The code is written in C++ and will probably be going up on my Mercurial
code-dump later this evening, but I want to see if I can get any sane
output from Rob's Viewdata PHP script first.
Rick -- I think I've said this, but thanks A LOT for posting the link to
the SAA5240/EuroCCT manual. It's been VERY handy (much moreso than the
pitiful SAA5240 datasheet which contains a register map and not much else).
Cheers,
--
Phil.
philpem@...
http://www.philpem.me.uk/