-MPLAB X IDE [url removed, login to view]
-MPLAB Harmony Configurator [url removed, login to view]
-MPLAB Harmony Framework v2_00b
- PIC32MZ Embedded COnnectivity Kit - Starter kit with PIC32MZ2048ECH144
Those tools to be used for a project that acts like a bridge between CDC USB device and ethernet interface. All data from CDC USB device will be pushed to ethernet and all data from ethernet will be pushed to CDC USB device full transparent.
There will be 4 applications:
1. USB Host:
Must support single CDC device. Our CDC devices uses FTDI chip for USB interface.
The device can be TCP client or TCP server.
TCP client: The device will connecT to target IP and port
TCP server: The device will wait communication from a TCP client. After connection, Server should dedect alive client based on small heart beat packages(no visible from USB Host side), if fails it should close communication. Client shouşd try to connect in this case again.
Webcommunications should support ping for both sides, announce discovery tool from Microchip
3. HTTP server:
The device paramaters will be configured over http server
USB Host UART parameters like baud rate, data format ( 7 data bit, even parity, 1 stop bit) etc.
WEB communcations parameters for TCP server like enable TCP server, enable/disable DHCP server, enter IP parameters, server listening port etc. Also heart beat package inetrval set.
WEB communcations parameters for TCP client like enable TCP client, enable/disable DHCP client, enter IP parameters, server connection port and IP etc.
timer parameters for scheduled restart like we enter number there in minutes and after that minutes device restart itself.
Monitoring parameters like LED status, Connected TCP client in TCP server mode along with its port.
4. LED activity:
Idle state->LED 1: toggle every 500ms
USB CDC connected and opened successfully->LED 1: ON steady
USB CDC disconnected->LED 1: toggle every 500ms
Idle state->LED 2: toggle every 500ms
TCP connection done ( either in server or client mode) ->LED 1: ON steady
TCP connection closed->LED 1: toggle every 500ms
Idle state->LED 3: OFF
Any transmission from USB Host to TCP ( either in server or client mode) ->LED 3: Flash
In any error from USB host or TCP( either in server or client mode) ->LED 3: ON steady