Show Posts
Pages: [1] 2
1  Using Arduino / Project Guidance / Re: "External" memory for program memory? on: October 08, 2012, 05:53:50 pm
In reply to question 2 yes you can it called overlay programming. Its a very old trick from the 1950's/1960's but ..... well look it up.

Mark

Mark,

You are absolutely correct and it has gone under a variety of names over the years.  In fact, modern operating systems use a virtual memory scheme that - at the kernel level - is rather similar.

I was thinking about trying something like that, but wanted to ask first BEFORE banging my head against the floor trying to do something that everyone else knew could not be done.

Thanks for the update!
2  Using Arduino / Microcontrollers / Re: Memory overrun blows Arduino chip? on: October 08, 2012, 05:49:33 pm
When I first joined this forum over three years ago or so there was always a lot of posts about their arduino boards not able to upload sketches any longer. In lots of cases reburning the bootloader got them functional again. But there never seemed to be any progress on identifying what the root cause (or causes) of this kind of failure was. At the time I offered up a question of sort to the software gurus to see if anyone could create a sketch in the IDE that could be complied and uploaded to a board which then resulted in not being able to upload any other sketch again to the board. I don't believe anyone came up with an example but that's not saying it's impossible I guess, as I said many have recovered from there fault whatever the cause by just reburning the bootloader. Burning a bootloader does result in having the fuses set to proper values as well as the bootloader code installed.

So while the problem symptom dates back for a long time, I don't know if we have ever identified the source or reasons for bootloader code or fuse values being corrupted once loaded correctly.

Lefty

Lefty,

Ahhh!  So this has history, 'eh?  Glad I re-opened that can of worms.

The source of the original post I mentioned claimed to have modified the "Blink" code to cause this problem repeatably.  Maybe I should give him a shout, grab his code, post it here, and let's all have a crack at it.  If we get reasonably consistent repeatability, then we can toss this at the developers / hardware gurus and let them chew on it.

What say ye?

Jim
3  Using Arduino / Microcontrollers / Re: Memory overrun blows Arduino chip? on: October 08, 2012, 03:19:38 pm
In this question, the individual had an atmega 168 chip, and had created a program that caused one of the internal fuses, (the extended fuse - 0x7), to blow, causing the chip to become inoperative unless re-flashed.

He discovered that he was causing the issue by overruning the existing ram:


No, that's impossible. The only way to change a fuse is with an ISP.

You *can* write to the flash memory using special instructions but it's much more complicated than writing to RAM and the bootloader section is usually protected from overwriting.

What that posting refers to is the uploaded program not working once it gets too big to fit in memory. Nothing more.

Sir,

Perhaps I am mistaken, and if I am, please show me how I have misread this message.

Forgive the size of this posting, but I am going to quote the original posting at length:

Quote
I'm using a Diecimila on Windows XP, using Arduino software 0011.

TLDR version:  When I upload a sketch over about 4K, the chip seems to stop responding and I have to use avrdude directly to re-burn the bootloader or upload a different hex.

Long version:
After playing with the example sketches I started fiddling on my own and have run into a problem: when I upload a program over roughly 4K, everything goes south.

What I mean by that is that the sketch uploads, but then it's as if the chip stops responding, and from that point on nothing works - I can't even upload new sketches
(I get the ubiquitous 'not in sync' error).

It first happened a few days ago - I uploaded and nothing happened.  I figured I'd make a programming error, made some changes to the sketch and tried to re-upload - 'not in sync' error.  Some reading on this forum gave me lots of things to try in response to that error, but none seemed to work.

Luckily I had another ATmega168, so I cobbled together a parallel programmer and tried burning the bootloader to it via the Arduino IDE.  I got a verification error, but lo and behold the chip functioned and I was able to upload the Blink example, and it worked.

Back to the first chip: I figured it must be hosed somehow, so I bumbled with avrdude until I figured out how to read the chips' memory and fuses.  I compared the broken and working chip, and the only difference was the extended fuse (0x7 on the broken one).  I changed it to match, but still no luck.

After more bumbling I learned that even though the Arduino IDE gave 'not in sync' errors, I could upload hex files directly to the broken chip using avrdude.  The next step was of course to burn the bootloader via avrdude directly, which worked!  Now the 'broken' chip seemed to be working again!  I hopped back into the Arduino IDE and uploaded Blink, and it worked like a charm.

Armed with a way to 'un-break' the chip I set about experimenting and the conclusion is that once the sketch gets to be a certain size, the chip stops responding.  That 'certain size' doesn't seem to be constant though, so I'm fairly sure the root cause is something else.  The time I actually fiddled long enough to nail it down, it was 4828 bytes.  4826 worked as expected, 4828 equaled a seemingly hosed chip - LED on pin 13 wouldn't light and the IDE could no longer upload to it.

As a test I took the Blink example and added a big integer array (referenced to keep it from being optimized away) and got the same behavior - after roughly 4K the chip goes south.  Oh, and I tried using both ATmega168s, and both had the problem.

So, any ideas on what could be going wrong, or anything I could do to troubleshoot the problem?  I'm still really new to all this, so any help is much appreciated.

His subsequent reply:

Quote
The culprit here turned out to be my ignorance.  I was trying to use way more RAM than the ATmega168 provides.

Specifically I was trying to use some relatively large arrays, which I've now learned will get pulled into RAM by default.  The RAM overrun was then causing the chip to basically become unresponsive.

By using the PROGMEM directive to keep some data in program memory only and out of RAM, things are running as they should again.

(Emphasis in both quotes was provided by me.)

Correct me if I am wrong, but as I read it exceeding memory bounds caused the chip to go totally un-responsive, (i.e. "bricked"), which he could only resolve using another board as a PIC/JTAG type programmer to re-flash the chip.

This does not sound like a simple memory bounds issue to me.

As I see it, there are a few possibilities:
  • There are certain reserved addresses, located beyond the end of physical RAM, that if written to can cause special and wonderful things to happen.
  • There is/was a firmware issue that caused this when large programs were written.
  • There was a defect in the chip, or in the IDE, that caused this problem.

Or, maybe even something else.

Which brings me back to that musical question:  Why?  Is there some issue that we, as programmers, need to know about to avoid bricking our own boards?

Thanks again for all your help.
4  Using Arduino / Project Guidance / Re: "External" memory for program memory? on: October 08, 2012, 02:57:37 pm
Question #1:
Has anyone tried to use the SD card's memory for extended data storage, used programmatically?  For example:  I want to use an Arduino with an Ethernet shield, (containing an SD card reader), as a web server and I want to put multiple web-pages on the, (much larger!), SD card rather than main memory?

I have.

Isn't that what SD cards are for...?

Oh so true. . . .

However, if I had $20 for every time there was a silly restriction on how some memory media can be used, I'd be a gazillionare today.  And it would not surprise me if there was some restriction within the Atmel chip that allows the bootloader to load from USB, but won't allow similar activity to happen at run-time.

Sorry to have asked such a silly question, and I do thank you for the time you took to answer it.
5  Using Arduino / Project Guidance / Re: "External" memory for program memory? on: October 08, 2012, 02:52:58 pm
I don't imagine this question hasn't been asked before - did you search the forum for previous answers?

Absolutely!  And I even varied the search terms too.

Unfortunately, even the best forum software often is sadly lacking in search capabilities.

Thank you for your suggestion, but rest assured that I did all the "RTFM!!" steps prior to asking my stupid and silly questions.
6  Using Arduino / Project Guidance / "External" memory for program memory? on: October 08, 2012, 01:40:30 pm
I know, from what I have read, that the stock Arduino device comes with a fixed amount of memory that can be used for running sketches, ranging from about 4k, to 256k or so, depending on the Atmel chip used.

I also know that by using a SD shield, or an Ethernet shield that has a built-in SD card reader, I can use the SD chip for data-logging and such.

Question #1:
Has anyone tried to use the SD card's memory for extended data storage, used programmatically?  For example:  I want to use an Arduino with an Ethernet shield, (containing an SD card reader), as a web server and I want to put multiple web-pages on the, (much larger!), SD card rather than main memory?

Question #2:
Is it possible to use the external memory on the SD card as additional storage for larger sketches than main memory will hold?  Can I execute out of the external memory, or is there a paging scheme that would work?

If this hasn't been done, than this is an area ripe for research, but if it HAS been done - at least in part - I'd really rather not re-invent the wheel again if I don't have to.

Thanks!
7  Using Arduino / Microcontrollers / Memory overrun blows Arduino chip? on: October 08, 2012, 01:19:30 pm
Ref:  This older forum topic http://arduino.cc/forum/index.php/topic,25235.0.html - "Large sketch == hozed chip?"

In this question, the individual had an atmega 168 chip, and had created a program that caused one of the internal fuses, (the extended fuse - 0x7), to blow, causing the chip to become inoperative unless re-flashed.

He discovered that he was causing the issue by overruning the existing ram:

Quote
The culprit here turned out to be my ignorance.  I was trying to use way more RAM than the ATmega168 provides.

Specifically I was trying to use some relatively large arrays, which I've now learned will get pulled into RAM by default.  The RAM overrun was then causing the chip to basically become unresponsive.

This was the end of that particular message thread, but it left one very important question un-answered:  Why?

Why should trying to write beyond available ram cause a hard fault in the chip?  I would expect a bizarre program failure, or an error message on compile, (No more RAM mon!), but a blown chip?  That's weird and scary.  Does that mean that if someone, perhaps even myself, accidentally attempts to use RAM past the end of physical RAM, they're risking their chip?  (i.e.  If I screw up a calculation and accidentally try to use more ram than exists - I'm hozed?)

I've messed with micro-controllers before and seen some weird things happen, but this takes the cake!

Any ideas?

Thanks!
8  Using Arduino / Microcontrollers / Re: Connecting Arduino Uno to a USB HID on: October 08, 2012, 12:58:42 pm
Look up Arduino USB Shield.

There are 2 types of USB Devices. Masters and Slaves. Masters and Slaves have different connectors. A slave device cannot function as a master - HINT Arduino Uno is a Slave type device. To connect a USB device to your Arduino you need a USB shield that will allow the Arduino to function as a master.

Interesting!

I can't say "I didn't know that", but I can say "Duh! Thanks for the reminder!!"

Question:
The Arduino is configured as a "slave" device - and that's understandable.  Is it possible to - programmatically - reconfigure the device to act as a master while running the sketch?  Our would that require a re-flash of the converter firmware, rendering it useless as a normal Arduino "slave" device without another re-flash.

Thanks!
9  Using Arduino / Networking, Protocols, and Devices / Re: Getting started with Arduino Ethernet on: September 30, 2012, 09:14:16 pm
Zoomkat,

First of all, thank you, (and everyone else for that matter), for the excellent code.

I believe I have found a small bug:

In your demo code, you wrote:
Code:
void setup(){

  if (Ethernet.begin(mac) == 0) {
    Serial.println("Failed to configure Ethernet using DHCP");
    // no point in carrying on, so do nothing forevermore:
    while(true);
  }

  Serial.begin(9600);  <<--- In the wrong place?

  Serial.println("Better client test 9/22/12"); // so I can keep track of what is loaded
  Serial.println("Send an e in serial monitor to test"); // what to do to test
}

You place the Serial.begin statement just prior to where you print your banner title.
Shouldn't it be placed just after the declaration of the "setup" method?  AFAIK, placed after the Ethernet.begin reference, the error code within it cannot print.  Right?

I had some fun with your code, moved that statement around, snooped out the Ethernet.cpp file, snipped some code from the "DhcpAddressPrinter" Ethernet example. . . . and added some code to give the user some feedback, and display the characteristics of his connection before it moves on to your test.

Here it is:

Code:
//zoomkat 9-22-12
//Updated 09/29/2012 by Jim Harris (JR) to provide a "confidence" message and IP info after connect
//simple client test
//for use with IDE 1.0.1
//with DNS, DHCP, and Host
//open serial monitor and send an e to test
//for use with W5100 based ethernet shields

#include <SPI.h>
#include <Ethernet.h>

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //physical mac address

char serverName[] = "web.comporium.net"; // zoomkat's test web page server
EthernetClient client;

//////////////////////

void setup(){

/*
Added by JR on 9/29/2012
Moved Serial.begin so that it appears prior to any serial message reference.
Added startup confidence message - as the sketch appears to hang when seeking an IP address.
*/
    Serial.begin(9600);
    Serial.println("Attempting to retrieve an IP address via DHCP\n");
    //  Added a "timing" message to help manage the users expectations
    Serial.println("This might take a little while, so why not go and");
    Serial.println("get a cuppa coffee while you wait\n");
//  end add =========================================================

  if (Ethernet.begin(mac) == 0) {
    Serial.println("Failed to configure Ethernet using DHCP");
    // no point in carrying on, so do nothing forevermore:
    while(true);
  }
/*
Added by JR on 09/29/2012
Added an "answer" to the "acquiring" message printed above.
*/
  Serial.println("Ahhh . .  Got one!");

/*
Here I snipped the central code block from the
"DhcpAddressPrinter" example found within the Ethernet library
folder, duplicated it four times, scrounged the Ethernet source,
and added the display of the IP address obtained, the subnet mask,
the gateway IP address, and the address of the assigned DNS server.
*/
  // print your local IP address:
  Serial.print("My IP address is: ");
  for (byte thisByte = 0; thisByte < 4; thisByte++) {
    // print the value of each byte of the IP address:
    Serial.print(Ethernet.localIP()[thisByte], DEC);
    Serial.print(".");
  }
  Serial.print("\n");  //  Added to space the various entries.

  // print your local subnet mask:
  Serial.print("My Subnet Mask is: ");
  for (byte thisByte = 0; thisByte < 4; thisByte++) {
    // print the value of each byte of the IP address:
    Serial.print(Ethernet.subnetMask()[thisByte], DEC);
    Serial.print(".");
  }
  Serial.print("\n");

  // print your local gatewaay:
  Serial.print("My Local Gateway is: ");
  for (byte thisByte = 0; thisByte < 4; thisByte++) {
    // print the value of each byte of the IP address:
    Serial.print(Ethernet.gatewayIP()[thisByte], DEC);
    Serial.print(".");
  }
  Serial.print("\n");

  // print your local DNS server IP:
  Serial.print("My Local DNS Server is: ");
  for (byte thisByte = 0; thisByte < 4; thisByte++) {
    // print the value of each byte of the IP address:
    Serial.print(Ethernet.dnsServerIP()[thisByte], DEC);
    Serial.print(".");
  }
  Serial.print("\n\n");  //  Added to provide spacing from my text and zoomkat's original text.
//  End add ===============================================================

  Serial.println("Better client test 9/22/12"); // so I can keep track of what is loaded
  Serial.println("Send an e in serial monitor to test"); // what to do to test
}

void loop(){
  // check for serial input
  if (Serial.available() > 0) //if something in serial buffer
  {
    byte inChar; // sets inChar as a byte
    inChar = Serial.read(); //gets byte from buffer
    if(inChar == 'e') // checks to see byte is an e
    {
      sendGET(); // call sendGET function below when byte is an e
    }
  }  
}

//////////////////////////

void sendGET() //client function to send/receive GET request data.
{
  if (client.connect(serverName, 80)) {  //starts client connection, checks for connection
    Serial.println("connected");
    client.println("GET /~shb/arduino.txt HTTP/1.0"); //download text
    client.println("Host: web.comporium.net");
    client.println(); //end of get request
  }
  else {
    Serial.println("connection failed"); //error message if no client connect
    Serial.println();
  }

  while(client.connected() && !client.available()) delay(1); //waits for data
  while (client.connected() || client.available()) { //connected or data available
    char c = client.read(); //gets byte from ethernet buffer
    Serial.print(c); //prints byte to serial monitor
  }

  Serial.println();
  Serial.println("disconnecting.");
  Serial.println("==================");
  Serial.println();
  client.stop(); //stop client

}

Take a look and critique it.

Feel free to mess with it as I have done.

A question:

On my Windows 7 system (that I am using as the development system), ipconfig returns the following information about my hard-wired Ethernet connection:

Code:
Ethernet adapter Local Area Connection:

   Connection-specific DNS Suffix  . : vgorilla.com
   Description . . . . . . . . . . . : Realtek PCIe FE Family Controller
   Physical Address. . . . . . . . . : 00-1E-33-FB-62-21
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 172.31.100.100(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Lease Obtained. . . . . . . . . . : Sunday, September 30, 2012 4:52:01 PM
   Lease Expires . . . . . . . . . . : Monday, October 01, 2012 7:44:37 PM
   Default Gateway . . . . . . . . . : 172.31.100.1
   DHCP Server . . . . . . . . . . . : 172.31.100.1
   DNS Servers . . . . . . . . . . . : 172.16.250.1
                                       66.189.0.100
                                       24.159.64.23
                                       24.247.24.53
   NetBIOS over Tcpip. . . . . . . . : Enabled

Note that there are three external DNS servers returned by the DHCP configuration request, (the first one is hard-coded so that I can use a particular VPN connection more easily.)

When I run my updated code and display the DNS IP address, it only retrieves and displays ONE DNS IP address.  (The 66.189.0.100 address)

Even if I increase the loop count for gathering the DNS IP address to 8, it still displays only the one.  The second comes back as 194.0.0.0
Viz.:
Code:
Attempting to retrieve an IP address via DHCP. . . .
Ahh . . Got one!
My IP address is: 172.31.100.104.
My Subnet Mask is: 255.255.255.0.
My Local Gateway is: 172.31.100.1.
My Local DNS Server is: 66.189.0.100.194.0.0.0.  <-- yes, I know the formatting stinks

Better client test 9/22/12
Send an e in serial monitor to test

Why is that?  Can it retrieve more than one DNS address?  Would it even be useful in the Arduino context?

I have also been having fun with the serial library and a 16x2 LCD display.  When I get time, I'll see if I can get this thing to print to the external display instead of the built-in serial terminal.

What say ye?

Jim (JR)
10  Using Arduino / Networking, Protocols, and Devices / Re: Getting started with Arduino Ethernet on: September 30, 2012, 08:26:18 pm
Paul,

When you posted your reply, I was ready to post a - lengthy - reply. . . .  However, I deleted it and waited a few days to read your post again.

Re-reading it today, it still infuriates me.  I cannot imagine how - on a forum like this - you can come on with such an absolutely arrogant attitude toward me - and possibly others here on these fora as well.

You said:

Quote
I still expect that you will have a fundamental understanding of client/server application development before you see the ethernet shield as a necessary component. I expect you to have at least passing familiarity with doing the same stuff with a PC that you want to do with an Arduino with ethernet shield.

I do not cede you the right to expect, or demand, anything from me.

You said:

Quote
Asking for links to tutorials to show you how to use the ethernet shield is an admission that the basic understanding is missing.

Likewise, I do not cede you the right to place limits upon the questions I may pose.

( :shaking head in wonder: )
I cannot understand how you can equate "asking for help/tutorials" so that I can see how it is done with the Arduino, with lacking any understanding about computers, networking, the Internet, etc. etc. etc.

It is exactly this kind of arrogance that drives people away from these fora, and makes them think two or three times about making use of the resources available here.  People don't come here to be spanked by the likes of you, they want help and encouragement.  And I am glad to say that everyone else on this forum has provided exactly that.  I have looked at code, seen how it is done, played with it, and had fun.

A request, if I may:  (Quoting a sign I have over my desk)
Be nice, or go away.

What say ye?

Jim (JR)
11  Using Arduino / Networking, Protocols, and Devices / Re: Getting started with Arduino Ethernet on: September 24, 2012, 09:57:12 pm
@ Everyone

Re:  Serial terminal.

Thanks!

I had heard / read about a "serial terminal" window in the Arduino IDE, but what I read left a lot to be desired - how to make it work, is it done automagically, etc.  So, (if I am understanding all this correctly), unless I "do something different" - whatever that is - any requests, via sketches software, hardware, or whatever, to use a "serial terminal", (using the built-in serial libraries?), automagically get routed through the USB interface to the IDE's serial terminal window.  Right?

While we're on this topic. . . (a bit off-topic, I apologize) . . . I just noticed on both my Uno and Mega boards that there are two pin-connections labeled "TX" and "RX", (on the Uno), "TX-0" and "RX-0", (on the Mega).  (I had my Uno hidden under a Seeed servo/DC Motor shield - so I did not really notice this until now.)  Do these run "in parallel" with the USB "serial" interface, or are they programmatically different?

Example:  I have a 16x2 serial display board that I bought with the other Arduino "toys" I picked up for myself.  It would be interesting to send, (at least), some status/display information to that display while the Ethernet board, (or some other shield, for that matter), is running.

You know, I used to be knee-deep in electronics and micro-controller electronics head first. ( smiley-grin )  but I've been away from it for a LOOONG time.  (since the mid '90's. . .)  This Arduino stuff is really getting me all excited about this stuff, all over again!  For which I thank all of you.

What say ye?

Jim (JR)
12  Using Arduino / Networking, Protocols, and Devices / Re: Getting started with Arduino Ethernet on: September 24, 2012, 05:25:58 pm
p.s.

Can someone please explain what is meant by a "serial terminal" within the Arduino context?  (Oh, and yes, I know what a serial terminal is.  I also know what a keypunch, a dedicated micro-controller, firmware, and a host of other things are.)

  • Do I physically attach some kind of serial device to pins "x" and "y" of the Arduino?
  • Is there a piece of software - perhaps within the Arduino IDE, or somewhere else - that takes care of that automagically?

Again, this seems to be assumed, but I'd rather not make any more assumptions than I absolutely have to - I've been bitten in the behind too many times because of some asinine assumption I made.

Thanks again for all your help!

Jim (JR)
13  Using Arduino / Networking, Protocols, and Devices / Re: Getting started with Arduino Ethernet on: September 24, 2012, 05:19:15 pm
Getting on your soap box is fine. But, read through this whole thread again. You haven't explained what you want to do with your ethernet shield.

Paul,

I absolutely agree.  Questions like "Duh, it don't work!" get us nowhere.

However - and correct me if I am wrong - I have listed very specific goals in my use of the Ethernet shield - and yes, I have received excellent answers from many people, to whom I will be forever in their debt.

Again, maybe I am wrong, but one of my "hot buttons" as a Software QA engineer of many years, is usability, and I believe that usability is one of the hallmarks of well written code and documentation.

IMHO - truly in my own very humble opinion - I appreciate these fora, and all the other fora that I have been privileged to participate in.  The ability to learn from those who have gone before is invaluable - and I honestly applaud those who take the time to answer my own silly noob questions - even if it is for the four-zillionth time.

Likewise, again IMHO, my own very humble opinion, as a newbie I can see things that - perhaps - escape the notice of those who have been working within the Arduino community for years and years.  These experts naturally know that in order to make this particular thing work you have to tweak this, nudge that, and give this other thing a little twist to the left.  They have done it so often that it is second nature to them.

Unfortunately, for those of us who are (relatively) new to the Arduino platform, these things are not self-evident.  We do what the documentation tells us to do, and slam up against that brick wall, because we don't know about the tweaks, nudges, and twists that the "old timers" know about.

Ergo, these fora.  For which, again, I am most humbly grateful.

My point is this:
If these things are more carefully explained in the documentation accompanying a piece of software - or if there is even some kind of documentation at all - the noob like myself who does not mind reading the documentation before trying to load code, will have a chance to learn these things without taking up the valuable time of the experts on these fora, explaining and re-re-re-explaining what should be obvious, and obviously documented.

These people don't get paid for this.  They do this because they have a sincere desire to support a platform they admire.  And their time is valuable.  As much as I appreciate the comments and advice that everyone has given me, I know that there are better, more worthy, questions that they should be answering.  Ergo, my comments suggesting better and more comprehensive documentation.

On the Propeller fora, I have offered to compile zipped archives of their various object libraries - for two reasons:
First:  I get a copy of everything!
Second:  Other folks like me don't have to go through a list of a hundred-or-so objects and download each and every one, one at a time.

I cannot do much there, I am still way too green, but this is my way of offering to "give back" to the community.

And as soon as I find something that I, myself, can do to help here within the Arduino community - despite my own limited knowledge - it will be my privilege to do so.

I am sorry if I appeared to come off as one simply ranting and raving - for that I apologize - however, I do believe that the gist of my comments has merit, and should be considered.

What say ye?

Jim (JR)
14  Using Arduino / Networking, Protocols, and Devices / Re: Getting started with Arduino Ethernet on: September 22, 2012, 10:38:01 pm

Billroy, (et. al.)

Within the code you referenced, there is this comment:

Quote
For debugging, connect via your favorite Serial Monitor at 57600  You can watch the web traffic and issue commands

This begs the question:  Where?  How?  With what?

Again, here is one of those chicken-and-egg scenarios - there are numerous references to a "serial terminal" - and there are even example sketches that purport to use one, but (AFAIK) there is no clear guide on how to do this.  OK, I am sure there is, but it's not exactly easy to find.

I really appreciate the help I am getting here - it is invaluable! - however it strikes me as a rather poor user experience when what should be simple, easy to find information, is hidden from view until someone like me gets on a forum like this to ask - for the zillionth time, I am sure - the same "What's a Cubit?" kind of noob questions.

If I had my 'druthers, there would be clearly written explanatory documentation in each of the example folders, explaining what is being done, how to do it, and possible additional references.

OK, you're right - I'm on my soap-box again.  smiley-grin

Thanks for all the help!

Jim (JR)
15  Using Arduino / Networking, Protocols, and Devices / Re: Getting started with Arduino Ethernet on: September 21, 2012, 11:31:27 pm

Ardu-Server is quite fun and functional.
http://sheepdogguides.com/arduino/art5serv1.htm

P.S. . . . .

I took another look at spcomputing's answer - silly me, I glossed over it the first time 'cause it looked like a spam-advertisement.  Guess I'm gettin' a bit too jaded.

I wandered around at the link he offered - made notes of a number of the URL's referenced from there so I can go back to them - and this site's author does cover a bit of ground.

Glancing at this guy's stuff, it looks like it's got more whiskers than five cats.  It's definitely going to be chewy, but it looks like it might be worth it.  This dude at least takes the time to explain what he's doing, and why.

Any other good examples of both client and server side Arduino applications?

Thanks!

Jim (JR)

p.p.s.  Now, if this was just easier for us noobs to find. . . . ( :grin: )
Pages: [1] 2