# WYSE T50 Thin Client Install from Scratch

**URL:** <https://forum.inductiveautomation.com/t/wyse-t50-thin-client-install-from-scratch/8370>\
**Category:** Ignition\
**Created:** [April 25, 2014, 6:06pm UTC](https://forum.inductiveautomation.com/t/wyse-t50-thin-client-install-from-scratch/8370 "2014-04-25T18:06:27Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![framebuilder](https://avatars.discourse-cdn.com/v4/letter/f/96bed5/32.png) [@framebuilder](https://forum.inductiveautomation.com/u/framebuilder)\
**Post date:** [April 25, 2014, 6:06pm UTC](https://forum.inductiveautomation.com/t/wyse-t50-thin-client-install-from-scratch/8370/1 "2014-04-25T18:06:27Z")

</div>

Hi Everyone. I would like to contribute by sharing my experiences on our quest to find a cheap thin client that can be maintained by anyone without technical abilities. Here is a setup that’s working well for us, has Wifi, and costs about $260. It runs an old version of Ubuntu and CPU Usage is less than 10% when using Oracle’s embedded Java JRE for ARM processors. It’s about 40% when using Open JDK 1.6 for ARM. Memory is plentiful.

We are an end user of Ignition in the Automotive industry and I work in the IT Department so it was important to have a device that could be stocked brand new on the shelf, and have a Maintenance guy grab a USB drive, plug it in, and have it deployed in less than 5 minutes. I imagine this would scale very well for Integrators because they could give their clients USB drives for each project.

If you choose to install the Free WYSE Device Manager on a server (instructions below), you can manage 750 of these devices centrally…for Free. It’s easy to see when devices have been replaced, amongst many other tools.

I apologize if this should be in another Topic Group. Please move it if need be.

I am not a Linux expert so some of these commands may be overkill or un-needed or executed incorrectly.

Wyse T50 Setup (1 GHz ARM CPU, 1GB RAM, 1GB Flash)  
[attachment=0]t50.jpg[/attachment]

Based on 1.037 Firmware Enhanced Ubuntu (can be downloaded from Dell/WYSE’s website). Should be identical to previous versions.

Power it up

Login  
-username: admin  
-password: admin

System Settings-\>Date & Time

- NTP server: Add your NTP server, Remove others
- Chicago Timezone

System Settings-\>User Administration

- Change Admin password
- Autologin Admin, 0 delay
- Change SSH root password, Allow ssh root login

System Settings-\>VNC Server

- Set password

System Settings -\>Screensaver

- Disable Screensaver and Power Management

Get rid of packages so the image will fit on flashfs partition when finished. Install ftp and Microsoft TTF fonts

```auto
apt-get purge chromium-*
apt-get purge ica
apt-get purge vmware-viewclient
apt-get purge marvell-flashplayer
apt-get purge ericom-powerterm
apt-get purge ghostscript
cd /etc/apt
cp sources.list sources.list.bkup
cp sources.list.orig sources.list
apt-get update
apt-get install ftp
apt-get install msttcorefonts
cp sources.list.bkup sources.list
apt-get update
apt-get autoclean
apt-get clean
```

Verify /dev/sda3 has 266M available by using df -h

Allow client to send hostname to DHCP Server so it updates DNS

```auto
cd /etc/dhcp
vi dhclient.conf
```

Change the 2nd line to:

```auto
send host-name "<hostname>";
```

Make backup of sshd\_config because it sometimes gets corrupted when you boot the device and try to enter BIOS incorrectly

```auto
/etc/ssh
cp sshd_config sshd_config.bkup
```

Install Native Client Launcher

```auto
cd /
mkdir ignition_clientlauncher
chown admin ignition_clientlauncher/
cd ignition_clientlauncher/
ftp servername
(bi, hash, get clientlauncher.tar.gz, bye)
tar -xzvf clientlauncher.tar.gz
chown admin clientlauncher.sh
mkdir clientlauncher-data
chown admin clientlauncher-data/
cd clientlauncher-data/
ftp servername
(bi, hash, get launch.xml, bye)
chown admin launch.xml
```

Install Embedded Oracle Java 1.7u55 optimized for ARM processors  
[oracle.com/technetwork/java/ … teId=otncn](http://www.oracle.com/technetwork/java/embedded/downloads/javase/index.html?ssSourceSiteId=otncn)  
ejre-7u55-fcs-b13-linux-arm-vfp-sflt-client\_headful-17\_mar\_2014.gz

```auto
mkdir -p -v /opt/java
cd /opt/java/
ftp servername
(bi, hash, get ejre-7u55-fcs-b13-linux-arm-vfp-sflt-client_headful-17_mar_2014.gz, bye)
tar -xzvf ejre-7u55-fcs-b13-linux-arm-vfp-sflt-client_headful-17_mar_2014.gz
rm ejre-7u55-fcs-b13-linux-arm-vfp-sflt-client_headful-17_mar_2014.gz
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/java/ejre1.7.0_55/bin/java" 1
sudo update-alternatives --set java /opt/java/ejre1.7.0_55/bin/java
cd /etc/profile
cd /etc
vi profile
```

Add the following right above umask 022

```auto
JAVA_HOME=/opt/java/ejre1.7.0_55/bin/java
PATH=$PATH:$JAVA_HOME
export JAVA_HOME
```

Reboot  
verify Java installed with ‘java -version’  
java version “1.7.0\_55”  
Java™ SE Embedded Runtime Environment (build 1.7.0\_55-b13)  
Java HotSpot™ Embedded Client VM (build 24.55-b03, mixed mode)

```auto
cd /ignition_clientlauncher
./clientlauncher.sh
```

Choose a Project, Create Shortcut  
Close Project

```auto
cp ProductLogo_48x48.png /etc/addons.d/CUSTOM/gui/
```

Change Desktop icon for future use

```auto
vi /etc/addons.d/CUSTOM/desktop
```

Change the line that starts with Icon=

```auto
Icon=/etc/addons.d/CUSTOM/gui/ProductLogo_48x48.png
```

Enter Edit Mode (bottom right corner of desktop)  
Add Item  
Custom  
Type a Description  
Command = “/ignition\_clientlauncher/clientlauncher.sh” scope=C project=projectname gateway.addr=1.1.1.1:8088:8043 windowmode=fullscreen  
Auto Connect  
Delete (click red x) on Shortcut that was created by running clientlauncher manually in previous step

Add Item  
Custom  
Description = Launch Terminal  
Command = xfce4-terminal  
Auto Connect

Exit Edit Mode

```auto
cd /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/
cp xfce4-session.xml xfce4-session.xml.bkup
vi xfce4-session.xml
```

Remove the following lines to disable the Menu Bar at the top of the screen. This is required because full screen doesn’t actually cover it

```auto
<property name="Client1_Command" type="array">
 <value type="string" value="xfce4-panel"/>
</property>
<property name="Client1_PerScreen" type="bool" value="false"/>
```

```auto
cp xfce4-session.xml xfce4-session.xml.nobar
```

```auto
cd /etc/Wireless/RT2860STA
vi RT2860STA.dat
```

Change the following lines to enable auto roaming (in case APs go down for maintenance, or interference is high, so it can roam to next one available automatically)

```auto
AutoRoaming=1
RoamThreshold=80
```

```auto
cd /usr/sbin/
vi setVncOptions
```

Change the two lines by adding -repeat like shown below. This allows key repeats when connected via VNC

```auto
setsid /usr/bin/x11vnc -nomodtweak -repeat -rc /etc/x11vncrc --forever &> ${VNCSTARTLOG} &
setsid /usr/bin/x11vnc -nomodtweak -repeat -rc /etc/x11vncrc --forever &> ${VNCSTARTLOG} &
```

Click Network icon on Desktop to setup Wireless  
Connection Name: Your SSID  
Wireless Security: WPA & WPA2 Enterprise  
Authentication: PEAP  
Anonymous identity:   
PEAP version: Version 0  
Inner authentication: MSCHAPv2  
Username:  
Password:

Ignore Certificate Warning (don’t ask Again)

System Settings-\>Network Connections  
Verify Connect automatically and Available to all users is checked

Shutdown  
Hold Del while pressing and holding power button until BIOS password pops up  
Fireport is the password  
Power Management  
-Power States = Always On  
This will make unit boot up automatically after losing power when it gets restored

Install WYSE Device Manager (WDM 4.9.1 Workgroup) on a server. It’s free up to 750 devices and can be downloaded from Dell/WSYE’s website

Create DNS Service Location SRV Record on your Microsoft DNS server. This will allow the WYSE clients to automatically register with WDM  
Open DNS Management Console  
Right click on the Domain, Other New Records, Resource Record Type  
Choose Service Location (SRV)  
Create Record  
Service - \_WDMServer  
Protocol - \_tcp  
Port Number - 80  
Host offering this service - FQDN of WDM server

After getting everything perfect, you can create an Image on a USB flash disk that can be used to configure brand new units off the shelf. It even gets the BIOS settings with Always-On power.  
Download WYSE USB Firmware Tool 1.20.0.1 from Dell/WYSE’s website  
Insert a blank USB drive  
Select Configure the USB key to Copy/Pull  
Select Linux Ubuntu (T50)  
Copy or Pull Firmware  
Choose your USB drive letter and hit Next  
When finished, power down WYSE Device, plug in USB drive, Hold P key on keyboard while turning on and holding power button until you see BIOS popup  
Fireport is the password  
Choose USB and hit enter  
Answer y when asked if you want to Proceed with Pull Operation  
This takes about an hour so just let it go. It’s compressing everything bit by bit.

Now you have a full image of the Device on a USB drive that can be used on any other T50 directly from the factory.  
To use it, power down the device, plug in USB drive, Hold P key on keyboard while turning on and holding power button until you see BIOS popup  
Fireport is the password  
Choose USB and hit enter  
Answer y when asked to Proceed with Push operation

In about 4 minutes, your device will reboot and be ready for use!!!

If you need to connect to it remotely, you can use SSH or VNC  
Because the Project will take up the entire screen, you will need to hit Alt-downArrow to choose the Launch Terminal if you want to kill any processes or do maintenance  
If you need access to the System Settings and stuff, cp xfce4-session.xml.bkup xfce4-session.xml and reboot. Copy back the xfce4-session.xml.nobar to cp xfce4-session.xml when finished with changes and reboot again.

One thing to note is the .ignition directory gets deleted when rebooted. This is good if it gets corrupted but slows down the boot up time because there’s never any cache available on boot. Our projects on T50’s take about 2 minutes to boot.

\*\*If you guys are interested, I’ll compile my notes for the Linux based WYSE D50D and the Raspberry Pi

---

<div class="post-metadata">

**Author:** ![Watermark\_JS](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/watermark_js/32/32342_2.png) [@Watermark\_JS](https://forum.inductiveautomation.com/u/Watermark_JS)\
**Post date:** [April 25, 2014, 6:29pm UTC](https://forum.inductiveautomation.com/t/wyse-t50-thin-client-install-from-scratch/8370/2 "2014-04-25T18:29:30Z")

</div>

Very cool – thanks for the detail! I’ve been looking for something like this, but haven’t felt comfortable diving into the Linux stuff.

![:thumb_left:](https://us1.discourse-cdn.com/inductiveautomation/original/1X/e26afb081ddde6df016df6ee49159cf56aaca688.gif ":thumb\_left:")

---

<div class="post-metadata">

**Author:** ![mad2ogs](https://avatars.discourse-cdn.com/v4/letter/m/fbc32d/32.png) [@mad2ogs](https://forum.inductiveautomation.com/u/mad2ogs)\
**Post date:** [November 16, 2017, 12:09pm UTC](https://forum.inductiveautomation.com/t/wyse-t50-thin-client-install-from-scratch/8370/3 "2017-11-16T12:09:16Z")

</div>

Great stuff I know this post is a bit old, but I’ve been messing with these T50 now. And I wondering how you decided which packages to get rid off. (chromium, ica, etc). Did you get this list from dell/wyse or made it up yourself.

In other words, I need to create a usb flash image and I want to clean it (just like you did). I’m just not sure which packages are safe to purge.

Thanks,  
Thiago Morais
