This is a demonstration kit for the Belcarra PIC32MZ USBLAN Driver using either of Microchip's* PIC32MZ EF Starter Kit or PIC32MZ EF Curiosity Board**.
It demonstrates how Networking over USB can be used as an alternative to Ethernet or WiFi to provide lower-cost networking to a Microchip PIC32MZ based board.
Networking over USB allows a point to point network connection to be used between the PIC32MZ board and a Windows, Mac or Linux host.
More information on licensing of the Belcarra USBLAN driver for Windows, MacOS and PIC32MZ is available at https://www.belcarra.com/ or contact info@belcarra.com.
More information on licensing of the Belcarra USBLAN driver for Windows, MacOS and PIC32MZ is available at https://www.belcarra.com/ or contact info@belcarra.com.
This kit is based on the Microchip Harmony 3 Framework demonstration project:
- **apps/tcpip/web_net_server_nvm_mpfs**
The kit was developed using MPLAB X IDE v5.20.
There are two projects available in the kit:
* pic32mz_ef_sk.X - support for the PIC32MZ_EF_SK Ethernet Starter Kit * pic32mz_ef_curiosity.X - support of the PIC32MZ_EF_CURIOSITY Board
The sample application was been modified to add the following Harmony 3 components:
* net Telnet * net Iperf * net Zeroconf * USB High Speed Driver * USB Device Driver
This demonstration can be used with or without the Belcarra USBLAN Driver which is provided as a compiled library.
Supported Microchip Evaluation Boards
- **PIC32MZ EF Ethernet Starter Kit** (pic32mz_ef_sk) - **PIC32MZ EF Curiosity Board Bundle **(pic32mz_ef_curiosity)
CDC-EEM
Networking over USB uses a USB connection to transfer TCP IP Frames (aka packets) between the USB Device (in this case a Microchip Evaluation Board) and a USB Host (typically a Windows, Mac or Linux system.)
There are various protocols defined by USB.org: * CDC-ECM * CDC-EEM * CDC-NCM
The Belcarra PIC32MZ USBLAN Driver implements CDC-EEM. The CDC-EEM protocol allows for a simple point to point transfer of frames between the USB Host and the USB Device. It supports frame aggregation and his very little overhead.
The USBLAN driver supports zero-copy received frames. I.e. the data is received into a receive buffer by the USB High-Speed driver and that buffer is given to the TCPIP layer for processing.
The USBLAN driver also supports zero-copy transmit frames or can aggregate multiple frames depending on how the data is formatted by the TCPIP lyaer.
Performance
Using iperf the pic32mz_ef_sk board can source TCP data at about 93 Mbits/second with Ethernet and about 83 Mbits/second using USBLAN.
Belcarra PIC32MZ USBLAN Driver
The kit is set up to use the Belcarra PIC32MZ USBLAN Driver. That driver is available under license from Belcarra Technologies. Simply copy the USBLAN driver into src/config/*/driver/usblan.
To use this kit without the Belcarra driver remove the USBLAN definition from the X32-gcc Preprocessing macros and compile.
For information on obtaining a copy of the Belcarra driver contact Email: info@belcarra.com
Microchip Eval Boards
PIC32MZ_EF_SK - Ethernet Starter Kit PIC32MZ2048EFM144 - DM320007-C
Configurations:
- pic32mz_ef_sk_usblan - USBLAN and Ethernet - pic32mz_ef_sk - Ethernet only
There are two versions of this kit, you may to need to chnage the processor selection to match your kit:
- DM30007 - non-crypto PIC32MZ2048EFH144 - DM30007-C - crypto PIC32MZ2048EFM1444

PIC32MZ_EF_CURIOSITY - Curiosity Board PIC32MZ2048EFM100 - DM320104-BNDL
N.B. the USB UART is shown plugged into Mikro Bus #1. The project configuration requires it to be in Mikro Bus #2.
Configurations:
- pic32mz_ef_sk_curiosity_usblan - USBLAN and Ethernet - pic32mz_ef_sk_curiosity - Ethernet only
Testing Setup
Use two systems: 1. Linux development and testing for Ethernet 2. Windows for testing USBLAN
Linux setup: - Chrome with two tabs open, for the two possible IP addresses that may be used for the Ethernet (depending on if the Ethernet is the first or second interface). E.g.: http://192.168.40.145/ - Ethernet only configurations http://192.168.40.146/ - USBLAN and Ethernet configurations - Terminal window open running minicom pointing at the appropriate serial port, configured to 460800 baud. Port names may vary, but on my system: /dev/ttyACM0 - PIC32MZ EF SK USB2UART port /dev/tty/USB0 - PIC32MZ EF Curiosity USBUART click board port
Windows setup: - Chrome with one tab open, set to the USBLAN IP address. E.g: http://192.168.188.2/ - Terminal window (e.g. Cygwin mintty). Various tests, but typically: ping 192.168.188.2
The Chrome tabs should display the following screen, with the Random Number being updated rapidly:

For the non usblan configurations you will only see the webpage on the Ethernet IP address.
IP address:
- Ethernet is assigned by DHCP from your local DHCP server, see it's DHCP Lease table - USBLAN will be at 192.168.188.2
On the Starter Kits only buttons 1 and 2 work. Button 3 functionality is lost because the MPU pin it is on is used for the USB2UART Tx line.
On the Curiosity board, there is only one button.
12bet Sign Up Bonus, Bonus & Free Spins | Tatsujin Sushi
ReplyDeleteWelcome bonus & free spins offer for Tatsujin Sushi restaurant. gioco digitale Check our review and get the best promo codes for 12bet this restaurant! Rating: 5 샌즈카지노 · 1 review