Webserver only w/o any other functions, single thread. Running on STM32F013+W5500
Dependencies: NTPClient W5500Interface Watchdog device_configuration eeprom_flash mbed-rpc-nucleo mbed-rtos mbed
Fork of F103-Serial-to-Ethernet by
Diff: readme.txt
- Revision:
- 18:ca499a2e7da6
- Parent:
- 17:88ef7a078095
- Child:
- 19:05934ee9ee67
--- a/readme.txt Sat Oct 04 20:25:45 2014 +0000 +++ b/readme.txt Tue Oct 21 20:39:15 2014 +0000 @@ -1,88 +1,4 @@ -CONFIGURATION SECTION (UDP) -1. DISCOVERY Command - + UDP broadcast: 192.168.0.255 to port 11000 - + Send: NNIODS - + Receive: NNIO IP-address -1a. Query Command: IP, subnet, gateway, mac - + + Send: NNIOIP, NNIOSN, NNIOGW, NNIOMC - -2. TCP SERVER PORT Command - + Send: NNIOTP - + Receive: 10000 - -3. UDP SERVER PORT Command - + Send: NNIOUP - + Receive: 11000 - -4. Set time using NTP Command - + Send NNIOTM - + Receive: - DIS: if NTP is disabled - ERR: if cannot update time - Successful: Fri Sep 26 20:28:01 2014 {0A} - -5. Set new network configuration - + Send: 19 bytes in total, NNIO + 15-byte - NNIO 4-byte IP address 4-byte subnet 4-byte gateway 3-byte MAC - 4E 4E 49 4F C0 A8 00 78 FF FF FF 00 C0 A8 00 01 00 00 01 - -6. Set TCP server info (only when the device is as a TCP client) - + Send: 12 bytes in total, NNIO + 8 bytes - NNIO 1-byte auto flag 1-byte time period (s) 4-byte IP 2-byte port (LSB MSB) - 4E 4E 49 4F 'Y' or others 05 (5s) C0 A8 00 09 E0 2E (0x2EE0 = 12000) - - -INTERFACING SECTION (TCP) -4. Receiving Protocol: 58-bytes in total -Ex in hex -ID: 4E 4E 49 4F -OP: 4F 4F 4F 4F 51 -IP: C0 A8 00 78 -DO: 48 48 48 48 48 48 48 48 -AO: 80 00 80 00 (no DAC) -UART: 32-byte -CR: 0D - - + Field ID (4-bytes) = NNIO - + Field OP (5-bytes): output control enable flag - Byte 1: Digital output - Byte 2: Analog output 0 - Byte 3: Analog output 1 - Byte 4: UART output - Byte 5: Command (Q: query status) - 'O': enable controlling output - Others: disable controlling output - If Command is 'Q', device will update its outputs if needed and send its status including new outputs - + Field IP (4-bytes): device IP address - + Field DO[n] (8-bytes): digital output values - 'H': output set to high - 'L': output set to low - + Field AO_0 (2-bytes): 16-bit analog output value, channel 0 - no DAC - + Field AO_1 (2-bytes): 16-bit analog output value, channel 1 - no DAC - + UART output (32-bytes): max 32 bytes, stop string by NULL - + End char: CR - -5. Sending Protocol: 39-bytes in total - + Field ID (4-bytes) = NNIO - + Field MAC (6-bytes) - + Field IP (4-bytes) - + Field DI[n]: 8-bit digital input values - 'H' if input is HIGH - 'L' if input is LOW - + Field DO[n]: 8-bit digital output values - 'H' if output is HIGH - 'L' if output is LOW - + Field AI_0 (2-bytes): analog 16-bit input value, normalised, channel 0 - 1st byte = LSB, 2nd byte = MSB - + Field AI_1 (2-bytes): analog 16-bit input value, normalised, channel 1 - 1st byte = LSB, 2nd byte = MSB - + Field AO_0 (2-bytes): 16-bit analog output value, channel 0 - no DAC, fixed - + Field AO_1 (2-bytes): 16-bit analog output value, channel 1 - no DAC, fixed - + End char: CR - -6 Commands: - + QUERY STATUS ('Q') \ No newline at end of file +0. Wait for 2s after resetting for ethernet to work. +1. When auto update enabled and no TCP server is running, module will try to connect to server which results in a timeout every 15s. + This makes UDP packets take more time to be received and processed by the module. The result is slow UDP commands, such as Discovery. + To make it faster, start a TCP server on Hercules. The module will connect to it to transmit updates. \ No newline at end of file