Can an Arduino send a dialup email message?

The Thinclient option sounds interesting, at least for the future, but I don't know a thing about them. Plus, when I put Neoware into Google, the options all seem to be $200 - $400. Where can I buy a thinclient with a 300 MHz CPU and 128MB for $30 or less?

I would also like the thin client for $30. :slight_smile:

I wonder if that was suppose to be $300 ?

(* jcl *)

That wasn't a typo you can get Neoware 3000 series or better thin clients for about $30 on ebay

They have a 300MHz geode CPU and 128MB RAM

http://cgi.ebay.com/5-Neoware-Eon-5000T-Thin-Client-300MHz-128MB-RAM-DOM_W0QQitemZ150321168332QQcmdZViewItemQQptZCOMP_EN_Workstations?hash=item150321168332&_trksid=p3286.c0.m14&_trkparms=72%3A1234|66%3A2|65%3A12|39%3A1|240%3A1318|301%3A1|293%3A1|294%3A50

This particular batch of 5 has NT :frowning: but you can Linux them :slight_smile:

They are often sold by the truckload, someone is selling a lot of 70 units and another seller has a 600lb pallet of 48 units for $249

Just search for "neoware" on ebay and make sure you read all the fine print

Even some of the newer models sell for less than $100

:slight_smile:

The 3000 and 5000 series Neoware thin clients, while older and slower, use a standard PC power cord which will save you the trouble of having to look for a proprietary power cord and or AC to DC adapter

Some of the newer units have a mini-DIN power connector which may have to be reverse engineered, although I'm sure most people around here would have no trouble doing that :slight_smile:

Found one for $23.00 and free shipping, although I'm not too crazy about the seller's feedback

http://cgi.ebay.com/Neoware-Eon-5000T-300MHz-128MB-Thin-Client-w-POWER_W0QQitemZ350154778961QQcmdZViewItemQQptZCOMP_EN_Workstations?hash=item350154778961&_trksid=p3286.c0.m14&_trkparms=72%3A1234|66%3A2|65%3A12|39%3A1|240%3A1318|301%3A0|293%3A1|294%3A50

http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=350150458026

http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=120348149021

A few units have sold for $15 with free shipping

I should revise my earlier posts $30 was too much :slight_smile:

I used to use external modems to send numeric pages when servers went down. It is trivial to use the modem AT commands to send any touchtone sequence. All you would need to do is level shift the TTY serial to RS232 direct to the modem. Dont start a data connection, just emulate a user with a touchtone phone.

I dont know how the current text services work, is there a way to send text messages or e-mail from an ordinary touchtone phone? If so, you should be able to do anything you could do with a touch tone phone wit AT command REALLY easily.

Also, I dont know for sure how muc current the external modems draw, but it is probably a lot more than the Arduino. Dont think you can run this on a 9volt for more than a couple of minutes. May be a pack of rechargable D cells or a burglar alarm lead acid battery.

I have just read through this list and some of the suggestions are over-kill.

I have some comments....

1 . Telephone modems, especially if they run slow (around 2400 baud) are extremely reliable.

  1. Even if you do hook-up a modem, dial into what? Using what protocol? You can not program SLIP (serial line IP) into an arduino.

  2. If you do not have SLIP, sending SMTP is not possible.

My suggestion.... Install linux on a cheap PC. Make sure the linux is installed with serial TTY support. That means someone can dial into your linux box via a modem and get a login prompt using a normal ascii terminal. Hyperterminal is a terminal emulator for Windows (good for testing).

The linux machine is located someplace that is good for you to use. The arduino will be dialing from the furnace room into that Linux box. It does not need to have internet access although does have some advantages.

Once you have linux running, you connect a modem to the ardiuno. It can send the ATDTxxxxx to dial into the linux box and send the username/password to login.

Once logged in, it can issue: echo "temp here" | mail -s "Hourly temp report" yourusername

then logout

The entire program is a collection of WAITFOR and SEND

Example:

send "AT" ' wake up the modem
waitfor "OK" ' wait for response from modem
send "ATDT phonenumber" ' tell the modem to dial
waitfor "CONNECT" ' wait for modem to connect
send "" ' wake up the linux box
waitfor "username:" ' linux wants us to login
send "yourusername" ' send our login username
waitfor "password:" ' linux wants the password

and so on....

I just saw your 3/4 mile distance comment.

Another solution if linux seems rough.

Hookup a FRS radio to the arduino. Use the SPEAKJET chip to create speech. Take a hint from remotely-operated-airports. If the arduino detects someone clicking the radio 3 times in a row, the arduino keys the FRS and the speakjet says the temp over the air.

1 pin from the arduino keys the FRS radio into transmit.
The audio output from the speakjet is connected to the mic of the FRS.
You need to connect a wire to the carrier detect of the FRS. Get an older FRS that has a signal-present LED and connect the PIN to the LED.
Program the FRS to listen on a channel with sub-tone control That means someone would have to be on the correct channel, and subtone, and key their radio 3 times for the arduino to respond.

A local ham operator would know exactly what I am talking about.

parts list:
2 x FRS radios from walmart
1 x arduino
1 x temp sensor
1 x speekjet chip
no computers except for the initial arduino programming

de ve3pzr.

Thanks for the additional suggestions.
My current plan is as follows:
From my office computer, I will dial the modem at the remote site when I want to know the temperature there. The remote site modem will answer (under the control of the Arduino) and the Arduino will send temperature data to my office computer. This is just data transfer, not email or network activity. I think the only unknown is how to control the serial modem with the Arduino, but I also think that AT commands ought to do it. I haven't used AT modem commands for years so I will have to find reference information for that. I will also have to learn the electrical requirements for controlling the serial input to the modem from the Arduino. This seems simple to me although I of course haven't tried to do it yet. If there is some reason why this won't work, please let me know. Plus I'll be out of town for a few days and won't get back to it until the end of the week. I should have the modem, Arduino, and LM34 temperature sensor by then. Thanks again for your continued interest. If I can get this to work, then I might investigate more sophisticated arrangements involving calling out. But for now, calling in will serve my purpose, I think.

Mark's FRS solution is a good one technically, but it violates FCC rules for FRS (transmission must be initiated by a human operator).

-j

If you don't plug your arduino into a Linux system via USB and let it handle the modem for you, then you will need a TTL to RS232 converter

A P4B from wulfden might work

http://wulfden.org/TheShoppe/pa/index.shtml

:slight_smile:

Thanks for the additional suggestions.
My current plan is as follows:
From my office computer, I will dial the modem at the remote site when I want to know the temperature there. The remote site modem will answer (under the control of the Arduino) and the Arduino will send temperature data to my office computer. This is just data transfer, not email or network activity. I think the only unknown is how to control the serial modem with the Arduino, but I also think that AT commands ought to do it. I haven't used AT modem commands for years so I will have to find reference information for that. I will also have to learn the electrical requirements for controlling the serial input to the modem from the Arduino. This seems simple to me although I of course haven't tried to do it yet. If there is some reason why this won't work, please let me know. Plus I'll be out of town for a few days and won't get back to it until the end of the week. I should have the modem, Arduino, and LM34 temperature sensor by then. Thanks again for your continued interest. If I can get this to work, then I might investigate more sophisticated arrangements involving calling out. But for now, calling in will serve my purpose, I think.

That should work fine. As others have said (and I think I said it earlier in this thread too) you'll need a converter TTL to RS232 to communicate between the arduino and a serial modem. This can be accomplished yourself with a MAX232 chip and five capacitors or you can buy the P4B board which was linked to above. After that it's easy. I believe that you send ATA to pick up an incoming call. Then, once the call is established, you can just send ascii characters from the arduino to your computer.

"then you will need a TTL to RS232 converter"

The serial based arduinos (which I provided a link for) already do rs232. A max232 is fine but it can also be done with a couple transistors like on the single sided serial (lower left of picture) if you have the parts laying around:

You might want to leave off the reset connection unless you use this adapter for serial programming as well, but it basically maps the 9 pin serial plug to rx and tx on the chip.

if that building has a line-of-sight to another building with a network connection then you could use either a wifi shield or ethernet shield( with a wifi bridge ) and a Pringles Can antenna. For examples:
http://www.turnpoint.net/wireless/has.html

without a line-of-sight, wireless is probably out of the question unless you can throw a mobile phone there or something like that.

otherwise, you could probably send over simple text messages using two old phone modems where the Arduino does the AT dial command to dial and connect and the other end has a PC connected to the modem in auto answer and has a script parsing the input and sending the data out over ethernet or putting up a warning. The Arduino could very well just send on errors if power was really bad and it had to run on battery power. A trick to charge a small battery might be using the 48V ring power so something would just ring the remote end over and over to boost the battery every now and then and the Arduino would have to be setup to power up the modem since that'll probably use most of your power.

The modem stuff can be tested by just getting two cheap modems and connect them via simple terminal applications on two computers or even one computer if you have two phone lines and two serial port at one computer. You can measure power usage with a DMM meter to see what kind of battery would be needed too. If this verifies you can get simple text across the two terminal applications, you'd next start writing Arduino code to do the temperature measurements and initiate the AT commands to make the modem connections, read any responses to verify the connect worked, and then send the temperature strings.

Doug

Quote: If you had a GSM cellular modem or something like that you could send SMS messages directly to the Cell phone network.

I have a similar project and would like to know how achieve the above noted quote

You would need something like this and a compatible Linux computer

This particular device has a Siemens 900/1800/1900MHz MC45 GSM/GPRS modem with onboard or external SIM card interface

The GSM modem modules can be found for about $300 - $900

You would also need a cellular service provider contract

If you have reliable network connectivity it may be much cheaper to use online SMS service providers instead

They usually only charge a few cents per SMS or a monthly fee depending on the volume of SMS messages

$300-$900? try $100-$200 and here's a $99 option which uses AT Hayes style of commands:

Just search for "gsm" term on their webpage and see the other modules.

A full AVR module with GSM sells for $249

The device I had linked to is a PC104 computer module, it is not a barebones GSM module

Most external GSM modems or GSM enabled embedded computers on the market sell for $300 - $900 and up

The GM862 Evaluation Kit - Basic 50-Pin itself sells for $230 GM862 Evaluation Kit - Basic 50-Pin - KIT-00479 - SparkFun Electronics

The various breakout boards, eval and devel kits cost $30 and $75 or more without the GSM module

It can add up pretty quick, the really nice multi-band antenna sells for $45 alone!

I should maybe tell you what I'm trying to achieve. I have a portable heating appliance that is temporarily setup at various locations throughout winter. These locations are remote and never have any telephone or internet access. I'm looking for any message that a cellular device could send in the event that my heating appliances temperature drops below a certain level. I'm a newbie to micro controllers and programming but do you think that this unit would do what I'm after? PIC GSM Cellular Development Board - DEV-08851 - SparkFun Electronics

To Dial with the Arduino you could do it 2 way:
To Get Off Hook, apply the 600 Ohm
then either play the DTMF tone or
Do the Clicking sequence to dial
1 = On hook for .1 sec. then off hook
2 = do number one twice
and so on...
0 = 10 times.
this could be done with just a relay and a 600 Ohms

i am not to sure for the timing you should check on the net.
Then you could play either sound (or tune) and you will know that it is the arduino that is calling, and depending on tune what alarm you got.
Or Get a cheap MP3 player or a controlable Mp3 player playing different msg depending on alarm!
That means that everithing is done with a arduino!