Allthough I do all tests using USB connection, in future I plan to use TCP/IP communication between all hardware.
Ethernet connection has some significant advantages in comparsion with USB:
1. It’s more stable.
2. It’s faster and TCP/IP manages data integrity.
3. Device identity (IP address) is hard-coded (or stored in EEPROM memory) so there’s no need to change serial port name every time device is reconnected.
Being now away from home (and all my hardware) I’ve decided to intergrate ethernet support into Arduino firmware and router.
The few things I’d like (and still don’t know how to) figure out are:
1. Detecting when ethernet shield is connected to arduino. Now there’s a variable telling firmware to initialize TCP/IP server and it’s required to set it to TRUE before uploading firmware.
2. Setting up IP address. The same as above – now it’s hard coded. IP address must be somehow definded at the first connection between PC and arduino (assuming there’s no access to source code or no skills to change it).