This guide will walk you through the basic steps of getting your TS-TPC-8390-4900 touch panel computer (TPC) up and running. It’s mostly an extrapolation from the official TS-TPC-8390-4900 Manual, but provides a more practical approach in setting up common connections, networking, and environments to begin development. We’ll assume you’ve already gone through the excitement of unboxing, and we’ll pick up from there.
Let’s get our TS-TPC-8390-4900 hooked up! This includes our very basic connections we’ll need for most any development or project: power, serial console, Ethernet, and optionally a keyboard and mouse.
Nothing beats a good ‘ol serial console for direct access to an embedded system. Where others like telnet and SSH might fail due to bad startup scripts or network snafus, a direct serial console connection will always be there to bail you out. For this, you’ll need a NULL modem cable, a DB9 Serial to USB adapter, and a 10-pin header to DB9 adapter. Technologic Systems has both the NULL modem cable (CB7-05) and 10-pin to DB9 adapter (RC-DB9) available for sale, as you probably seen when ordering your TS-TPC-8390-4900, but they do not sell a serial to USB adapter. You can get them from many places, and, having learned from experience, it seems that the ones with the Prolific PL2303 chipset are easiest and most compatible, like this one from Amazon.com. If you go this route, you’ll want to be sure to download and install the Prolific PL2303 drivers here (if you’re on a Linux machine you shouldn’t have to install any drivers, as they come preloaded in the Linux kernel). If you need a NULL modem cable or 10-pin header to DB9 adapter, they have them available on Amazon.com, like this NULL modem cable and this DB9 adapter.
Connect one end of the NULL modem cable to the DB9 adapter, and then the other end into the USB adapter, as shown in the picture above. The next step is to connect the 10-pin connector to the 10-pin header of the TPC. The trick here is to make sure the red wire matches up with the white dot on COM1 header, as shown in the picture below.
Then, after installing the Prolific PL2303 drivers on your computer (restart may be required), plug the serial to USB adapter into your computer and follow the instructions given in the “Get a Console” section of the TS-TPC-8390-4900 manual. Since I’m developing from a Mac OSX machine, I’ll be using minicom. Linux users can also use minicom. Windows users will reach for PuTTY. At any rate, after setting up your console and applying power, which we’ll talk about next, you’ll see something similar to the screenshot below (Mac OSX Terminal running minicom):
minicom alone will constrain the terminal row and column count to something pretty small that will never take up the whole terminal window. To take advantage of all the real estate your terminal window has to offer, run
TERM=linux minicom instead. Remember to setup an alias as a shortcut for yourself!
The TS-TPC-8390-4900 can be powered using a 5 – 28 VDC power supply. The TS-4900 core requires only 5 VDC, but you’ll need to do some figuring based on your power needs (dual vs quad core, powering peripherals, driving I/O, etc.). Technologic Systems’ engineers have found that 8 VDC is about the minimum for the TS-TPC-8390-4900 combo, otherwise, you’ll find yourself in a brown out situation. We’re going to use the 12 VDC power supply as purchased from Technologic Systems (PS-12VDC-REG-2P3). Looking at the back of the board, you’ll notice a black connector already plugged in (pictured in the photo below, sitting on top of the speaker). We don’t need this, so we’ll remove it and plug in our blue connector. You’ll see status LEDs start blinking and the LCD screen will display a terminal shell. If you have your console setup properly, you should see the bootup process like in the picture above.
If you’re really chomping at the bit and excited to see something at this point, then from your serial console, login using username ‘root’, no password, and type in the following command:
export DISPLAY=:0; Qt5_CinematicExperience
You’ll get to see the built-in Qt5 cinematic demo which shows off the capabilities of the i.MX6 processor nicely!
Naturally, we’ll want to be able to connect this to the network so we can get it to talk with the local network or Internet, or even accessing the board via SSH or booting to an NFS filesystem. There are two Ethernet ports on the TS-TPC-8390-4900, eth0 and eth1. We’ll be using eth0, which is the one closest to the headphone jack. So, plug in a standard Ethernet cable connected to your router, and we should be good to proceed to the next steps!
Pro Tip: If you’d like to see all of the network interfaces, simply execute the command
ifconfig -a to see all available interfaces, and
ifconfig to see all enabled interfaces.
USB Keyboard and Mouse
There are two standard USB ports on the TS-TPC-8390-4900. As you’d suspect, you can plugin a keyboard and mouse if you’d like. Just plug and play!
For this section, we’ll mostly be taking instructions right from the “Yocto Networking” section of the TS-TPC-8390-4900 manual. We’ll need to 1.) create the /etc/systemd/network/eth.network file and 2.) populate it with our configuration settings. You may want to continue in the manual to setup wireless networking if you purchased the TS-4900 with WiFi/Bluetooth module or have a USB WiFi dongle you want to use. For now, we’re just going to look at using a hardwired connection. We’ll want to setup our connection to use a static IP address, since this is most common in server applications among other things. First, we’ll create the file using the command
touch /etc/systemd/network/eth.network. Second, we’ll edit the /etc/systemd/network/eth.network file to read like the following. Make sure to modify it to fit your specific network settings.
[Match] Name=eth0 [Network] Address=192.168.1.120/24 Gateway=192.168.1.1 DNS=192.168.1.1
Then, we’ll be enabling the eth0 connection by issuing the command ifconfig eth0 up. At this point, if all went well, you should be able to ping yoctoproject.org and get a response.
root@ts-imx6:~# ping yoctoproject.org -c4 PING yoctoproject.org (126.96.36.199) 56(84) bytes of data. 64 bytes from yocto-www.yoctoproject.org (188.8.131.52): icmp_seq=1 ttl=51 time=6s 64 bytes from yocto-www.yoctoproject.org (184.108.40.206): icmp_seq=2 ttl=51 time=6s 64 bytes from yocto-www.yoctoproject.org (220.127.116.11): icmp_seq=3 ttl=51 time=6s 64 bytes from yocto-www.yoctoproject.org (18.104.22.168): icmp_seq=4 ttl=51 time=7s --- yoctoproject.org ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 65.239/67.740/72.261/2.799 ms
Pro Tip: If you’d like to use SSH after setting up your network connection, you’ll need to set a password. Run
passwd to create a password followed by
dpkg-reconfigure openssh-server. Also, refer to the “Setting up SSH” section of the TS-TPC-8390-4900 manual.
The TS-TPC-8390-4900 can be easily configured to run in a kiosk mode. Simple edit the file /usr/bin/mini-x-session and replace this line:
with this (or, with the program of your choosing, like a Qt app):
google-chrome --kiosk https://www.embeddedarm.com &
Now, reboot using
shutdown -r now and you’ll find yourself looking at the embeddedarm.com website. Of course, replace with your own website or even point it to localhost where you can run a simple HMI application via web, and you’ll be up and running in no time!
Pro Tip: Qt is a much more lightweight alternative to running in a chromium environment (aka Google Chrome), and there’s already been some leg work done by Technologic Systems’ engineers to get fullscreen webkit demo in Qt. You can find the source code in the official GIT repository here, and instructions for getting Qt working in the “Configuring QT Creator IDE” section of the TS-TPC-8390-4900 manual. For more advanced HMI/SCADA applications, you’ll want to look at using Qt Creator or Qt Quick for development rather than HTML for performance reasons.
In this guide, we learned about common steps in setting up our TS-TPC-8390-4900 in order to easily begin development out of the box, from connections to networking. You should now be well on your way to begin development on your application.
If you’re looking at developing something with a GUI interface, take a look at the Getting Started with Qt Creator on the TS-TPC-8390-4900 or TS-TPC-7990 guide!
Is there anything else you’d like to see added to this practical getting started guide for the TS-TPC-8390-4900?
- Practical Guide to Getting Started with the TS-7250-V2
- What I Wish I’d Known When I Was an Embedded Linux Newbie
- Creating a Human-Machine Interface (HMI) Web Application
- Getting Current Voltage Input (VIN) on TS-7670 or TS-7400-V2
- Getting Started with Qt Creator on the TS-TPC-8390-4900 or TS-TPC-7990