What should I buy?

I am looking to use an Arduino to perform a little logic on a relay. I would like to read the voltage off a serial port on a box and in to a pin on a Arduino and have the Arduino fire an output pin for a given amount of time. I would then have the output pin trigger a relay for another box. I’m decent with scripting and there are plenty of examples so I’m not worried about the code but I’m new to this and I am looking for advice on what Arduino I should purchase. Please offer your advice or details of any similar projects.


What do you mean by "read the voltage off a serial port"?

Specifically I want to use a EAS message from a TFT model 911 to shut off a TV transmitter till the EAS message is over. The TFT has a serial port that will output serial data during an alert message. I don't need to do anything with this message other than detect that it is there at all. I'm looking to get the Arduino to fire a relay for two minutes when it detects voltage coming out of the port. The relay will then be used to shut off the transmitter. The two minute time is the longest those messages ever last. It looks like a serial port is rated to have a voltage swing from -15v to +15v and can work with voltage as low as +-5v. I have yet to meter the TFT box but if the voltage is to high coming out of the serial port I can just lower it a bit. I'm looking to find out if any Arduino will work for this or is there a specific version I should use.

That make sense?

I'm sorry I've never owned a Porsche.

Lulz, Nope! This guy http://www.broadcastavsales.com/products/TFT-EAS-911-%252d-Reconditioned.html

AWOL: I'm sorry I've never owned a Porsche.

And I didn't know they came in a thin-film transistor configuration.

@OP. You're looking at an RS232 output on that thing. So, you'll need to somehow condition the signal, and fortunately, much documentation is available for such right here on the forum. There are also RS-232 to TTL logic converter ICs. I think I would start looking at whether that thing does something easy, such as raise DTR when it's going to send data. Then you won't need to do the 2-minute deal, you'll be able to trigger your code based on whether it's actually sending.

Sounds as if you don't need many IO pins at all, but best to flesh this out a bit before deciding on a Uno, or something else.

well, you probably could use two 10k resistors and an NPN transistor to invert the rs232 to TTL for the arduino, then slightly modify the below code such that if (Serial.available() > 0) { , make an arduino pin high actuate the relay, delay for two minutes, then make the pin low.

int incomingByte = 0;   // for incoming serial data

void setup() {
    Serial.begin(9600); // opens serial port, sets data rate to 9600 bps

void loop() {

    // send data only when you receive data:
    if (Serial.available() > 0) {
        // read the incoming byte:
        incomingByte = Serial.read();

        // say what you got:
        Serial.print("I received: ");
        Serial.println(incomingByte, DEC);

justjed: ... such as raise DTR when it's going to send data.

Yes... This is what I am hoping for. If this happens to be the case I may not even need the Arduino. I could just use this to hit up a relay.

You should test your serial port with a multimeter. It has been my experience that when a serial port is opened, DTR only blips high, but RTS goes high and stays high.

zoomkat: ...DTR only blips high, but RTS goes high and stays high.

I was thinking about this. I could solve it by running the scrip using the first blip only, unmapping the input, wait my two mins, then remap it for next time. rinse and repeat!