SAM9X75 Curiosity LAN Kit - Quick Start Guide for Linux®

Last modified by Microchip on 2025/04/11 09:05

Introduction

Thank you for taking the time to evaluate the SAM9X75 Curiosity LAN Kit. This guide will help you run the demonstration application included 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.

Pre-Requisites:

  • Confirm the following components are present out of the box:
    • SAM9X75 Curiosity Board 
    • LAN8840 EDS2 SODIMM extension board (P/N: EV12N54A)
    • SD card
    • USB-A to micro-USB cable (power)
  • Prepare the following hardware:
    • Linux® PC with an SD card reader and sudo rights
    • Serial to USB dongle (FTDI)
    • Ethernet cable
  • Install the following applications on the Linux PC

This quick start guide demonstrates how to perform an iPerf3 networking test between a Linux PC (acting as iPerf3 TCP Client) and the SAM9X75 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:
    • The 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 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.

balenaEtcher window Flash from File buttonClick image to enlarge.

Click Select target to download.

balenaEtcher window Select Target buttonClick image to enlarge.

Select the mounted SD card.

balenaEtcher  Select target windowClick image to enlarge.

Select Flash.

The SD card will be ready for use once flashing is completed.

balenaEtcher window Flash buttonClick image to enlarge.

Back to Top


Connect the components as described in the following steps:
Ethernet cable to J5 connector on the LAN8840 EDS2 Daughter Card EV12N54A.
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 on the SD Boot J14 slot.
Serial USB dongle to UART DEBUG J35 header.
USB-A to Micro-USB cable to J2 Micro-USB port for power.

Connection setup

Back to Top

Set up the SAM9X75 Curiosity Board Serial Terminal and start the iPerf3 TCP server

Set up SAM9X75 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.

dmesg output

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:

sudo picocom -b 115200 /dev/ttyUSB0  (sudo rights may be needed)

Back to Top


Press the RESET (SW3) button on the SAM9X75 Curiosity Board to force a reset.
When the system is ready, the SAM9X75 serial Terminal set up in Step 4 will show a prompt. This is the TCP Server terminal.

 Verify the login prompt is shown on the SAM9X75 serial Terminal.

TCP Server terminal

Enter "root" to log in. No password is required.

In case you do not see the prompt, press the enter key to force the prompt to refresh.

  • 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:
# ifconfig eth0 192.168.100.11 netmask 255.255.255.0
  • In network configuration 2:
    • Getting a lease with the DHCP server should be automatic. To make sure, type "udhcpc" in the command line:  
# udhcpc 

TCP Server

Finally, type "ifconfig" on the command line and verify the internet address is assigned to the SAM9X75 Curiosity Board.

# ifconfig 

ifconfig

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.85 in network configuration 2. It will be different in your environment.

Back to Top


Start the iPerf3 TCP Server on the SAM9X75 Curiosity Board by running the following command:
# iperf3 -s -i 1

Back to Top

Configure the Linux PC and start the iPerf3 TCP Client

 Open a Linux terminal program on the PC:

Run Linux Terminal Program

Back to Top


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 is 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:

# ifconfig eth0 192.168.100.2 netmask 255.255.255.0

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 following command:
Information

Note that the IP address below used must match the IP address recorded in Step 5.5.

# iperf3 -c 192.168.100.11 -i 1 -t 5

This will test the performance of the network transfers between the PC (TCP Client) and the SAM9X75 Curiosity Board (TCP Server).

Back to Top


Come back to the SAM9X75 serial terminal and confirm the test results:

TCP Server terminal


Congratulations! Your SAM9X75 board running Linux is now connected over Ethernet to your PC.

What's next? Look below in the additional Information section for more resources.

Back to Top

Additional Information

Back to Top

Troubleshooting

Common

The SAM9X75 serial terminal is not showing anything.

There are multiple possible reasons why the terminal does not show anything:

  • Double-check that the RX-TX signals of the serial cable are properly connected to the RX-TX signals of the board.
  • Double-check that the ground signal is properly connected.
  • Verify that the SD card contains the right files.

Running iPerf3 command in the PC terminal results in 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 the IP address used when sending the iPerf3 command matches the target IP address.
Terminal shows RomBoot message.
  • Verify if the SD card contains the right files.
  • Verify that the SD card is inserted properly.
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.

  1. Download and install SAM-BA (v3.9 at least).
  2. Decompress the downloaded Linux bz2 image.
  3. Plug the USB-A to micro-USB cable from the PC to J2 micro-USB port for power and SAM-BA connection.
  4. Plug the SD card in the SAM9X75 board (no more in the PC) and use the following SAM-BA command to program the SD Card:

.\sam-ba -p serial -b sam9x75-curiosity -a sdmmc -c write:linux4sam-poky-sam9x75_curiosity-headless-2024.04.img

Back to Top