Moving Your Application on the Raspberry Pi to the UC-8100-LX Computer. 1 Background Requirement Overview System Environment...

Similar documents
Getting Started with the Google Cloud SDK on ThingsPro 2.0 to Publish Modbus Data and Subscribe to Cloud Services

Embedded Linux. A Tour inside ARM's Kernel

How to Use ThingsPro Gateway to Publish Processed Edge Data to the AWS IoT Cloud. 1 Background Requirements Overview...

Proview on Raspberry PI

The distcc Utility for Remote Compiling

Connecting the iologik 2000 to a SolarWinds NPM

How to Build an IoT Application with Moxa's ThingsPro and AWS IoT Service

Lab2 - Bootloader. Conventions. Department of Computer Science and Information Engineering National Taiwan University

How to Upload Device Data to a Remote Database Using the Log Upload Function

DEVELOPMENT GUIDE VAB-630. Linux BSP v

Linux PPPd for LTE CAT M1 Verizon Skywire on Raspberry Pi 3

Tizen.IoTivity.Init. Tizen IoTivity 를시작하기위한환경설정. Geunsun Lee

Mesos on ARM. Feng Li( 李枫 ),

Computer Network Term Project. Chong-kwon Kim 2018

Isar. Build Debian-Based Products with BitBake. Baurzhan Ismagulov. Embedded Linux Conference Europe Oct 11-13, 2016 Berlin, Germany

Die Brummbeere Documentation

Configuring Linux pppd for a Skywire Global LTE CAT-M1 NL-SW-LTE-QBG96

RPi General Purpose IO (GPIO) Pins

Building Debian-Based Products: Experiences in Collaboration

How to Build a Real-Time IIoT Application with Moxa's ThingsPro and Cirrus Link's Sparkplug

MemGuard on Raspberry Pi 3

Installation guide. Step1. Install the OS for Raspberry Pi 3. Go to to download Raspbian to the PC.

Embedded Linux With Raspberry Pi IOT

1. Install a Virtual Machine Download Ubuntu Create a New Virtual Machine Seamless Operation between Windows an Linux...

Making Open Source Hardware for Retrogaming on Raspberry Pi. Leon Anavi Konsulko Group

How to Upgrade or Recover the Firmware of the UC-7400 Series Embedded Computers

Embedded Systems Programming

Configuring Linux pppd for a Skywire 4G LTE CAT3 Verizon

RaspiDigiHamClock. Raspberry Pi Amateur Radio Digital Clock. v WA4EFH R.Grokett

DEVELOPMENT GUIDE VAB-630. Android BSP v

Getting started with the RAK 831 Lora Gateway and RPi3 V1.0 Shenzhen Rakwireless Technology Co., Ltd Rak

Replacing the AB 1761-NET-ENI with the MGate EIP3000 to perform an EIP-to-DF1 conversion

Adafruit's Raspberry Pi Lesson 6. Using SSH

Lesson 7 Programming Embedded Galileo, Raspberry Pi, BeagleBone and mbed Platforms

Functions (API) Setup Functions

RETROPIE INSTALLATION GUIDE

BLiSo - Buttons, Lights, Sound

MAKEVMP " 320 x 480 TOUCHSCREEN FOR RASPBERRY PI (ILI9341) USER MANUAL

Interfacing with Raspberry Pi 3 Model B Updated: 9/19/17

RASPBERRY PI EXAMPLES WITH CLICK BOARDS

Topics. What is a RaspberryPi? Why should I want one? What is Raspbian? What is SSH? What is FTP? What is LAMP? Making a LAMP Stack!

Adafruit's Raspberry Pi Lesson 1. Preparing an SD Card for your Raspberry Pi

Linux PPPd for LTE CAT M1 Verizon Skywire on Beaglebone Black. NimbeLink Corp Updated: July 2018

Presented By: Gregory M. Kurtzer HPC Systems Architect Lawrence Berkeley National Laboratory CONTAINERS IN HPC WITH SINGULARITY

ToF T1 User Guide. a module solution provider. Date: 2017/02/13. Hardware Test Supervisor. Software Test Engineer. Center Supervisor Rex

Zephyr Kernel Installation & Setup Manual

Linux. For BCT RE2G2. User Guide. Document Reference: BCTRE2G2 Linux User Guide. Document Issue: Associated SDK release: 1.

Raspberry Pi Class Ed 299. Mike Davis Truman College 5/26/2015

Java Programming on the Raspberry Pi with Pi4J. Rob Ratcliff

Embedded M2M Software Testing

Manual to install experimental firmware on a TYTERA MD380

ThingsPro Version 2 User s Manual

How to Use the TIA Portal to Set a Siemens PLC and the MGate 5103

Here's how the 4 channel receiver attaches to a Raspberry Pi B+, A+ or Pi 2.

TOUCH PANEL PC 10.1 USER GUIDE

Rover Documentation Tracing with Perf, Conversion to CTF, and analysis with TraceCompass

L.I.S.A Linux Client Documentation

1 Application Description System Topology Hardware and Software Requirements About KingSCADA

Interrupt response times on Arduino and Raspberry Pi. Tomaž Šolc

User Manual. DVK512 Expansion Board For Raspberry Pi

Sigma Tile Workshop Guide. This guide describes the initial configuration steps to get started with the Sigma Tile.

Idea6410 Ubuntu User Manual V 0.19

GUT. GUT Installation Guide

Cubieboard4 Linux Sdk Guide TF BOOT & TF WRITE EMMC. Website: Support:

FX SERIES. Programmer s Guide. Embedded SDK. MN000540A01 Rev. A

High Voltage Module Raspberry Pi Documentation Page 1

MRCP. Installation Manual. Developer Guide. Powered by Universal Speech Solutions LLC

Raspberry Pi Kernel Install. By: Daniel Rizko

Advanced Embedded Systems

GUT. GUT Installation Guide

Using the BMP085/180 with Raspberry Pi or Beaglebone Black

Using a RESTful API to Connect to Remote I/Os

Ultrasonic Sensor System on Linux OS using Bluetooth Communication

Configuring the Raspberry Pi for the UPS

Contents. Crave Masternode Setup Guides. Single / Multiple Local Masternode(s) Single Masternode using a VPS. Multiple Masternodes using a VPS

The Digital Revolution

Install your scientific software stack easily with Spack

Git Command Line Tool Is Not Installed

F28HS Hardware-Software Interface: Systems Programming

Experiments 1 How to set up Raspberry Pi B+ The little computer you can cook into DIY tech projects

IoT WITH THE RASPBERRY-PI3

IoT.js. Next generation web for connected things. Samsung Electronics Software Center Piotr Marcinkiewicz 2017

An open-source, multi-parameter, full fledged human body vital sign monitoring HAT for Raspberry Pi as well as standalone use.

swiftenv Documentation

Raspberry Pi NTP Clock Setup Guide

Lesson6_7segments digital LED score board

Copyright 2017 Samsung. All Rights Reserved. O-Hoon Kwon, Ph.D. Samsung Electronics

SFO17-315: OpenDataPlane Testing in Travis. Dmitry Eremin-Solenikov, Cavium Maxim Uvarov, Linaro

1. System Topology Required Equipment and Components PcVue SCADA Modbus Slave MGate 5109 Setting...

NEC Large-Screen Pxx4 and Vxx4 Displays Raspberry Pi Compute Module Setup Guide. Revision:

The Broadband Ham Net community has had a need for a stand alone time server for their meshes. This document will attempt to fill in this need.

Getting Started Guide XC9010 Raspberry Pi Starter Kit

OnRISC. IoT Manual. Vision Systems GmbH. Edition: October 2017

Deby - Reproducible and Maintainable Embedded Linux Environment with Poky

Pmod ESP32 Reference Manual

Embedded Linux development made easier. User s manual. Version:

Vantron VT-M2M-TC-VM ThingWorx Setup Guide

1. System Topology Required Equipment and Components Hardware Equipment Software Equipment... 6

ThingsPro Software Suite Version 2 User s Manual

LiFePO4wered/Pi product brief

Transcription:

Moving Your Application on the Raspberry Pi to the UC-8100-LX Computer Contents Jimmy Chen ( 陳永達 ) Field Application Engineer jimmy.chen@moxa.com 1 Background... 2 2 Requirement... 2 3 Overview... 2 4 System Environment... 3 4.1 Authentication... 3 5 Toolchains... 3 5.1 Native-Compiler Toolchain... 3 5.2 Cross-Compiler Toolchain and Environment Settings... 3 5.3 Cross-Compiler Toolchain Compatibility... 5 6 Peripheral Device Programming... 6 6.1 Serial Devices... 6 6.2 LEDs... 7 7 Additional Reading... 7 Copyright 2017 Moxa Inc. Released on January 12, 2017 About Moxa Moxa is a leading manufacturer of industrial networking, computing, and automation solutions. With over 25 years of industry experience, Moxa has connected more than 30 million devices worldwide and has a distribution and service network that reaches customers in more than 70 countries. Moxa delivers lasting business value by empowering industry with reliable networks and sincere service for automation systems. Information about Moxa s solutions is available at www.moxa.com. You may also contact Moxa by email at info@moxa.com. How to Contact Moxa Tel: +886-2-8919-1230 Fax: +886-2-8919-1231

1 Background The purpose of this document is to help you migrate your application from the Raspberry Pi to Moxa s UC-8100-LX computer so that you can easily move your application from a prototype to mass production and deployment. We highlight some key differences between the Raspberry Pi and Moxa s UC-8100-LX, including cross-compiler toolchain, peripherals, and system information. 2 Requirement UC-8100-LX/ UC-8100-LX-ME Raspberry Pi 3 Model B Starter Pack (including 8 GB MicroSD card) 3 Overview Figure 1 The UC 8100-LX computer comes preinstalled with the Debian Linux distribution, which allows you to share an environment similar to the Raspberry Pi with Raspbian firmware installed. We highlight a couple of differences between the two platforms to help you migrate your application from the Raspberry Pi to the UC-8100-LX platform based on the following: System environment Compiler toolchain Peripheral device programming Copyright 2017 Moxa Inc. Page 2 of 7

4 System Environment 4.1 Authentication The default username/password on the Raspberry Pi is pi/raspberry, while the UC-8100-LX uses moxa/moxa. On the Raspberry Pi, no authentication is required when you switch from the user pi to the root account. On the contrary, UC-8100-LX requires root account password authentication (which is moxa) when you use the #sudo su command. 5 Toolchains Toolchains are utilities that are used to compile source code into executable programs in Linux. In the Linux ARM architectural environment, developers may develop their own programs with native compilers and cross compilers. Native compilers create executables that run only on the same machine/localhost, while cross compilers build programs that work on other machines. 5.1 Native-Compiler Toolchain The UC-8100-LX comes pre-installed with the Debian distribution of Linux. Like the Raspberry Pi, UC-8100-LX also supports native compilation. To install a native compiler on the Linux ARM platform, you just need to run the following command: apt-get install build-essential 5.2 Cross-Compiler Toolchain and Environment Settings Many users prefer to build ARM environments on x86/x86-64 machines. To be able to do this, they need to install the cross-compiler toolchain. The UC-8100-LX and Raspberry Pi have different naming conventions for the cross-compiler toolchain, but their binaries are compatible. The cross-compiler toolchain for Raspberry Pi can be downloaded from the GitHub server using the Git tool to clone the source files (see Figure 2). For the UC-8100-LX, you can download the toolchain from the Moxa website. Copyright 2017 Moxa Inc. Page 3 of 7

Figure 2 The installation consists of using a shell script to extract the toolchain into the /usr/local directory. Once the installation is complete, you need to setup the PATH environment variable for your user account. The naming convention for the PATH variable is different in the two hardware platforms. On the Raspberry Pi, the PATH environment variable is set to /tools/arm-bmc2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin and on the UC-8100-LX, it is set to /usr/local/arm-linux-gnueabihf-4.7-20130415/bin. Figure 3 Copyright 2017 Moxa Inc. Page 4 of 7

5.3 Cross-Compiler Toolchain Compatibility Both the UC-8100-LX and Raspberry Pi platforms share the same cross-compiler binary architecture, which means, the binaries that you run on the Raspberry Pi can be migrated to UC-8100-LX without recompiling the source code. Figure 4 Figure 5 However, if your source code on the Raspberry Pi includes access calls to peripherals, you need to change the device file names and system APIs to be able to use the source code on the UC-8100-LX. Copyright 2017 Moxa Inc. Page 5 of 7

6 Peripheral Device Programming In this section, we discuss the key peripherals and the difference in accessing them in the two platforms. 6.1 Serial Devices Raspberry Pi 3 provides 2 UART interfaces that the developers can implement. If you use the latest version of RASPBIAN firmware, these interfaces show up as /dev/serial0 and /dev/serial1. On the UC-8100-LX, the device node interfaces are /dev/ttymi0 and /dev/ttymi1. Note that the UC-8100-LX has a 3-in-1 interface for each serial interface. You can use the setinterface command to set the RS323, RS422, and RS485 mode for each serial interface as shown in Figure 6. Figure 6 Copyright 2017 Moxa Inc. Page 6 of 7

6.2 LEDs On Raspberry Pi 3, you can either install the wiringpi (gpio example) or a Python example code to turn the LEDs on/off. Controlling the UC-8100-LX LEDs is much easier. By default, all signal LEDs on the UC-8100-LX are controlled by the chk_signal script. This program mainly reads the signal from cellular/wi-fi modules and changes the LED status according to the signal strength. Before you run the chk_signal script, you must stop the script using the #killall -9 chk_signal command to ensure that the process is not running. The LEDs are controlled by using the echo command and the values 0, 1. The value 1 turns the LED on, while 0 turns the LED off. The LED control file is locate at /sys/class/leds/uc-8100me:cel[x]/brightness where [X] is the location of the LEDs with the options 1, 2, and 3. See the example in Figure 7 for information on turning the LEDs on: Figure 7 7 Additional Reading https://www.raspberrypi.org/downloads/ https://www.raspberrypi.org/documentation/linux/kernel/building.md http://www.moxa.com/product/uc-8100.htm Copyright 2017 Moxa Inc. Page 7 of 7