TellyMate Shield - TV output for Arduino

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...

That's what I'm asking - what is the display resolution of the overlayed graphic.

The TellyMate (and it's schematically identical sister, the TellyMate Shield) 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 which details how it all works.

The following diagram shows a small example of what's output:

Your article is very good; lots of technical meat to it!

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 :stuck_out_tongue:

There's a bunch of code on his downloads page:

If you want to breadboard a TellyMate, there's circuit schematics (sch_tm_13.pdf) and source code (code_tm_19.zip) available from the Batsocks 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.

@condemned

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

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 :frowning:

@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.

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.

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.

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.

Good shield. But I use the Propellurino for color VGA out. Of course this can also be used for TV out.

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!

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:

It's now got a 'professional' PCB, proper straight-through headers and can send back data to the Arduino.

new version of the TellyMate Shield ... can send back data to the Arduino.

Interesting, what kind of data and how can it be used?

Interesting, what kind of data and how can it be used?

The 'transmit' functionality is very simple. | 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.

Sounds good to me. congrats on the new board.

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 :wink:

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.