Arduino Forum

Forum 2005-2010 (read only) => General => News => Topic started by: celsoffraga on Apr 24, 2009, 04:26 am

Title: TellyMate Shield - TV output for Arduino
Post by: celsoffraga on Apr 24, 2009, 04:26 am
Take a look on what these guys are doing...

http://www.batsocks.co.uk/products/Other/TellyMate%20Shield.htm



Schematics, source code, precompiled hex files and examples available.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: bara.munchies on Apr 24, 2009, 07:49 am
love the idea, finally cheap and huge displays (old CRTs :)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: condemned on Apr 28, 2009, 09:58 pm
The Batsocks (http://www.batsocks.co.uk/) TellyMate Shield (http://www.batsocks.co.uk/products/Other/TellyMate%20Shield.htm) is now available:

(http://www.batsocks.co.uk/products/Other/TellyMate%20Shield.htm)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: The_Bongmaster on Apr 29, 2009, 02:48 am
nice i might have to try this out :3
Title: Re: TellyMate Shield - TV output for Arduino
Post by: TeamMCS on May 09, 2009, 07:38 pm
Great idea.

For a next batch, maybe some kind of drawing capability outside of chars alone?
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on May 09, 2009, 08:25 pm
Very cool product and their web site said they are now shipping wordwide so I had to go ahead and send for one.

Thanks for the tip.

Lefty

Title: Re: TellyMate Shield - TV output for Arduino
Post by: zooto68 on May 12, 2009, 11:45 pm
Lot's of modern LCD TV's also have a compositive video input. I've ordered one to have a play with it.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: george_graves on May 17, 2009, 02:22 am
@condemned

Your website says the characters are 38x25 characters.

What are you considering the video's full screen resolution?
Title: Re: TellyMate Shield - TV output for Arduino
Post by: westfw on May 17, 2009, 02:26 am
Quote
Your website says the characters are 38x25 characters.
What are you considering the video's full screen resolution?

Display resolution is irrelevant.   The limiting factor is that the AVR CPU used can only output so many dots per scan line...
Title: Re: TellyMate Shield - TV output for Arduino
Post by: george_graves on May 17, 2009, 02:55 am
That's what I'm asking - what is the display resolution of the overlayed graphic.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: condemned on May 17, 2009, 09:14 am
The TellyMate (http://www.batsocks.co.uk/products/Other/TellyMate.htm) (and it's schematically identical sister, the TellyMate Shield (http://www.batsocks.co.uk/products/Other/TellyMate%20Shield.htm)) can only output characters.
Each character is 8 pixels wide by 9 pixels tall.

There is a slight complication in that the last of the 8 pixels is twice as wide as the others

Technically, you could claim that means a resolution of 304 x 225 pixels, but that's really misleading, as they're not directly addressable, and are only driven via the ROM-based font (so aren't even user definable).

I have written an article about the design of the TellyMate (http://www.batsocks.co.uk/readme/art_SerialVideo_1.htm) which details how it all works.

The following diagram shows a small example of what's output:
(http://www.batsocks.co.uk/readme/art_SerialVideo_6.htm)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: westfw on May 17, 2009, 08:23 pm
Your article is very good; lots of technical meat to it!
Title: Re: TellyMate Shield - TV output for Arduino
Post by: The_Bongmaster on Jun 09, 2009, 09:36 pm
i take it there is no sketch i can upload to the 168 so i can breadboard a simple tryout..

i plan on buying a telemate kit or shield at some point tho :3

but til then i want to output something to a tv :P
Title: Re: TellyMate Shield - TV output for Arduino
Post by: estranged on Jun 10, 2009, 06:44 am
There's a bunch of code on his downloads page:

http://www.batsocks.co.uk/downloads/index_downloads.htm
Title: Re: TellyMate Shield - TV output for Arduino
Post by: condemned on Jun 10, 2009, 09:53 am
If you want to breadboard a TellyMate, there's circuit schematics (sch_tm_13.pdf (http://www.batsocks.co.uk/downloads/sch_tm_13.pdf)) and source code (code_tm_19.zip (http://www.batsocks.co.uk/downloads/code_tm_19.zip)) available from the Batsocks (http://www.batsocks.co.uk/) site.
If you just want to build one to talk to an Arduino, its actually rather simple, as TTL level serial signals are used (e.g. there is no need for the optional input conversion circuitry). You'll be able to do it with just a few components.

I've not previously had the firmware compiled for a Mega168 (M8 and M88 only), but I've just had a go, and it seems to be possible with a very simple source-code change: Anywhere that references _AVR_IOM88_H_ should be changed to use _AVR_IOMX8_H_ instead.

I'm afraid that I've not been able to verify that the (modified as above) firmware actually works on a M168 (I only own lowly M8 and M88s), but I can't see why it wouldn't.

I'm actually itching to try putting the TellyMate onto a 328 so that I can play with it's 2kb SRAM, but unfortunately all supplies of the 328 seem to have dried-up, and I don't think Atmel are interested in talking to the little-people about samples.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: TonyD on Jun 10, 2009, 10:17 am
@condemned

Thanks for your article, I really enjoyed reading it. As westfw said, lots of good technical info  :)

Atmel seem to be having major problems with there samples system lately. I tried for 3 months to get samples for a work project of their 644 and a Xmegas ATXMEGA256A3 by using their web site but with no luck. Finally after complaining to their UK office I finally got samples of the 644, but still waiting for the Xmega  :(
Title: Re: TellyMate Shield - TV output for Arduino
Post by: The_Bongmaster on Jun 10, 2009, 04:51 pm
@estranged

yea but i dont see an actuall sketch (pde) i can use..

i'm no programmer so i am lost easily when it comes to complex programming in C.

if i can take the code from one of the H files or something and paste that in the arduino IDE and upload that then what one and what needs to be done in order for it to work fine on a 168.

sometimes i need simple instructions XD. making the hardware isnt a problem cos the schematic looks simple enough and the parts are labeled clearly.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: estranged on Jun 11, 2009, 12:40 am
If I'm not mistaken, the source code for the tellymate targets the chip directly, meaning the HEX file needs to be uploaded to the chip with an external burner and avr-dude.  I don't think there's a way to put the tellymate code directly onto an arduino using the IDE.  You'd need to be comfortable working directly with the AVR chips and avr-gcc / avr-dude before attempting this I think.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: zooto68 on Jun 11, 2009, 12:58 am
To get stuff to appear on your TV screen using the TellyMate is easy. You just send the appropriate serial command to the device and voila!! Read the instruction manual.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: estranged on Jun 11, 2009, 01:41 am
Quote
To get stuff to appear on your TV screen using the TellyMate is easy. You just send the appropriate serial command to the device and voila!! Read the instruction manual.

Right, but The_Bongmaster doesn't have the TellyMate yet, he was looking to see if he could build his own on a breadboard and test it out if I read it correctly.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: bohne on Jun 11, 2009, 01:55 am
Good shield. But I use the Propellurino for color VGA out. Of course this can also be used for TV out.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: zooto68 on Jun 11, 2009, 08:42 am
Quote
Right, but The_Bongmaster doesn't have the TellyMate yet, he was looking to see if he could build his own on a breadboard and test it out if I read it correctly.


Very ambitious!
Title: Re: TellyMate Shield - TV output for Arduino
Post by: condemned on Jun 11, 2009, 09:40 am
I think that it might be possible to turn an Arduino into a TellyMate with a few components and uploading an M168 version of the TellyMate firmware (as yet untested) onto the Arduino using its bootloader - I'm not sure of the command line options required to get avrdude to upload a generic .hex file to an Arduino though, but I believe it can be done. This 'TellyMate Arduino' wouldn't be able to do anything else except be a TellyMate though.

You'd therefore need a second Arduino to tell the first 'TellyMate arduino' what to display (unless a blinking cursor is all you want to show!) - Oh, and because the 'TellyMate Arduino' would still have a bootloader, you'd need to disconnect the 'TellyMate Arduino' before uploading any sketches to the second Arduino, otherwise they'll both attempt to receive the new sketch and things would get messy.

I'd try making a 'TellyMate Arduino' myself, except that my Arduino is a lowly M8, so the TellyMate firmware won't fit on it whilst there's a bootloader there.

[I hope that was understandable - on reading through again, it might be easier for The_Bongmaster to just buy/make a normal TellyMate!]

In the hope of keeping this thread 'News' like, here's a picture of the new version of the TellyMate Shield:
(http://www.batsocks.co.uk/products/Shields/TellyMate%20Shield.htm)
It's now got a 'professional' PCB, proper straight-through headers and can send back data to the Arduino.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: mem on Jun 11, 2009, 09:49 am
Quote
new version of the TellyMate Shield ... can send back data to the Arduino.


Interesting, what kind of data and how can it be used?
     
Title: Re: TellyMate Shield - TV output for Arduino
Post by: condemned on Jun 11, 2009, 10:03 am
Quote
Interesting, what kind of data and how can it be used?

The 'transmit' functionality is very simple. <ESC>| causes the TellyMate to send back the ascii value of the character at the cursor.

It doesn't sound like much, but it means that the contents of the TellyMate screen can be 'read'. This could be a simple way for games to detect walls, other players etc. without having the overhead of storing a copy of the game-screen data on the Arduino.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: mem on Jun 11, 2009, 10:16 am
Sounds good to me. congrats on the new board.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: The_Bongmaster on Jun 11, 2009, 11:29 pm
well i dont have an arduino board as such.. i have a bunch of m168 chips with bootloaders on. i can breadboard a telemate layout easy enough, its just programming the 168. my crappy old loptop wont burn anything via the icsp cable i have so the only way i can upload to it on that thing is via com1 and my rs232-ttl converter. hence why i ask about a pde sketch.
i have a dual core 168 board that can probably be used later but for now i will make something bready. it would be kool to get the output of my gps device (ttl) thru it.

im referring to the telemate and not the shield btw ;)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: goose2283 on Jun 13, 2009, 06:31 pm
I love the idea of the TellyMate Shield. I may need to buy one, but I've got one question... What about adding an LM1881 or LMH1980 sync separator to allow the TellyMate to overlay on top of pre-existing video? I'm honestly not sure how hard that would be to do, but it would add a whole new world of useful applications to the TellyMate. For example, live GPS overlay over a video signal.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: condemned on Jun 15, 2009, 08:49 pm
Technically, with the right software changes, a sync separator and a simple analog switch (that's got a low resistance and suitable bandwidth) would allow the TellyMate to overlay on top of existing composite video. The software would need a reasonable amount of change, but shouldn't be too hard (e.g. wake on an external interrupt rather than an internal timer, don't output syncs etc.).

My main reasons for not doing this (so far) so are threefold:
a) To keep everything simple. The TellyMate design is very, very simple. One chip and a few sundry components.
b) Lack of sensibly priced parts at low volumes (it would grate that the LM1881 would cost more than the M8).
c) I've never had a personal need for it in any of my projects (!)

The_Bongmaster, if you've found out a way of getting a .hex file onto your M168's, then I'd be more than happy to supply you with a .hex compiled for a M168 - It would be untested though.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: The_Bongmaster on Jun 15, 2009, 09:05 pm
i do have a prog that should burn a hex onto the 168 via the icsp parallel cable. if not cant u do that via the command line with the tools arduino IDE comes with?
Title: Re: TellyMate Shield - TV output for Arduino
Post by: follower on Jun 18, 2009, 11:50 am
Quote
if not cant u do that via the command line with the tools arduino IDE comes with?

You can. The IDE uses avrdude to upload a hex file itself. You can look at the verbose build output to see how it does it.

--Phil.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on Jun 20, 2009, 01:49 am
Code: [Select]
The 'transmit' functionality is very simple. <ESC>| causes the TellyMate to send back the ascii value of the character at the cursor.

It doesn't sound like much, but it means that the contents of the TellyMate screen can be 'read'. This could be a simple way for games to detect walls, other players etc. without having the overhead of storing a copy of the game-screen data on the Arduino.


Having bought my TellyMate shield prior to this latest upgrade, I went ahead to see if I could 'upgrade' to this latest feature. I down loaded the latest firmware zip file and using my USBtiny programmer was able to burn the new hex file as well as fuse settings into a blank mega8 AVR chip.

The board worked as before but didn't seem to be able to utilize the send character feature that the example programs used in the zip file.

The latest user manual mentioned that there was a need for a 'hardware enabled' board to utilize this feature but there is no schematic available yet showing what has changed to enable it.

So I ran one of the example programs and verified with a scope that the new firmware was sending data via the mega8's pin 3 and that pin had no trace going anywhere. So I soldered a short jumper between that pin and pin D0 on the shield's Arduino connector.

Now the example programs work as stated in their comment lines and so that seems like a pretty easy to implement upgrade. If anyone knows if there is more involved with the 'hardware enabled' feature please let us know.

Lefty
Title: Re: TellyMate Shield - TV output for Arduino
Post by: condemned on Jun 20, 2009, 09:22 am
Yup! You've got it spot on.

I can confirm that the only schematic difference between the original TellyMate and the TellyMate 1.1 is a trace between pin 3 of the TellyMate's Mega8 and Arduino pin D0.

Soldering this wire in place gives an original TellyMate the abiilty to transmit (obviously subject to the later firmware).

I'll put this information into the TellyMate User Guide's FAQ later today.
There'll also be a new firmware release this weekend. (Nothing too exciting - I'm squeezing in a couple more 'read' functions to transmit things like firmware revision, output format, cursor position etc. back. The release will also include .hex files for M168 and M328p's, should anyone be building their own and only have those chips available [?!]).
Title: Re: TellyMate Shield - TV output for Arduino
Post by: The_Bongmaster on Jun 21, 2009, 01:41 am
awesome thats great news :)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: kellykel on Jun 22, 2009, 03:32 am
They cost alot *wah*. :'(
Title: Re: TellyMate Shield - TV output for Arduino
Post by: zooto68 on Jun 22, 2009, 11:59 pm
You call that a lot? I say it's a bargain!
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on Jun 23, 2009, 12:58 am
Quote
They cost alot *wah*.


Not sure I understand your statement without more context. However the developer of this product has published the hardware and firmware and all the documentation required so that one is free to build their own or buy at a very fair price.

Now if only I could find a small video LCD display at a comparable hobbyist price  ;)

Lefty
Title: Re: TellyMate Shield - TV output for Arduino
Post by: zooto68 on Jun 23, 2009, 07:28 am
You know what I was thinking yesterday? You can get these LCD Photo Frames dirt cheap nowadays. I wonder if the screens inside them could be hacked for use as a display, either using the TellyMate or some other kind of interface? I am sure they could be.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on Jun 23, 2009, 07:32 am
Quote
I wonder if the screens inside them could be hacked for use as a display,


Yea, I looked at quite a few listings on E-bay awhile back but couldn't find any that said they included an A/V (composite video) input, just memory cards or usb interfaces.

Lefty

Title: Re: TellyMate Shield - TV output for Arduino
Post by: florinc on Jun 23, 2009, 06:55 pm
How about the pocket TVs, like this one?
http://www.amazon.com/Casio-TV-880-Portable-Handheld-Color/dp/B00005EBGN/ref=sr_1_6?ie=UTF8&s=electronics&qid=1245776085&sr=8-6
US$25 on ebay.

Also, some video cameras (my old Sony, for example) have A/V inputs.

Title: Re: TellyMate Shield - TV output for Arduino
Post by: zooto68 on Jun 24, 2009, 07:43 am
You have just reminded me that at the bottom of a cupboard drawer I have an old Casio 970D Pocket TV with an AV input!! Cool.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: Dan IRL on Nov 23, 2009, 06:30 am
For one I would like to have an overlay board.

I searched the 'net a found some others that have simple designs. They don't use the LM1881 or LMH1980 sync separator.

This one uses a microchip PIC.

(Scroll down to the bottom to see the You tube video for a quick demo)

http://www.micro-examples.com/public/microex-navig/doc/081-pic-osd-superimposer.html

PAL version with no inputs (demo code only)

Quote from the article
------------------
To superimpose text to a PAL video signal, we need to control timing with precision to get a stable picture.
We have to deal with vertical synchronization, which tell us when a new frame starts, and with horizontal synchronization, which tell us when a new line starts.

Usually, and external circuit is used to extract both vertical and horizontal synchronization pulses from the PAL video signal, the LM1881 integrated circuit does it very well for example.

Since I wanted to have a very simple circuit, I had to find a way to make the PIC do this job.

First, we must be able to know when a video line starts : we will use the PIC internal comparator module to do it. The internal voltage reference module will be programmed with a voltage clip level, the comparator will then trigger an interrupt each time the input voltage will become lower or higher than the clip level. This will be our horizontal sync separator.

Second, we must be able to know when a frame starts do get vertical sync : PAL signal uses special sync pulses to announce a new frame. We have to detect a 28 µs low level pulse, there are five of them in the vertical sync and none elsewhere. The internal timer module of the PIC will be used to count time of low level pulses.

This done, we must be able to know what to superimpose to the video signal. A bitmap representation of the text to be displayed is built in RAM from a 5x7 fonts table. On each new line interrupt, we check if we are in display time window for adding pixels or not.

To add a pixel to the video signal, we change output pin from high Z state to output, the output then imposes +Vcc or 0V to display either a white or a black pixel. The result is a superimposed text on transparent background .
---------------------------------------------------

NTSC version using the Mega8 and a couple of parts

http://www.viennawireless.org/balloon/hardware/overlay/index.php

Note: NMEA is just a serial standard used on boats for communication between GPS, Radar, Chartplotter etc.

-----------------------------------

Non overlay PAL PIC library:
http://www.micro-examples.com/public/microex-navig/doc/089-pic-pal-tv


Guy who used this library and added a serial input with non overlay (aka tele mate)
http://elec.tkjweb.dk/blog/pic-projects/serial-tv/
------------------------------------

So I have given you
1) PAL design
2) NTSC design on a Mega8
3) PAL library with serial input option.

Note these use the same connector for video in and out. So the existing board could be used with the cable split in two for two leads. (Of couse the extra components would need to be fitted, but this could be done with stripboard or breadband to start)

So I challenge someone to use this to make an arduino version of a text overlay unit.
If you do let me know.

I'll be expecting the next version of telemate to have a jumper J7 for text overlay on/off!

Dan
Title: Re: TellyMate Shield - TV output for Arduino
Post by: billbradford on Dec 08, 2009, 03:31 am
Has anyone had a problem with the output from the Tellymate doing a continual vertical roll?  

I've got this with one particular miniature LCD display with an AV input.
It's one of the "2 AV Input 3.5" Reversing Color LCD Car Backup DVR VCR" that are all over eBay for around $30-35.

However, when used with the Tellymate, the display "rolls" vertically.

I tested the LCD with the composite-video output from my Popcorn Hour network media player - and it works fine with no rolling.

I tested the Tellymate with the 32" LCD TV in my living room.  It works fine as expected.

I tried both a Duemilanove w/mega328, and a Seeduino w/mega168.  Same result on both (using the "Hello World" and random-characters examples).

Am I out of luck, or is there any way to adjust/tweak the NTSC video timing that's being output?
Title: Re: TellyMate Shield - TV output for Arduino
Post by: thoed on Dec 25, 2009, 04:16 pm
Thanks alot for the work on this! I wouldn't have had any idea where to start... even after reading about the shield on your website.. still wasn't really sure where to start! :D

I got it working on a bread board.. took 15 minutes of setup.. and a day of debugging.. (turns out, I uploaded the wrong .hex.. and I had the diode 1 pin space off on the breadboard) But now it works great! I've got an old CRT TV, was going to use it for a "debug station" if you will, but good lord! Even sitting about 8 feet away, the TV is still giving me a headache.

How did we ever stand sitting near this... old contraption we used to call a "television"?  ;D


But yeah, I just used one of my old Atmega8 chips, with crystal, diodes and the resistors (I was extremely lucky.. I've never purchased those diodes in particular, but they came with a Electronics Startup Kit, woot!:))

Gee-whiz, now I'll be able to plug my Arduino into random TV's and pretend like I'm taking over the world! Muahaha.

Okay, I might have over exaggerated, but this is awesome regardless! It's almost like the Matrix with the Random Characters. Would be a nice "screen-saver" if I could leave my TV on for more than 5 minutes.

Again, thanks for all the hard work, very thankful! I have a few too many Atmega8's that need a home.. I feel like a board-less shelter over here!
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on Dec 25, 2009, 05:41 pm
Code: [Select]
I have a few too many Atmega8's that need a home

You should really consider running 168 or better chip. There are now alternate character sets that can be uploaded to give more capabilities.

Lefty
Title: Re: TellyMate Shield - TV output for Arduino
Post by: thoed on Dec 26, 2009, 02:59 am
I've got a single 168 as well, but help me understand this, if you don't mind. :D

I thought that when you'd want to use a new character set, no matter which chip you were using, you would have to upload the new characters? Or when you try to use certain chars in a certain way, do they appear as the other character set?

http://www.batsocks.co.uk/downloads/index_downloads.htm

The fontbanks, I noticed they're named differently.. but how do I go about including a different one with a .hex file?

Guess I'm really curious to, if I upload the extra fontbanks, can I use them separately? Say, one day, use it to debug characters and such. Then the next day, play the game of Life, with the different character bank, without uploading it. Or am I missing something here?

:)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on Dec 26, 2009, 01:44 pm
I forget all the gory details, but I was able to figure it out from the products site, download page and some of the example programs.

For example, to get the game of life to work I needed to have a alternate font set loaded and that's when I saw what's going on. A 168 memory size can hold up to four font sets. You do have to run a seperate program on your standard Arduino board, four seperate times, loading a different character set each run until all four are loaded into the telly board, if you want all four.  Then you can cause font page switches via control codes sent to the telly board from your Arduino board's sketch.

As I said it's a bit fuzzy as it's been awhile, but it wasn't that hard once I read some of the comments in the various programs listed at the telly site.

Lefty
Title: Re: TellyMate Shield - TV output for Arduino
Post by: thoed on Dec 27, 2009, 11:16 pm
@Retro, I get it now! Just took some reading.. (and paying attention!:D) Haha, I'm just having too much fun with this!


I know it's not all that "cool" if you will, but I've been using a 433MHz RF kit to make it a wireless setup. It's really simple too! You can just use the VirtualWire examples, and edit the Receiver take away the spaces that are added, and make sure it's not outputting HEX values. Also, you can take away the "Got:" because that's just annoying when it prints everytime. :)

Transmitter:
Code: [Select]
// transmitter.pde
//
// Simple example of how to use VirtualWire to transmit messages
// Implements a simplex (one-way) transmitter with an TX-C1 module
//
// See VirtualWire.h for detailed API docs
// Author: Mike McCauley (mikem@open.com.au)
// Copyright (C) 2008 Mike McCauley
// $Id: transmitter.pde,v 1.3 2009/03/30 00:07:24 mikem Exp $
#include <Button.h>
#include <VirtualWire.h>

// \x1B is the CHAR_ESC(basically a command character) in TellyMate, not used because I need command chars
// and text, without any spaces in between, easier to include as a command.
//
#define CHAR_ESC "\x1B"  


char buffer[32];
unsigned long int runTime;
long myVal;


const char *CLR = "\x1B""E";  // this will clear the screen
const char *bigText = "\x1B""_2""HELLO WORLD!";  // 1st part of bigText
const char *bigText2 = "\x1B""_3""HELLO WORLD!"; // 2nd part, needs 2 for big text, top/bottom
const char *STAT = "\x1B""Q"; // this will display the jumper stats

Button b1 = Button(9, PULLUP);
Button b2 = Button(8, PULLUP);
Button b3 = Button(7, PULLUP);
Button b4 = Button(6, PULLUP);

void setup()
{
 Serial.begin(9600);        // Debugging only
 Serial.println("setup");

 // Initialise the IO and ISR
 vw_set_ptt_inverted(true); // Required for DR3100
 vw_setup(2000);       // Bits per sec
}

void loop()
{


 if(b1.isPressed()){
   digitalWrite(13, true); // Flash a light to show transmitting
   myVal = analogRead(0);
   sprintf(buffer,"\x1B""_1""analogValue = %u", myVal); // _1 = single heighth, double width text

   vw_send((uint8_t *)buffer, strlen(buffer));
   vw_wait_tx(); // Wait until the whole message is gone
   digitalWrite(13, false);
 }

 if(b2.isPressed()){
   digitalWrite(13, true); // Flash a light to show transmitting
   vw_send((uint8_t *)CLR, strlen(CLR));
   vw_wait_tx(); // Wait until the whole message is gone
   digitalWrite(13, false);
 }
 
 if(b3.isPressed()){
   digitalWrite(13, true); // Flash a light to show transmitting
   vw_send((uint8_t *)bigText, strlen(bigText));
   vw_wait_tx();
   vw_send((uint8_t *)bigText2, strlen(bigText2));
   vw_wait_tx(); // Wait until the whole message is gone
   digitalWrite(13, false);
 }
 
 if(b4.isPressed()){
   digitalWrite(13, true); // Flash a light to show transmitting
   vw_send((uint8_t *)STAT, strlen(STAT));
   vw_wait_tx(); // Wait until the whole message is gone
   digitalWrite(13, false);
   delay(500);
 }

}


Here's the receiving End.. it's the Receiver Example for VirtualWire, minus just a couple lines of code:
Code: [Select]

// receiver.pde
//
// Simple example of how to use VirtualWire to receive messages
// Implements a simplex (one-way) receiver with an Rx-B1 module
//
// See VirtualWire.h for detailed API docs
// Author: Mike McCauley (mikem@open.com.au)
// Copyright (C) 2008 Mike McCauley
// $Id: receiver.pde,v 1.3 2009/03/30 00:07:24 mikem Exp $

#include <VirtualWire.h>

void setup()
{
   Serial.begin(57600);      // 57600 for TellyMate baud.
   Serial.println("setup");

   // Initialise the IO and ISR
   vw_set_ptt_inverted(true); // Required for DR3100
   vw_setup(2000);       // Bits per sec

   vw_rx_start();       // Start the receiver PLL running
}

void loop()
{
   uint8_t buf[VW_MAX_MESSAGE_LEN];
   uint8_t buflen = VW_MAX_MESSAGE_LEN;

   if (vw_get_message(buf, &buflen)) // Non-blocking
   {
     int i;

       digitalWrite(13, true); // Flash a light to show received good message
     // Message with a good checksum received, dump it.
     
     for (i = 0; i < buflen; i++)
     {
         Serial.print(buf[i]);
     }
     Serial.println("");
       digitalWrite(13, false);
   }
}
Title: Re: TellyMate Shield - TV output for Arduino
Post by: shackscs on Jan 26, 2010, 06:25 am
Got my Tellymate today!! ;D

Now to get a PS for my LCD display.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: mattbrawn on Feb 08, 2010, 06:59 pm
Some of this coupled with a bit of coding could work a treat for a PUSH N900 submission...  ;D
Title: Re: TellyMate Shield - TV output for Arduino
Post by: P18F4550 on Feb 09, 2010, 01:50 am
Sorry, but im still in favour of MicroVGA-TEXT, 16 Colours 80x25 characters
Title: Re: TellyMate Shield - TV output for Arduino
Post by: westfw on Feb 09, 2010, 02:45 am
Matt: the N900 already has video output; connecting by BT to an arduino to get similarly poor (NTSC) video seems overly complex; can the N900 video out be manipulated directly by N900 firmware, or is it tightly coupled to some sort of video/picture playback hardware?

(I think it'd be a neat hack to throw up some sort of hackable interface (BASIC, FORTH, BitLash, C64 emulator, whatever) on a big NTSC screen from the N900, but OTOH that pretty much has significantly lower resolution than the LCD, so perhaps not.)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on Feb 09, 2010, 03:11 am
Quote
Sorry, but im still in favour of MicroVGA-TEXT, 16 Colours 80x25 characters


That's a very nice product, I hope to get one some day. With all the extra keyboards and monitors I have stashed away, it's a pretty good value for what it does.
Keep in mind if using the NTSC or PAL TV output, that only black and white is supported.

Lefty
Title: Re: TellyMate Shield - TV output for Arduino
Post by: mattbrawn on Feb 09, 2010, 10:06 am
@westfw - I meant in terms of a submission for the PUSH N900 competition, running the TV output through an Arduino an N900 and making it do something different and cool.

Check out  blogs.nokia.com/pushn900/usa  

As for modification of the playback, I'm not entirely sure, I think it can be, just have to rewrite an application to manage how it's displayed.
Could be a nice submission and put you in with a chance to win $10,000 an a trip to Vegas. 8-)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: cyberteque on Nov 22, 2010, 02:35 am
I'm waiting for my TellyMate to arrive from LittleBird!

Can't wait!

I've written a LOT of VT52 games over the years, I still have a working VT-100 and a VT-132, so I'm pretty familiar with the escape codes.

Arduino Star Trek and Lunar Lander here we come!

:)
Title: Re: TellyMate Shield - TV output for Arduino
Post by: Lilirama1 on Dec 19, 2010, 11:29 pm
Wonder if i can use it for displaying back my data from wether sensors.
Title: Re: TellyMate Shield - TV output for Arduino
Post by: retrolefty on Dec 20, 2010, 01:20 am
Quote
Wonder if i can use it for displaying back my data from wether sensors.


Well it is hardwired to utilize the hardware serial on pins 0 & 1, but other then that no reason you couldn't use it as your weather data display.

Lefty
Title: Re: TellyMate Shield - TV output for Arduino
Post by: liangnv on Dec 23, 2010, 07:16 am
yes, good idea for me. i can use it and fix it by myself. :)