Tera Term is open source free software terminal emulator supporting UTF-8 protocol. Now TTSSH supports SSH2 protocol (original version supports SSH1).
Tera Term is now Tera Term Pro 2.3, the succession version. It is officially recognized by the original author.
A Windows tool for writing images to USB sticks or SD/CF cards.
A free utility to send and receive network packets: TCP, UDP and SSL.
Let’s take it for a test drive.
1 | S32G-PROCEVB-S: S32G Processor Module with Ironwood Electronics SG-BGA-6124 Socket |
2 | M4159 Heatsink |
3 | Hex key |
4 | Timiy Vacuum Pen Tool |
Watch the video to install the socket and heatsink. You can also use the step-by-step guide.
1. Turn the socket screw to the left to loosen the top of the socket.
2. Remove the socket cover by turning it to the left and lifting up. Set it aside.
3. Use the vacuum tool to pick up and remove the compression plate from the socket. Set it aside.
4. Using the vacuum tool, pick up the S32G device and place it in the socket base.
Note: Make sure that the polarity mark matches the socket polarity mark indicated by the dots.
5. Remove the screw completely from the socket cover with the hex key.
6. Using the vacuum tool, install the compression plate on top of the S32G device.
7. Replace the socket cover and turn to the right to lock in place.
8. Rotate the heatsink slowly clockwise until initial contact with the compression plate. Turn it 1/4 turn to make good contact. Do not over-stress the socket.
Caution: Do not force the heatsink.
When the installation is complete, it should look like the picture:
When the S32G-PROCEVB-S is stacked on the S32GRV-PLATEVB:
Jumper J96
on the S32G-PROCEVB-S should be in position 1-2, Only the S32GRVPLATEVB needs to be powered.
Connect power supply to the 12 V power jack P3
on S32GRV-PLATEVB.
When the S32G-PROCEVB-S is used standalone:
Jumper J96
should be in position 2-3.
Connect power supply to the 12 V power jack P1
on S32G-PROCEVB-S.
1. Open Tera Term on Windows PC.
2. Select the serial port to which the micro USB J58
of the S32G-PROCEVB-S is connected and click OK.
3. Go to Setup > Serial Port and select 115200
as the baud rate
Switch on the power switch SW1
on the S32GRV-PLATEVB and power switch SW10
on the
S32G-PROCEVB-S.
The Diagnostics Utility is auto-executed from the SD card.
The console display on Tera Term shows the status of the diagnostic tests.
We offer ready-to-go SD cards with S32G-VNP-EVB and S32G-VNP-EVB image to help people getting started and log data
Diagnostic Test Release 201909XX
CPU: NXP S32G
Board: S32G274A Board
MC_CGM_0 Clock Mux 0 -> XBAR_CLK (Core Clock)
CORE_DFS_1 Clock -> MC_CGM_0 Clock Mux 0
CORE_VCO Clock -> CORE_DFS_1 Clock
FXOSC -> CORE_VCO Clock
FXOSC: 40000000Hz
CORE_VCO Clock: 2000000000Hz
CORE_DFS Clock: 1000000000Hz
XBAR_CLK: 500000000Hz
Test#1: Setup Init - OK
Test#2: Running LINFLEXD Test
FXOSC -> PERIPH_PLL_PHI3_CLK
FXOSC: 40000000Hz
MC_CGM_0 Clock Mux 8 -> LIN_CLK
LIN CLK = 80000000Hz
LIN 0 Mode: UART
UART 0 Mode: 8-Bit Mode
UART 0 Baud Rate: 115273bps
UART 0 TX_INT: Enabled
UART 0 RX_INT: Enabled
UART 0 SIUL2 Settings: PK15, PL00
Testing LINFLEX Rx
Press enter to continue
Test#2: Test OK
Test#3: Running STM Test
STM CLK = XBAR_CLK
STM Instance: 0
STM 0 Channel: 0
STM 0 Ticks: 3855
STM 0 NVIC ID: 24
STM CLK = XBAR_CLK
STM Instance: 0
STM 0 Channel: 1
STM 0 Ticks: 3855
STM 0 NVIC ID: 24
STM CLK = XBAR_CLK
STM Instance: 0
STM 0 Channel: 2
STM 0 Ticks: 3855
STM 0 NVIC ID: 24
STM CLK = XBAR_CLK
STM Instance: 0
STM 0 Channel: 3
STM 0 Ticks: 3855
STM 0 NVIC ID: 24
Test#3: Test OK
Test#4: Running PIT Test
PIT CLK = XBAR_CLK
PIT Instance: 0
PIT 0 Counter: DOWN
PIT 0 Timer: 0
PIT 0 NVIC ID: 53
PIT 0 Ticks: 4096
PIT CLK = XBAR_CLK
PIT Instance: 0
PIT 0 Counter: DOWN
PIT 0 Timer: 1
PIT 0 NVIC ID: 53
PIT 0 Ticks: 4096
PIT CLK = XBAR_CLK
PIT Instance: 0
PIT 0 Counter: DOWN
PIT 0 Timer: 2
PIT 0 NVIC ID: 53
PIT 0 Ticks: 4096
PIT CLK = XBAR_CLK
PIT Instance: 0
PIT 0 Counter: DOWN
PIT 0 Timer: 3
PIT 0 NVIC ID: 53
PIT 0 Ticks: 4096
PIT CLK = XBAR_CLK
PIT Instance: 0
PIT 0 Counter: DOWN
PIT 0 Timer: 4
PIT 0 NVIC ID: 53
PIT 0 Ticks: 4096
PIT CLK = XBAR_CLK
PIT Instance: 0
PIT 0 Counter: DOWN
PIT 0 Timer: 5
PIT 0 NVIC ID: 53
PIT 0 Ticks: 4096
PIT CLK = XBAR_CLK
PIT Instance: 0
PIT 0 Counter: DOWN
PIT 0 Timer: 6
PIT 0 NVIC ID: 53
PIT 0 Ticks: 4096
Test#4: Test OK
Test#5: Running SWT Test
SWT CLK = XBAR_CLK
SWT Instance: 0
SWT 0 Counter: UP
SWT 0 NVIC ID: 14
SWT 0 Time Out Value: 392400
Test#5: Test OK
Test#6: Running I2C_0 Test
I2C CLK source= XBAR_DIV3_CLK
I2C CLK = 166666666Hz
FXOSC -> CORE_VCO Clock
FXOSC: 40000000Hz
CORE_VCO Clock -> CORE_DFS_1 Clock
CORE_DFS Clock: 1000000000Hz
CORE_DFS_1 Clock -> XBAR Clock
XBAR_CLK: 500000000Hz
I2C 0 Mode: Controller
I2C Target Address = 0xA0
Test#6: Test OK
Test#7: Running DSPI_5 Test
PERIPH_PLL_PHI7_CLK -> DSPI CLK
FXOSC -> PERIPH_PLL_PHI7_CLK
FXOSC: 40000000Hz
DSPI CLK = 1Hz
DSPI 5 Mode: CONTROLLER
DSPI 5 Frame Size: 7Byte
DSPI 5 CPOL : 0
DSPI 5 CPHA : 1
DSPI 5 Loopback with DSPI 1
DSPI 5 Data Length: 8 Bytes
Test#7: Test OK
Test#8: Running GMAC RX Test
GMAC No of Receive Descriptors: 5
GMAC RX NVIC ID: 59
GMAC Buffer Max Length: 1536
ARP Packets Received: 0
ICMP Packets Receive: 0
UDP Packets Received: 2
TCP Packets Received: 0
Unidentified IPv4 Packets Received: 0
Unidentified Packets Received: 3
Test#8: Test OK
Test#9: Running GMAC TX Test
GMAC Mode: RGMII
GMAC RX CLK Direction: PHY to MAC
GMAC TX CLK Direction: MAC to PHY
GMAC Speed: 1Gbps
PERIPH_PLL_PHI5_CLK -> GMAC TX CLK
FXOSC -> PERIPH_PLL_PHI5_CLK
FXOSC: 40000000Hz
GMAC TX CLCK: 133333334Hz
GMAC_EXT_RX_CLK -> GMAC RX CLK
GMAC Communication Mode: Full Duplex
GMAC DMA channel: 0
GMAC DMA Burst Size: 16Bytes
GMAC Source MAC: 0:4:9F:22:E:B0
GMAC Destination MAC: FF:FF:FF:FF:FF:FF
GMAC Source IP: 192.168.0.10
GMAC Destination IP: 192.168.0.11
GMAC Source Port: 2001
GMAC Destination Port: 12345
GMAC No of Transmit Descriptors: 50
GMAC Packet Type: UDP
Test#9: Test OK
Test#10: Running LLCE CAN Loopback Tests
FXOSC -> CAN CLK
FXOSC: 40000000Hz
CAN CLK = 40000000Hz
LLCE_CAN_2 Loopback with LLCE_CAN_3
LLCE_CAN 2&3 ID Type: Standard
LLCE_CAN 2&3 Data Size: 32 Bytes
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Running LLCE CAN 2 & 3 Test: Test OK
Test#11: Running LLCE LIN loopback Tests
FXOSC -> PERIPH_PLL_PHI3_CLK
FXOSC: 40000000Hz
MC_CGM_0 Clock Mux 8 -> LIN_BAUD_CLK
LLCE_LIN_BAUD_CLK = 83333334Hz
LLCE_LIN_0 connected with MPC5748G DEVKIT LIN_0
ID : 0x1
Data Size: 8 Bytes
LLCE_LIN_1 connected with MPC5748G DEVKIT LIN_0
ID : 0x1
Data Size: 8 Bytes
LLCE_LIN_2 connected with MPC5748G DEVKIT LIN_0
ID : 0x1
Data Size: 8 Bytes
LLCE_LIN_3 connected with MPC5748G DEVKIT LIN_0
ID : 0x1
Data Size: 8 Bytes
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
Running LLCE LIN 0 Test
LLCE LIN 0 message transmitted, Check the received data on follower
Running LLCE LIN 1 Test
LLCE LIN 1 message transmitted, Check the received data on follower
Running LLCE LIN 2 Test
LLCE LIN 2 message transmitted, Check the follower for received data
Running LLCE LIN 3 Test
LLCE LIN 3 message transmitted, Check the received data on follower
All tests complete, Core in While(1)
AWS IoT Greengrass is a software provided by AWS to extend cloud capabilities to locally connected devices.
This allows local devices to publish/subscribe to a topic even if there is no connectivity with AWS IoT console.
A Greengrass group consists of a Greengrass core, multiple Greengrass devices connected to that core, and lambda functions and other services running on that core.
For more details about AWS IoT Greengrass, refer to What Is AWS IoT Greengrass.
Follow these steps in your Linux host.
If you have previously built a S32G Linux BSP using Yocto, you can skip section 2.1.
$ sudo <pkg-mgr> update
$ sudo <pkg-mgr> intall python git curl
$ mdkir ~/bin
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
$ PATH=${PATH}:~/bin
The following steps download the Yocto steps needed to build your image.
$ mkdir <yocto_dir>
$ cd <yocto_dir>
$ repo init -u https://source.codeaurora.org/external/autobsps32/meta-nxp-greengrass
$ repo sync
The next step downloads and installs the Yocto dependencies in your host.
$ ./sources/meta-alb/scripts/host-prepare.sh
Next step creates your build directory and configures the extra layers to use.
The value <machine> can be S32G-VNP-EVB.
$ source nxp-setup-alb.sh -m <machine> -b <build_dir> -e "meta-aws meta-java meta-nxpgreengrass
meta-tensorflow"
Skip this change for the S32G-VNP-EVB board.
The meta-nxp-greengrass layer uses eth0 interface for internet access in the S32G-VNP-EVB and pfe2 in the S32G-VNP-RDB or S32G-VNP-RDB2. To use pfe2, include the following lines in the
<yocto_dir>/<build_dir>/conf/local.conf.
Note: PFE firmware is available through Flexera.
DISTRO_FEATURES_append = " pfe"
PFE_LOCAL_FIRMWARE_DIR = "<path_to_pfe_fw_directory>"
The image with Greengrass support is fsl-image-auto-greengrass.
$ bitbake fsl-image-auto-greengrass
Insert the SD card in your linux host and perform the following commands.
$ sudo umount /dev/<device mmcblkp* or sdX*>
$ cd tmp/deploy/images/<machine>/
$ sudo dd if=<machine>-fsl-image-auto-greengrass.sdcard of=/dev/mmcblk0 bs=4M status=progress
$ sync
Insert the SD card in your target and power up.
Stop at U-Boot and change environment variables to use GMAC “eth0” as default ethernet adapter
$ setenv ethact eth_eqos
$ setenv pfeng_mode enable,none,none,rgmii
$ saveenv
$ reset
When booting for the first time, Greengrass daemon will fail because of missing certificates.
Use the following sections to get and install the certificates and to deploy the cloud configurations to the Greengrass core.
Use the following instructions from the AWS IoT Greengrass web page.
In “Configure AWS IoT Greengrass on AWS Iot” you downloaded one file in your host, hash-setup.tar.gz (for example, c6973960cc-setup.tar.gz). This compressed file contains the core device certificate and cryptographic keys that enable secure communications between AWS IoT Core and the config.json file that contains configuration information specific to your Greengrass core.
Place hash-setup.tar.gz in target rootfs.
Execute the following command from your Linux host to transfer the .tar.gz file to your target.
$ scp hash-setup.tar.gz root@<target_ip_address>:/
In your target, decompress the file in the /greengrass folder and download the Amazon Root CA 1 certificate.
Once that is done you can reboot.
$ tar -xzvf hash-setup.tar.gz -C /greengrass
$ cd /greengrass/certs/
$ wget -O root.ca.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
$ reboot
Now, with the correct certificates the Greengrass should start with no errors after reboot:
Follow the Deploy could configurations to a Greengrass code device instructions from step 2 and make sure that the S32G Greengrass core is connected to the internet.
If you created the Lambda function and used the “HelloWorld” example, follow
Verifiy the Lambda function is running on the core device
to test if it is running as expected.
If the instructions were followed correctly you should see an output like the following:
Congratulations.
If you got to this point, you have Greengrass Core running on the S32G.
The image built by Yocto supports tensorflow 1.13. To double check, execute the following the below command in the target:
$ python3 -c "import tensorflow as tf; print(tf.__version__)"
The image features libmxnet.so in the rootfs, but the next steps should be executed in the target to support it with Python.
$ cd /mxnet/python
$ python3 setup.py Install
To verify the version, execute the following:
$ python3.7 -c "import mxnet; print(mxnet.__version__)"
To add DLR support, execute the next commands in the target:
$ wget https://neo-ai-dlr-release.s3-us-west-2.amazonaws.com/v1.2.0/a1-aarch64-ubuntu18_04-glibc2_27-libstdcpp3_4/dlr-1.2.0-py2.py3-none-any.whl
$ pip3 install dlr-1.2.0-py2.py3-none-any.whl
After installing DLR, check its version with:
$ python3 -c "import dlr; print(dlr.__version__)"