Difference between revisions of "Serial Connections"

From wiki.emacinc.com
Jump to: navigation, search
m (Marked to be split again.)
(19 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{todo|Split again (11.25.13-13:05->KY+);(11.25.13-18:45->MD+)|Klint Youngmeyer|project=oe 4,oe 5,ky,buggy,md}}
+
{{todo|SEOKWREV (11.25.13-13:05->KY+);(11.25.13-18:45->MD+);(11.26.13-21:40->MD+);(12.20.13-11:12->MW+);(03.04.14-15:20->BS-);(03.14.14-15:55->BS+)(03.14.14-15:55->BS+)(10.26.15-18:25->MG+)|Klint Youngmeyer|project=oe 4,oe 5,ky,SEOKWREV,md,mw,bs}}
  
'''THIS PAGE NEEDS: 1. To be split into two pages: "Serial Connections"  and  "Network Connections".  This is because the table listing serial connection information is very important, but has been very difficult to find.  We need the page to have the most obvious name possible for this.  We also should try to find other pages which mention using a serial connection, and refer them to this page to find out the connection information they need for their board.'''
+
{{#seo:
 +
|title=Serial Connections
 +
|titlemode=append
 +
|keywords=Serial Connections,Serial Terminal,PuTTY,Serial Communication Parameters
 +
|description=Serial Connections to EMAC boards.
 +
}}
 +
<!--'''THIS PAGE NEEDS: 1. To be split into two pages: "Serial Connections"  and  "Network Connections".  This is because the table listing serial connection information is very important, but has been very difficult to find.  We need the page to have the most obvious name possible for this.  We also should try to find other pages which mention using a serial connection, and refer them to this page to find out the connection information they need for their board.'''-->
  
 
There are several ways to connect to a system running EMAC OE Linux. The preferred connection method depends on the capabilities of the hardware. For example, headless systems (those without a graphical interface) will most likely use a serial port console, while systems with a video connection may be accessed using a keyboard and LCD or monitor.  When an LCD or monitor is available, a serial connection can occasionally still be needed; usually, this need arises after a user has accidentally misconfigured the display.  Other times, it may be useful to be able to use a serial console on a board that's running remotely but has had its network connection drop out.  The serial console can be a very useful tool for diagnosing and debugging issues even after development has finished.
 
There are several ways to connect to a system running EMAC OE Linux. The preferred connection method depends on the capabilities of the hardware. For example, headless systems (those without a graphical interface) will most likely use a serial port console, while systems with a video connection may be accessed using a keyboard and LCD or monitor.  When an LCD or monitor is available, a serial connection can occasionally still be needed; usually, this need arises after a user has accidentally misconfigured the display.  Other times, it may be useful to be able to use a serial console on a board that's running remotely but has had its network connection drop out.  The serial console can be a very useful tool for diagnosing and debugging issues even after development has finished.
  
 
== Serial Terminal ==
 
== Serial Terminal ==
A serial terminal connection is most commonly the first connection that will be made to a system in its default configuration. A serial terminal application such as Minicom for Linux or [[PuTTY]] under Windows is required for this connection. The serial cable type, port, and communication parameters for each system type are listed in Table 1 below.
+
A serial terminal connection is most commonly the first connection that will be made to a system in its default configuration. A serial terminal application such as [[Getting_Started_With_Minicom | Minicom]] for Linux or [[PuTTY]] under Windows is required for this connection. The serial cable type, port, and communication parameters for each system type are listed in Table 1 below.
  
{| class="wikitable"
+
<br clear=all>
!colspan="8"|Table 1: Serial Communication Parameters
+
<div align=center>
 +
{| class="wikitable" style="text-align: center;" |Table 1: Serial Communication Parameters
 
|-
 
|-
! Board !! Port !! Cable Type !! Baud Rate !! Data Bits !! Parity !! Stop Bits !! Flow Control
+
! SoM !! Port !! Cable Type !! Baud Rate !! Data Bits !! Parity !! Stop Bits !! Flow Control
 
|-
 
|-
| iPac-9302                || HDR6 || NULL Modem || 57600  || 8 || None || 1 || None
+
| [[ ARM_SOM | 200 Pin SoM's ]] || COMB || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
|-
| PPC-E7                  || CN1  || NULL Modem || 57600  || 8 || None || 1 || None
+
| [[ ARM_SOM | 144 Pin SoM's ]] || COME  || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
|-
| SoM-200ES with SoM-9307M || CN1  || NULL Modem || 57600  || 8 || None || 1 || None
+
| [[ SOM-9260 ]] || COMA  || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
|-
| SoM-200ES with SoM-9G45M || COMB || NULL Modem || 115200 || 8 || None || 1 || None
+
| [[ SOM-9G20 ]] || COMA || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
|-
| SoM-200ES with SoM-9M10M || COMB || NULL Modem || 115200 || 8 || None || 1 || None
+
| [[ iPac-9x25 ]] || COM1 || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
|-
| SoM-210ES with SoM-9307M || COMA  || NULL Modem || 57600  || 8 || None || 1 || None
+
| x86 Boards     || COM1*    || NULL Modem*          || 115200     || 8 || None || 1 || None
|-
 
| SoM-210ES with SoM-9G45M || COMB  || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
| SoM-210ES with SoM-9M10M || COMB  || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
| SoM-150ES                || HDR11 || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
| PPC-E10 with SoM-3517M  || HDR3  || NULL Modem || 115200 || 8 || None || 1 || None
 
|-
 
| x86 Boards               || *    || *          || *     || 8 || None || 1 || None
 
 
|}
 
|}
 +
</div>
  
 
+
{{note | '''*''' : These settings vary among x86 systems. Refer to the system manual for the target board for more information. Not all x86 systems have a serial terminal connection enabled by default.}}<br clear=all>
{{mbox | type = notice | text = '''*''' : These settings vary among x86 systems. Refer to the system manual for the target board for more information. Not all x86 systems have a serial terminal connection enabled by default.}}<br clear=all>
 
  
 
Follow the steps below to establish a serial connection:
 
Follow the steps below to establish a serial connection:
# Connect a serial cable between the serial port on the workstation and target board and start a terminal application.
+
# Connect a NULL Modem serial cable between the serial port on the workstation and target board and start a terminal application.
 
# Setup the communication parameters for your board according to Table 1.
 
# Setup the communication parameters for your board according to Table 1.
 
# Connect power to the target board; boot messages will begin to print within a few seconds.
 
# Connect power to the target board; boot messages will begin to print within a few seconds.
 
# When the board has finished booting a login prompt will appear.
 
# When the board has finished booting a login prompt will appear.
  
 
{{mbox | type = notice | text = Note that boards that do not have the serial device set as the default kernel console (such as the majority of headed x86 systems) will not display boot messages over the serial port during boot without further configuration. In these cases, the login prompt will appear when the board has finished booting. If a login prompt does not appear, press enter in the serial terminal application several times.}}<br clear=all>
 
 
== Network Connections ==
 
This section describes the process of establishing a basic network connection with the board. Once a network connection is established, the system may be accessed through the servers on the board, including SSH, HTTP, FTP, and Telnet.
 
 
=== Local Area Network ===
 
To make a connection to a local area network (LAN), simply connect a standard Ethernet patch cable to the primary Ethernet port on the board. This may be done before or after power has been applied, as the system is set up to allow hot-plugging of the network interface and should automatically re-configure the network settings when a link is detected.
 
 
EMAC OE Linux devices are set to attempt a DHCP network configuration by default. If a DHCP server is available on the network that the system is connected to, it will contact the server to secure an IP address lease. If an address has been obtained by DHCP, there are several ways of determining what address has been leased. The easiest way to access this information is to connect to the board through another method (i.e. serial terminal or graphical interface) and run the <code>ifconfig</code> command to determine the address that has been obtained on the <code>eth0</code> interface. Alternatively, network tools such as packet sniffers can be used to determine what IP address has been leased. The local network administration can determine and provide this information as well by querying the DHCP server tables. The listing below illustrates usage of the <code>ifconfig</code> command to determine the IP address.
 
 
<syntaxhighlight lang=console highlight=3>
 
root@emac-oe:~# ifconfig
 
eth0      Link encap:Ethernet  HWaddr 00:50:C2:E6:60:F4
 
          inet addr:10.0.2.100  Bcast:10.0.255.255  Mask:255.255.0.0
 
          inet6 addr: fe80::5054:ff:feb1:f83e/64 Scope:Link
 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 
          RX packets:1825 errors:0 dropped:0 overruns:0 frame:0
 
          TX packets:553 errors:0 dropped:0 overruns:0 carrier:0
 
          collisions:0 txqueuelen:1000
 
          RX bytes:139124 (135.8 KiB)  TX bytes:50603 (49.4 KiB)
 
          Interrupt:25 Base address:0xc000
 
 
lo        Link encap:Local Loopback
 
          inet addr:127.0.0.1  Mask:255.0.0.0
 
          inet6 addr: ::1/128 Scope:Host
 
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
 
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 
          collisions:0 txqueuelen:0
 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
 
</syntaxhighlight>
 
 
If the board fails to obtain a lease from a DHCP server, it will fall back to a static networking configuration. The default settings are detailed in Table 2 below.
 
{| class="wikitable"
 
!colspan="2"|Table 2: Default Static IP Settings
 
|-
 
! scope="row"| IP Address
 
| 10.0.2.41
 
|-
 
! scope="row"| Subnetwork Mask
 
| 255.255.255.0
 
|-
 
! scope="row"| Default Gateway
 
| 10.0.2.1
 
|-
 
! scope="row"| Broadcast Address
 
| 10.0.2.255
 
|}
 
 
=== Direct Connection ===
 
If a LAN connection is not available or desirable, you may make a direct connection to the board. Use an Ethernet '''crossover''' cable to connect directly between the workstation and the target board. Apply power to the board once the physical connections have been made.
 
 
 
{{mbox | type = notice | text = Note that most newer networking devices include support for Auto-MDIX, which allows them to detect if a crossover cable would be required and automatically match the correct configuration. Auto-MDIX only needs to be supported on one end of the link for this to work. If you are certain that your workstation or target board support Auto-MDIX, a standard Ethernet patch cable may be used for a direct connection rather than a crossover cable.}}
 
 
 
If a direct connection has been made to the board and a DHCP server is not running on the workstation, DHCP will fail and the system will fall back to the default IP settings in Table 2 above. The network interface on the workstation will then need to be configured to use the same subnetwork mask and broadcast address as the target board with a different IP address that falls in the same subnetwork. See Table 3 below for suggested static network settings if the board is still configured with the default static fall back settings. If the configuration has been changed, adjust these values to match the new settings.
 
 
{| class="wikitable"
 
!colspan="2"|Table 3: Static Network Settings for Direct Connection
 
|-
 
! scope="row"| IP Address
 
| 10.0.2.1
 
|-
 
! scope="row"| Subnetwork Mask
 
| 255.255.255.0
 
|-
 
! scope="row"| Default Gateway
 
| Blank or 10.0.2.41
 
|-
 
! scope="row"| Broadcast Address
 
| 10.0.2.255
 
|}
 
 
To verify that the connection is working properly, use the <code>ping</code> utility to test that the board responds at the address 10.0.2.41 (assuming default network configuration). The listing below shows an example of a successful <code>ping</code> (Ctrl-c was pressed after five packets).
 
<syntaxhighlight lang=console>
 
developer@ldc:~$ ping 10.0.2.41
 
PING 10.0.2.41 (10.0.2.41) 56(84) bytes of data.
 
64 bytes from 10.0.2.41: icmp_req=1 ttl=64 time=0.447 ms
 
64 bytes from 10.0.2.41: icmp_req=2 ttl=64 time=0.213 ms
 
64 bytes from 10.0.2.41: icmp_req=3 ttl=64 time=0.308 ms
 
64 bytes from 10.0.2.41: icmp_req=4 ttl=64 time=0.318 ms
 
64 bytes from 10.0.2.41: icmp_req=5 ttl=64 time=0.251 ms
 
^C
 
--- 10.0.2.41 ping statistics ---
 
5 packets transmitted, 5 received, 0% packet loss, time 3996ms
 
rtt min/avg/max/mdev = 0.213/0.307/0.447/0.081 ms
 
</syntaxhighlight>
 
  
 
== Next Steps ==
 
== Next Steps ==
 
After you have established a connection with your device running EMAC OE Linux, you will need to [[System_Log_In | log into the system.]]
 
After you have established a connection with your device running EMAC OE Linux, you will need to [[System_Log_In | log into the system.]]
  
[[Category:Linux]]
+
<!-- [[Category:Linux]]
 
[[Category:OpenEmbedded]]
 
[[Category:OpenEmbedded]]
 +
-->

Revision as of 16:27, 13 February 2019

TODO: {{#todo:SEOKWREV (11.25.13-13:05->KY+);(11.25.13-18:45->MD+);(11.26.13-21:40->MD+);(12.20.13-11:12->MW+);(03.04.14-15:20->BS-);(03.14.14-15:55->BS+)(03.14.14-15:55->BS+)(10.26.15-18:25->MG+)|Klint Youngmeyer|oe 4,oe 5,ky,SEOKWREV,md,mw,bs}}

There are several ways to connect to a system running EMAC OE Linux. The preferred connection method depends on the capabilities of the hardware. For example, headless systems (those without a graphical interface) will most likely use a serial port console, while systems with a video connection may be accessed using a keyboard and LCD or monitor. When an LCD or monitor is available, a serial connection can occasionally still be needed; usually, this need arises after a user has accidentally misconfigured the display. Other times, it may be useful to be able to use a serial console on a board that's running remotely but has had its network connection drop out. The serial console can be a very useful tool for diagnosing and debugging issues even after development has finished.

Serial Terminal

A serial terminal connection is most commonly the first connection that will be made to a system in its default configuration. A serial terminal application such as Minicom for Linux or PuTTY under Windows is required for this connection. The serial cable type, port, and communication parameters for each system type are listed in Table 1 below.


SoM Port Cable Type Baud Rate Data Bits Parity Stop Bits Flow Control
200 Pin SoM's COMB NULL Modem 115200 8 None 1 None
144 Pin SoM's COME NULL Modem 115200 8 None 1 None
SOM-9260 COMA NULL Modem 115200 8 None 1 None
SOM-9G20 COMA NULL Modem 115200 8 None 1 None
iPac-9x25 COM1 NULL Modem 115200 8 None 1 None
x86 Boards COM1* NULL Modem* 115200 8 None 1 None



NOTE
* : These settings vary among x86 systems. Refer to the system manual for the target board for more information. Not all x86 systems have a serial terminal connection enabled by default.


Follow the steps below to establish a serial connection:

  1. Connect a NULL Modem serial cable between the serial port on the workstation and target board and start a terminal application.
  2. Setup the communication parameters for your board according to Table 1.
  3. Connect power to the target board; boot messages will begin to print within a few seconds.
  4. When the board has finished booting a login prompt will appear.


Next Steps

After you have established a connection with your device running EMAC OE Linux, you will need to log into the system.