SAMA7D65 Curiosity Board - Getting Started Guide for Linux®
Introduction
Thank you for taking the time to evaluate the SAMA7D65 Curiosity Development Board. This instruction will guide you through running the demonstration application that comes with the kit. For a deeper dive into the features and capability of the kit, refer to the links provided in the "Additional Information" section of this guide.
This getting-started guide demonstrates how to perform an iPerf3 networking test between a Linux PC (acting as iPerf3 TCP Client) and the SAMA7D65 Curiosity Board (acting as iPerf3 TCP Server).
Two network configurations are possible. Select the preferred one based on your local configuration:
- Network configuration 1:
- The board and PC are connected directly with an Ethernet cable. In this case, a static IP will have to be manually assigned to the board and the PC. (Admin rights are needed).
- Network configuration 2:
- Board and PC are connected through the local network infrastructure or a router. In this case a Dynamic Host Configuration Protocol (DHCP) server will automatically assign an IP address to the board and the PC. (Ensure there are no IT restrictions for plugging the board on the local network)
Setup
Download the image
Download the Yocto Project® image from the image-link repository.
Place it in any directory of your choice.
Copy the downloaded file into the SD memory card using balenaEtcher.
Insert the SD memory card into the PC.
Download, install and run balenaEtcher.
Select the downloaded linux4sam-poky-sama7d65_curiosity-headless-sama7d65-2025.02.img.bz2.
Click Select target to download.
Select the mounted SD Card.
Select Flash.
The SD card will be ready for use once flashing is completed.
Connect the components as described in the following steps:
Ethernet cable to J14 connector.
Other side of the Ethernet cable shall be plugged in the PC (network configuration 1) or in a wall plug/router (network configuration 2).
SD card inserted in the SD Boot J10 slot (bottom side of the board).
Serial USB dongle to UART DEBUG J35 header.
USB-A to USB-C cable to J3 USB-C port for power.
Set up the SAMA7D65 Curiosity Board Serial Terminal and start the iPerf3 TCP server
Set up the SAMA7D65 Curiosity Board serial terminal on the PC.
Identify the serial USB connection by monitoring the last lines of dmesg command (may need sudo rights).
The /dev/ttyUSBx number will be used to configure the terminal emulator.
On the PC, open your favorite terminal emulator with the following settings:
- Baud Rate: 115200
- Data: 8-bit
- Parity: None
- Stop: 1-bit
- Flow Control: None
For example with picocom, assuming the serial USB interface is /dev/ttyUSB0:
Press the RESET (SW4) button on the SAMA7D65 Curiosity Board to force a reset.
When the system is ready, the SAMA7D65 serial terminal set up in Step 4 will show a prompt.
Verify the login prompt is shown on the SAMA7D65 terminal.
Enter "root" to log in. No password is required.
- In network configuration 1:
- Without a DHCP server, a static IP address (for example 192.168.100.11 here) needs to be assigned to the board with the following command:
- In network configuration 2:
- Getting a lease with the DHCP server should be automatic. To make sure, type udhcpc in the command line:
Finally, type ifconfig on the command line and verify the internet address is assigned to the SAMA7D65 Curiosity Board.
Note the assigned IP address as it will be used to run the iPerf3 test.
In this example, the IP address is 192.168.100.11 in network configuration 1 and 10.14.63.63 in network configuration 2. It will be different in your environment.
Start the iPerf TCP Server on the SAMA7D65 Curiosity Board by running the following command:
Configure the Linux PC and start the iPerf3 TCP Client
Open a Linux terminal program on the PC:
Complete the following for network configuration 1 and network configuration 2.
In network configuration 1:
The PC Ethernet IP address and mask must be manually configured (sudo rights are needed).
First, use the ifconfig command to find out the name of the PC Ethernet interface. In this example, we will consider it "eth0."
If the board IP is 192.168.100.11, then, for example configure the PC IP with 192.168.100.2/255.255.255.0 with the following command:
In network configuration 2:
No manual change is needed; the DHCP will automatically assign the right IP address.
In the PC terminal, start the TCP Client iPerf3 with the previously noted IP address of the board.
This will test the performance of the network transfers between the PC (TCP Client) and the SAMA7D65 Curiosity Board (TCP Server).
Come back to the SAMA7D65 serial terminal and confirm the test results:
Congratulations! Your SAMA7D65 board running Linux is now connected over Ethernet to your PC.
What's next? Look below in the additional Information section for more resources.
Additional Information
- SAMA7D65 Curiosity Board (User Guide, Design Files)
- SAMA7D65 Product Page (Datasheet, Errata)
- Linux Solutions
- MPLAB® Harmony v3 Solutions
- MPLAB® Discover Code Examples
Troubleshooting
The SAMA7D65 serial terminal is not showing anything. | There are multiple possible reasons why the terminal does not show anything:
|
Running the iperf3 command on the PC terminal results in a "Connection refused" error. [ 1] tcp connect to 10.14.63.70 port 5001 failed (Connection refused) on 2024-05-31 11:43:21 (US Mountain Standard Time) | Verify that the IP address used when sending the iperf3 command matches the target IP address. |
The terminal shows a RomBOOT message. |
|
IT restrictions forbid the plugging of SD Cards in the PC. BalenaEtcher can't be used. | Another option for programming the SD Card is to use the Microchip SAM-BA tool.
.\sam-ba -p serial -b sama7d65-curiosity -a sdmmc -c write:linux4sam-poky-sama7d65_curiosity-headless-sama7d65-2025.02.img |