Documente Academic
Documente Profesional
Documente Cultură
1.3 Specifications
This section consists of both overall and detailed technical specifications of the TS-7350.
• 4 12-bit ADC
• 6 Latched Outputs
• 7 Buffered Inputs
• 3 Digital Inputs/Outputs
• 1 Console COM Port (requires TS-9445 mini-peripheral for RS-232 levels)
• External Reset, Power, Ground, Frame and JTAG signals
The default FPGA load provides additional peripherals, such as SD Card socket and serial ports. A video core is
not included in the default load. In addition, the FPGA can be configured on the fly to either load a 16-bit PC/104
bus on the 64-pin PC/104 connector or use it as general purpose I/O lines.
The TS-7350 computers are extremely rugged and reliable. Temperature operation is fanless and range is indus-
trial standard at lower CPU speeds. Power consumption is approximately 2W (400mA @ 5VDC). Power input range
is flexible from 5VDC to 28VDC.
The TS-7350/TS-7370 provides multiple COM ports using both TTL (2 total) and RS-232 (5 total) levels. Two
optional RS-485 ports are available with DMX/RDM support. The EP9302 processor provides two COM ports (TTL
Console at the JTAG header and RS-232 at COM1 header). The remaining COM ports are provided by the FPGA
through the proprietary XUART core and are 9-bit serial capable. Please refer to the manual for further information.
2.1 Preliminary
There are several steps to take. This assumes you have a Debian based PC with internet connection.
1. Open the terminal (If you’re in a GNOME GUI environment, the location of the terminal is in Applications
→ Accessories → Terminal) and login as super user (root)
su
2. Download the required software for dealing with the JFS filesystem
apt−g e t i n s t a l l j f s u t i l s gparted
3. Make a directory for TS-7350 downloads and development files and then change into that directory
mkdir / TS7350
cd / TS7350
4. Use the dd command to copy the bitwise information from the 512mbsd-latest.dd to the SD Card. WARN-
ING: THIS WILL DESTROY ANY DATA ON THE SD CARD OR DEVICE! Make sure you
know which device the SD card is. Note: this step will take some time depending on the R/W speed of
the SD Card (approx. 15 to 20 minutes)
dd i f =512mbsd−l a t e s t . dd o f =/dev / sdb
5. Unmount the SD Card, remove it from the SD card reader, insert it again, unmount the automatically mounted
drives, and then check to make sure the filesystems are sanitary
umount / dev / sdb ∗
[ remove c a r d ]
[ i n s e r t card ]
umount / dev / sdb ∗ && j f s f s c k −v −f / dev / sdb4 && e 2 f s c k / dev / sdb3
6. This step is optional. Use parted to expand sdb4 to fit a larger capacity card. If you are using a 512MB card,
skip this step. Resize the filesystem on partition to start at start and end at end megabytes. Get the partition
start
p a r t e d r e s i z e / dev / sdb4 7 531
3. Replace the line that reads “fsck /dev/tssdcard4” with “jfs fsck /dev/tssdcard4”
4. The final file contents should look like this:
#!/ b i n / sh
# C o p y r i g h t ( c ) 2 0 0 7 , T e c h n o l o g i c Systems .
# All rights reserved .
#
# Roots t o SD f l a s h card , assumes p a r t i t i o n #3 ( / dev / s d c a r d 0 / d i s c 0 / p a r t 3 )
# s y m l i n k t o / l i n u x r c and run ” s a v e ” t o u s e
mount −t p r o c none / p r o c
mount −t s y s f s none / s y s
mount −t tmpfs none / dev
mdev −s
mkdir / dev / p t s / dev /shm
mount −t d e v p t s none / dev / p t s
mount −t tmpfs none / dev /shm
s e t c o n s o l e $CONSOLE
s t t y −F $CONSOLE o s p e e d 115200 > / dev / n u l l 2>&1
hostname t s 7 3 5 0
check−usb−update >/dev / n u l l 2>&1 </dev / n u l l &
(
peekpoke 16 0 x 6 0 0 f f 0 d 6 0 x3
insmod / t s s d c a r d . ko
mdev −s
i f [ −e / dev / t s s d c a r d a 4 −a −e /mnt/ r o o t / n o t r o o t f s ] ; then
mount −o r o / dev / t s s d c a r d a 4 /mnt/ r o o t
j f s f s c k / dev / t s s d c a r d a 4
mount −o remount , rw /mnt/ r o o t
fi
if [ −e /mnt/ r o o t / f a s t b o o t ] ; then
echo ”>> D i r e c t o r y ’ / f a s t b o o t ’ found . B o o t i n g t o i n i t r d i n s t e a d . . . ” > $CONSOLE
else
echo ”>> SD Card f a i l e d . B o o t i n g t o i n i t r d . . . ” > $CONSOLE
fi
(
i f c o n f i g l o 1 2 7 . 0 . 0 . 1 up
r o u t e add −n e t 1 2 7 . 0 . 0 . 0 netmask 2 5 5 . 0 . 0 . 0 l o
i f c o n f i g e t h 0 1 9 2 . 1 6 8 . 0 . 5 0 up
#r o u t e add d e f a u l t gateway 1 9 2 . 1 6 8 . 0 . 1 e t h 0
/ sbin / telnetd
insmod / t s 7 0 0 0 n a n d . ko
insmod / t s u a r t 1 . ko
insmod / t s u a r t 7 3 5 0 . ko
mdev −s
(
e x p o r t BOOTTIME=‘ eptime ‘
e x p o r t ENV=/ s h i n i t
e x e c / b i n / sh − i < $CONSOLE > $CONSOLE 2>&1
)
wait
k i l l a l l busybox t e l n e t d > / dev / n u l l 2>&1
echo ”>> B o o t i n g Linux . . . ” > $CONSOLE
cd /mnt/ r o o t
pivot root . ./ initrd
. / b i n /mount −n −−move . / i n i t r d / s y s . / s y s
. / b i n /mount −n −−move . / i n i t r d / p r o c . / p r o c
e x e c . / u s r / s b i n / c h r o o t . . / s b i n / i n i t < . $CONSOLE > . $CONSOLE 2>&1
else
cd /mnt/ r o o t
pivot root . ./ initrd
. / b i n /mount −n −−move . / i n i t r d / s y s . / s y s
. / b i n /mount −n −−move . / i n i t r d / p r o c . / p r o c
e x e c . / u s r / s b i n / c h r o o t . . / s b i n / i n i t < . $CONSOLE > . $CONSOLE 2>&1
fi
5. Exit vi, set the SBC to skip the fast boot (boot directly to Debian Linux which is about 15 seconds), and then
save all the changes.
rm l i n u x r c ; l n − s f / l i n u x r c −s d r o o t / l i n u x r c ; s a v e
• Next, in the file /etc/network/interfaces, comment out anything that isn’t eth0 and also assign DHCP to
eth0. The file should look like this:
# Used by i f u p ( 8 ) and i f d o w n ( 8 ) . See t h e i n t e r f a c e s ( 5 ) manpage o r
# / u s r / s h a r e / doc / ifupdown / examples f o r more i n f o r m a t i o n .
auto l o
i f a c e l o i n e t loopback
auto e t h 0
i f a c e e t h 0 i n e t dhcp
#i f a c e e t h 0 i n e t s t a t i c
# address 192.168.0.50
# network 1 9 2 . 1 6 8 . 0 . 0
# netmask 2 5 5 . 2 5 5 . 2 5 5 . 0
# broadcast 192.168.0.255
# gateway 1 9 2 . 1 6 8 . 0 . 1
#auto e t h 1
#i f a c e e t h 1 i n e t dhcp
#i f a c e e t h 1 i n e t s t a t i c
# address 192.168.1.50
# network 1 9 2 . 1 6 8 . 1 . 0
# netmask 2 5 5 . 2 5 5 . 2 5 5 . 0
# broadcast 192.168.1.255
• The final step will be to esentially release the static IP address that the SBC currently has on it, and then
force it to obtain an IP address via DHCP. Run the following command:
/ e t c / i n i t . d/ n e t w o r k i n g r e s t a r t
1. Make a directory to mount the USB drive to, find out which drive is your USB drive by using fdisk -l, and
then mount it to the created directory.
mkdir / media / u s b d r i v e
f d i s k −l
mount −t v f a t / dev / sdxx / media / u s b d r i v e
2. Moving files between the USB Flash drive to the SBC is easy using the cp command.
cp / media / u s b d r i v e /home/ d e s t i n a t i o n
# HCId o p t i o n s
options {
# A u t o m a t i c a l l y i n i t i a l i z e new d e v i c e s
a u t o i n i t yes ;
# S e c u r i t y Manager mode
# none − S e c u r i t y manager d i s a b l e d
# auto − Use l o c a l PIN f o r i n c o m i n g c o n n e c t i o n s
# u s e r − Always a s k u s e r f o r a PIN
#
s e c u r i t y auto ;
# P a i r i n g mode
# none − P a i r i n g d i s a b l e d
# m u l t i − Allow p a i r i n g with a l r e a d y p a i r e d d e v i c e s
# once − P a i r once and deny s u c c e s s i v e a t t e m p t s
pairing multi ;
# D e f a u l t PIN code f o r i n c o m i n g c o n n e c t i o n s
#p a s s k e y ” 1 2 3 4 ” ;
passkey ”0000”;
#auth d i s a b l e ;
#e n c r p y t d i s a b l e ;
# D e f a u l t s e t t i n g s f o r HCI d e v i c e s
device {
# L o c a l d e v i c e name
# %d − d e v i c e i d
# %h − h o s t name
name ”%h−%d ” ;
# Local device c l a s s
c l a s s 0 x3e0100 ;
# I n q u i r y and Page s c a n
i s c a n e n a b l e ; pscan e n a b l e ;
discovto 0;
# D e f a u l t l i n k mode
# none − no s p e c i f i c p o l i c y
# accept − always accept incoming c o n n e c t i o n s
# master − become master on i n c o m i n g c o n n e c t i o n s ,
# deny r o l e s w i t c h on o u t g o i n g c o n n e c t i o n s
lm a c c e p t ;
2. Edit the /etc/inittab file to look like the following (the most important line being 1:2345:respawn:/sbin/mingetty
--autologin root ttyAM0:
# / etc / inittab : i n i t (8) configuration .
# $ I d : i n i t t a b , v 1 . 9 1 2002/01/25 1 3 : 3 5 : 2 1 m i q u e l s Exp $
# The d e f a u l t r u n l e v e l .
id : 2 : i n i t d e f a u l t :
# Boot−time system c o n f i g u r a t i o n / i n i t i a l i z a t i o n s c r i p t .
# This i s run f i r s t e x c e p t when b o o t i n g i n emergency (−b ) mode .
s i : : s y s i n i t : / e t c / i n i t . d/ r c S
# What t o do i n s i n g l e −u s e r mode .
˜˜: S : wait : / sbin / s u l o g i n
l 0 : 0 : w a i t : / e t c / i n i t . d/ r c 0
l 1 : 1 : w a i t : / e t c / i n i t . d/ r c 1
l 2 : 2 : w a i t : / e t c / i n i t . d/ r c 2
l 3 : 3 : w a i t : / e t c / i n i t . d/ r c 3
l 4 : 4 : w a i t : / e t c / i n i t . d/ r c 4
l 5 : 5 : w a i t : / e t c / i n i t . d/ r c 5
l 6 : 6 : w a i t : / e t c / i n i t . d/ r c 6
# Normally not r e a c h e d , but f a l l t h r o u g h i n c a s e o f emergency .
z6 : 6 : respawn : / s b i n / s u l o g i n
# A c t i o n on s p e c i a l k e y p r e s s (ALT−UpArrow ) .
#kb : : k b r e q u e s t : / b i n / echo ” Keyboard Request−−e d i t / e t c / i n i t t a b t o l e t t h i s work . ”
3. The next step is to add the cell phone control script and set it to boot on startup. You’ll need to transfer the
file by some means to the SBC (i.e. USB Drive). After the script is saved to a location on the SBC, add the
script to the boot-up file. Do this by adding the following line to the /root/.bash profile file:
python / l o c a t i o n / o f / c o n t r o l s c r i p t . py
2. Moving files between the USB Flash drive to the SBC is easy using the cp command.
cp / media / u s b d r i v e /home/ d e s t i n a t i o n
• h - left
• l - right
• k - up
• i - insert
• http://ted.openavr.org/Lenny-on-ts7390