THE PROJECT:
An Atmel368 with a UNO boot loader.
Use RS232 to send computer stats and email notifications to Arduino.
C# for program on computer collecting and sending serial data.
Arduino will display info on LCD
-4x20 Serial LCD to display
-PC Temps, room temps
-PC Temps(CPU, GPU etc) using AIDA64, a windows app, has shared memory, any program can access temperature data.
-LM35 for room temp, maybe real time outside temps later.
-Time/Date, Email notification
-Notifications=00 for none, 01 for 1 email waiting etc
-ds1307rtc
-Later
-Get Stats from VLC(media player on computer) title, time remaining, time elapsed, total length, volume, and status- playing/paused etc
the first to bullets in the code boxes would be two different "tabs" of the screen. im going to use 2 momentary switches below the LCD so that when they are pressed the LCD displays the info under that "tab". another switch is pressed: causes other info to be displayed.
What is happening:
-Software/Programming(DONE!)
-Build the Arduino, wire everything up etc.(DONE!)
-Fix Pin configs (In Progress)
ARDUINO CODE
see 2nd reply, code too long.
COMPLETE C# CODE
see 4th reply, code too long.
Plan for PC temps and email:
A program in C# that gets data from gmail and it sends over serial has how many emails i have waiting. Ill get the temps data from AIDA via shared memory. so how to get this data to AVR? have a standard string of data with a "<" at the beginning so that the arduino knows when the data has begun to transfer across serial, and a ">" at the end so the end of the data is known. for example: first two numbers email, second two numbers cputemps, third set GPU temps etc. so it may look like "<02,30,50>" 2 emails, 30C CPU, 50C GPU. i hope to never have more than 99 emails or core temp higher than 99 so two digits per part. if emails is 00 then no email.
__Email and PC Temps:[c/b]__[/u]
C# program and coordinating arduino program that uses serial to communicate. computer sends how many notifications in number form to arduino. I have successfully got this program to fully work!
source: email notifications with arudino in C#
AIDIA64(perviously known as Everest) has a very simple shared memory. it stores the data as a XML like file in shared memory. I have succeeded at writing only the data i need from memory over serial. I have successfully got this program to fully work!
Source: reading memory mapped files .net 4.0

