The Mobile Minute 188

by nino 9. April 2010 05:15

T.G.I.F.  - have a great weekend, folks!

Windows Phone

Mobility

Mobile Platforms/Applications

  • iPhone OS 4.0- Here’s the scoop from Engadget. Yes, Virginia, it supports multitasking.

Community

Tags: , , ,

Mobility

My laptop transmogrifies into a hair dryer and other Vista installation tales

by Nino 9. November 2008 04:42

After I rolled off of my last project, I decided that it was time to flatten my laptop and start anew as it was getting a bit crufty (and, if for no other reason, to rid me of the evil known as ClearCase). I decided (as evidenced by the title of this post) to go with Vista [Enterprise] instead of another WinXP install. So, I made the usual preparations and then updated the BIOS (required for running Vista on this model) and set the boot device to the optical drive.

I then put in the DVD, rebooted and subsequently reformatted the drive, exorcising the demons from my laptop (or so I thought).  After installing the OS and OS components (e.g. IIS, MSMQ, etc), I disabled UAC.  I did so because some applications (Exhibit A: Windows Mobile 5.0 SDK) will silently fail otherwise.  The next thing I did was join the laptop to the corporate domain via VPN. After a few failed attempts and subsequent research, I discovered that I needed to make the registry edits described in this KB article for RPC.  That done, I started down my list (yes, I maintain an ordered list (I have OCD, what did you expect?!?)) of items to install which numbers around 100 entries. This includes applications, utilities, SDKs, service packs, and patches.

..fast-forward several hours...   My installations complete, I re-enabled UAC and then logged on with my domain account (which does not have adminstrative privileges - my choice).  Think I'm crazy?  I ran as non-admin on WinXP for years - doing development, no less. Yes, really. Am I masochistic, you ask? Perhaps. I happen to think that it is the RightWay to do things. 

As I'm getting things tidied up in my profile and letting Outlook rebuild its .ost file, my CPU gets busy. As a direct result, the fan gets busy too.  Unfortunate, but it is to be expected.  After this was complete and my machine was at idle, it had somehow transmogrified into my wife's hair dryer.  Yep, the cooling fan was screaming and I was ready to flip out. As friends and family can attest, I'm an absolute freak when it comes to quiet and computers (more on that in an upcoming post).

A quick digression: On my last XP image, I installed the Toshiba PowerSaver utility craplet. Worthless. Caused my ears constant discomfort. I even brought my Targus ChillHub into work (which was an extra pain in the ass because 'work' was in another state and that was one more damn thing I had to haul around in my bag/on the plane). Not much help. I finally uninstalled that and instead installed the excellent SpeedSwitch XP utility. Life got much better very quickly.  Ok, back to the story...

Clearly, something was driving the CPU hard which triggered the fan to create such a ruckus. So, I opened Task Manager and then selected show tasks from all users (which as non-admin with UAC trigged an elevation prompt).  Task Manager goes away and then reappears (this is both disconcerting and annoying) displaying the processes from all users. Sorting on CPU reveals our serious offenders [in order]:

SearchIndexer.exe, SearchHostProtocol.exe, Outlook.exe, and MsCam32.exe

Well, well.  Vista was indexing - like a file clerk who just did an eight ball.  Outlook was..busy (hrmph). And MsCam32 was being stupid (and with no cam connected -wtf?!?). I then broke out three more tools from my toolbox: Process Monitor, FileMon and RegMon as I wanted to see _what_ these processes were doing (note: As noted by Grant in the comments, ProcMon replaces FileMon and RegMon. I realized that soon after I opened up the three but I still blogged that I opened all three - and yeah, I haven't spent much time with ProcMon, yet).  These are three excellent SysInternals utilities (get the troubleshooting suite).  In the process of sorting this all out, I found another soul who was experiencing similar pain: read Mike Fullerton's post. I agree with Mike, I would like to schedule SearchIndexer.

Ok, so Vista wants to index; let's let it be.  I broke out the ChillHub (why not try to help out the cooling fan?) and sequestered my laptop to another room for the night.  When I returned to it in the morning, I was pleasantly surprised to find my laptop much quieter.  Still, the volume level of the fan was higher than, oh, near silence, so I was not yet happy.  

I then went to Control Panel > Power Options > Edit Plan Settings and selected 'Change advanced power settings'.  This opens the Advanced settings dialog. In which, I located the 'Processor power management' entry. I changed the minimum and maximum processor states (I ended up doing this a few times over the course of several days to get it to where I was happy). This helped a bit more. If you change these, don't forget to edit these for _all_ power plans, although you may wish to maintain different values for each power plan. 

While I am pretty happy where things are from a noise perspective when my laptop is plugged in (and not being stressed by say, lengthy compilations in VS2005), when it is on battery, I'm less than happy and I haven't yet found the magic formula.  Still tweaking and trying to avoid being on battery.  And yes, I did install the PowerSaver utility for Vista. Again, worthless, but I tried.

I'm still searching for the magic formula to keep the fan quiet while I'm on battery; I'll update this post if/when I do. Part of me thinks that I should be grateful that I can even run Vista on my M3; the other part of me is bitter about the fan noise.  Someday, I might actually have a laptop whose fan I won't *** about. Right. Not bloody likely.

Update (200703150850): I found Notebook Hardware Control, but all I get is a blue screen (noting Reference by Pointer).  Oh, and did I mention that Speedswitch XP does not run under Vista?

Tags: ,

General

A new addition to the collective

by Nino 9. November 2008 04:42

Update: I just noticed that, despite having set a title for each link, apparantly Windows Live Writer dumped those when it published this post. Sorry, folks.  

Seems as though several folks are buying or building new computers right about now. Well, me too.  Yep, time to replace my home workstation. I received a couple of boxes via UPS this week, so you know what my weekend will be like. :-)

It's been about thirty months (aka 2.5 years) since I updated it last.  Due to severe cost constraints last time I replaced my home workstation, I <gasp> bought </gasp> a Dell SC420 (and no, I didn't do the PCI Express mod).  Yeah, I bought a computer instead of building one, violating my directive on building. It replaced a very aged (and failing) PIII-based machine (which I built).  The SC420 worked pretty well, but was obviously limited in the graphics department and there some other things that made it less than ideal for a workstation. One of area disappointment was in the noise department (see my recent Vista/laptop adventure).  And did I mention noise? (kind of a pet peeve of mine)  However, given that I was not home much due to my travel schedule for work, and when I was, I didn't use it much. I was reluctantly ok with that given I had more important things to worry about during that time.

I've been saving up my per diem and my spare change and now have some coin to use on new hardware. Additionally (and importantly), I got a good WAF score. As Hanselman noted recently, let's be realistic here...nearly all purchasing decisions are dependant on WAF, and if the WAF (1st definition) score is zero or near zero, it ain't gonna happen.

I firmly believe in building my own machines, like Atwood (scroll down a bit).  I like having complete control over every component, and I can build a machine that is fast and quiet.  With few exceptions, 98% of the machines in my "NOC" (my wife calls it the "NASA control center") are hand-built, too (I let these be a bit louder than silent since the noise would be good to chase away the dust bunnies in the basement).  I'm slowly working on a server consolidation effort there, if for no other reasons but to decrease the administrative/management effort and to reduce energy consumption.

Here's the rundown on my new workstation:

A well-reviewed (here and here-1,2) case that brings a number of good things to the table: composite panels, partitioned cooling zones, and two adjustable speed 120mm fans.  Couple that with quality construction, thoughtful touches, and, IMO, good looks and I'm sold. While I'm no fan of the boring beige box, I'm not going to get some neon-lighted, suspended_fish-bowl_with_a_disco_ball, blinged-out case, either (after noise, comes the visuals - I can't stand unnecessary lights on a PC).  With the front panel closed, it's pretty minimalist, and I like the silver/stainless look (you can get it in black, too).  Granted, I'm going to spend extra time with cable management given the layout (the power supply is on the bottom), but it will be worth it (and SATA cables are a whole lot easier to deal with that PATA ribbon cables).  Oh, and I'm not quite sure if I'm going to put on the top fan exhaust protector thingy.  That's the one part of the P180 I'm not really crazy about.

I had also considered the CoolerMaster CM Stacker 830 and CoolerMaster Centurion 5, but felt that they didn't meet all of my criteria (and I thought the Stacker was ugly and would exacerbate noise transmission). They, too, are well reviewed at SPCR and many other places.

While Atwood thinks that needing a 500 (or greater) watt power supply is a myth, I'm not so sure when you factor in overclocking, several hard drives, and video cards that have their own cooling fan, talent agent, entourage, and sport more memory than the main memory of most people's PCs.  For most folks, yeah, Jeff's right. And a for a large part of the work I do, he's right there, too. I like some overhead though.  SPCR reviewed the 700w version, but I extrapolated down 100 watts and liked what I saw.

Built-in gigabit Ethernet, 6 SATA connectors, 1 IDE, support for up to 8 USB 2.0 ports, Firewire, 2 PCI-Express x16 slots, 1 PCI-e x1 slot, 3 PCI slots, eSATA, and a 802.11b/g antenna jack. Yummy. Did I mention excellent OC potential?  Tom's Hardware has a review.

2.4GHz of dual core love. Did I mention the 4MB of shared L2 cache and 64-bit support?  IMO, this is the sweet spot (price/performance) right now in Intel's Core 2 Duo lineup. Core 2 Duo's overclock very nicely, too.

Pretty inexpensive, and a damn good heatsink.  While it ships with a fan (which the SPCR crowd has given a thumbs-down on, so find a different one), given the placement of the rear and top (yes, top) fan of the P180, I ought to be able to run this fanless (i.e. passively), at least until I OC the CPU.  This thing is huge - twenty-three aluminum fins stacked horizontally with six copper heat pipes. One of the issues with this heatsink is size. It's not going to fit in all cases (but will work in a P180 with a P5B mobo), so be sure to do your research.

Atwood says don't waste your cash on 4GB of RAM on a 32-bit OS.  Well, I'm going to be running 32-bit Vista (and I'll be 32-bit for a while), so I won't be able to realize all 4GB, but I'm ok with that.  And I'll have all 4GB when I do go 64-bit.

I debated this one long and hard. I, of course, looked at the 8800GTX, but couldn't justify spending well over $500 on a video card. Perhaps if my name was "Thresh", but it ain't. (dated myself a bit with that one, eh?)   But. Nearly $400 (I got it for $359, after rebate) is still a chunk of change for a video card. It does have DirectX 10 support, and it will rock DirectX 9.  But I don't do that much gaming.  What is useful is that it has has dual DVI, which is great for me as I'm currently running my LCDs in analog (eww, gross, analog).  What can I say, this was a splurge.

Oh. Yeah. This will be the system drive. 150GB capacity, 10,000RPM spindle speed, and SATA I (aka 150MB/s max. external transfer rate) interface. Skeptical? Use a box with a 10k RPM drive, then come talk to me.  Why only 150MB capacity? Again, it's the system drive, it doesn't need to be that big. I need to see the noise levels from this in the case as it will be in the bottom part of the case - the drive cage, which has rubber mounting grommets. I may need to get more extreme on it (i.e. change to a suspension mounting or put some sorbothane in place).

This is the big drive. All my apps and VMs will live here.  500GB capacity, 7200RPM spindle speed, and SATA II (300MB/s max external transfer rate). Don't let that SATA II transfer rate fool you.. it doesn't really matter much.  Hopefully this drive is no louder than the Raptor. Again, we'll see. Someone is going to ask: "Why didn't you use a RAID 0 setup on this or the Raptor?".   RAID 0, eh? Are you nuts? I have a drive failure and I'm screwed.  While we're at it, what about RAID 1?  Good question. I might do that. Greatly improved read performance + redundancy in exchange for a small-ish hit on write performance. Need to save more $ (of course, if I hadn't splurged on the video card...).

  • Internal card reader

I picked up a generic one at MicroCenter when I bought my SATA cables. This will definitely beat scrounging around for a card reader when I need one.  This one does MMC/MMC2/SD/CF/CFII/SM/Microdrive/MS/MS DUO/MS Pro/MS Pro DUO.  $20. cool.

That was all the new bits, existing bits include:

  • 2 - Samsung 193P 19" LCD monitors

I bought these several years ago and am still quite happy with them. If I have one complaint, it is the resolution (1280x1024).  Here's a 193P review at AnandTech.  I may purchase another LCD at some point (and other video card) and join the three monitor club, but that's likely a ways off.

  • Samsung SH-S183L DVD writer

This one is somewhat unique (er, rare) as it is SATA - an interface that will soon become commonplace for optical drives.  Hopefully this will work well under Vista..  Here is one of the only reviews I've found on it.  Yeah, it's a tad slower on DVD writing, but it's SATA and that's why I bought it.

  • Microsoft Natural Ergonomic Keyboard 4000

NEK4000, I love you! I longed for the days of old until I found the NEK4000. Bliss. And I shamefully must note that I only purchased it last year.  Why am I so enthralled with this keyboard? 

  • Comfy naugahyde(?) palm rest
  • Solid keyboard.
  • The PgUp/PgDn cluster is configured correctly.
  • The arrow keys are configured correctly.
  • The LEDs are front-and-center. Particularly nice to see if F Lock is on or off, along with Scroll, Caps, and Num Lock.
  • The multimedia buttons are useful.
  • It's black.
  • Damn it, man, it just feels good to type on.
  • It's wired.

Before I get burned at the stake for having a wired keyboard in the year 2007, let me explain. I previously had the Microsoft Wireless Optical Desktop Pro set. The keyboard felt good, although not as good as the NEK400, and the mouse felt good. The wireless part of things was a huge annoyance.  I couldn't have that damn transceiver thingy more than fifteen inches away. And even then things were flaky.  Additionally, the lock indicator LEDs (F, Caps, Scroll, Num) were on the transciever thingy, not on the keyboard. So, if you try to tuck it out of site, you are out of luck. Note: I do use a wireless mouse with may laptop; a Microsoft Wireless Notebook Presenter Mouse 8000. It allows me to have three devices (mouse, laser pointer, remote Powerpoint gizmo) in one (i.e. less crap to haul around in my bag).

  • Microsoft IntelliMouse Optical

Yep, still using the trusty IntelliMouse Optical. It works well and has additional buttons I can map to forward/back, which I like. It is not necessarily extremly comfortable (read:ergonomic), though. I'm still searching for desktop mouse nirvana - not sure where I'll end up.  Suggestions? Drop me a comment. 

  • Creative Sound Blaster X-Fi XtrmeGamer

Yeah. I like it. It's a friggin' [nice] sound card.

  • Cambridge SoundWorks speakers

Apparently, my speakers (two satellites and a sub) are _so_ old, I can't find them online anymore.  They work for me, though.

Notes:
I reference Jeff Atwood a lot in the post. Why? Am I just some fanboy? No. He's smart and knows what he's talking about..and I have similar philosophies in a number of areas. Also, readers of
The Tech Report may notice a resemblance between my new rig's configuration and their "The Sweet Spot" system.  Clearly, I agreed with a number of their recommendations.

Tags: ,

Personal

The Mobile Minute 109

by Nino 9. November 2008 04:41

 Hopefully my negative travel karma is now gone – I had some travel troubles in my journeys to and from Seattle and Chicago last week. Somehow (still pondering this one) I’m a better person because of it.  Seattle was great - I got finally got to meet some Avanade folks I've been talking to for a few years (EricBl  and Matt (who came over from the UK)) as well as get to meet the rest of the folks on the team. We got a lot done in our design meetings too.   Then Chicago on Friday - again, met more folks I have only corresponded with. I'll have to say that that meeting went much smoother than I was anticipating. So much good stuff going on these days.  Wow. :-)

Software / Hardware 

 Development

In Other News . . .

-Nino

Tags: , , , , , ,

Mobility

How I bricked my Linksys WRT54G...and brought it back

by Nino 9. November 2008 04:41

…aka  “Two hours I’ll not get back, but it felt great to revive my device and not have to buy a new one”

So, I have been looking at Talisman firmware from Sveasoft for my Linksys WRT54G v1.0 and decided to change from the Linksys v3.03.6. Swell.  I subscribe ($20/year) so that I could get the latest Talisman firmware. After a bit of research I began my endeavour last night – I go to the download page where it asks for the MAC of my LAN connection on my WRT54G – ok, I put that in and it builds the firmware image on the fly for me.  I download it. 

(btw, I am plugged straight in to one of the four ports on the WRT54G, and have disabled my wi-fi (as doing firmware upgrades over wi-fi can brick the thing, but I’ll violate this rule later…)).  At this point I have the .bin file and I bring up the management page on my Linksys and navigate to the firmware upgrade page and proceed to point it to the newly download .bin file.  I do and with great confidence I click the “Upgrade” button.   After two little bars of progress, I see “Upgrade Failed”.  Joy.   My WRT54G seems unharmed at this point so we’re at net 0.

At this point, I decide that it may be a better approach to move Alchemy v1.0 v2.37.6.8sv to start with and then to Talisman. Yep, worked like a charm. The device is working great, and now I’m excited to move to Talisman so I navigate the upgrade firmware page again and repeat the process, this time pointing to the Talisman .bin file.  It said it was successful; however, it seems as things went not so good.  I manually rebooted the router and to my disappointment I see a steady (red) diag light.  Uh-oh!  

At this point, I wonder if I “bricked” it.  I decided to try a slow reset sequence (hold the reset button for 30 seconds, unplug it, continue holding the reset button for another 30 seconds, plug it back in and release the reset button).   No dice.  I do it again… and a third time. Nope (this worked for me on another Linksys model that I thought I had bricked)Alrighty, I bricked my WRT54G. Damn! [sigh] Time to find a solution, so I hit the forums on http://www.linksysinfo.org and http://www.wrt54g.com .  

Ok, it seems as though the solution involves voiding the warranty and getting physical with it.   Here’s the solution: http://voidmain.is-a-geek.net/redhat/wrt54g_revival.html  Note that his photos depict a v1.1 WRT54G, and I have a v1.0 model.  This is an important difference.  v1.0 devices have a mini-PCI card(see photo below) and a not-so-plainly-labelled flash chip.   (oh yeah, I took the photo with my SMT5600 and the lighting in my basement isn’t real great)

WRT54Gv1.0

The flash chip is the non-labelled chip hiding under the inside-corner of that mini-PCI card – a fact I was alterted to via this post.  

So, I followed the instructions (using a paper clip to do the shorting) and, by observation of the diag light (fast-blinking, then slow) it seemed to be working.  I manually TFTP’d the Alchemy 1.0 .bin file over..   it timed out.  Hmm… do it again and another timeout.  Hmmm.  I TFTP over the Linksys firmware – good to go!  … almost.  All seems well at this point, but thorough testing showed that I could only access the management software via Wi-Fi (apparantly after I TFTP’d the new .bin and rebooted it, the four-port switch (LAN ports) ceased functioning) – woohoo. :-/    (fwiw, I used the TFTP utility built into WinXP – I find the one provided by Linksys to be crap)

Taking stock of the situation reveals that I have “unbricked” my WRT54G and re-applied the Linksys firmware; however, none of the LAN ports work (but Wi-Fi is good).  More research reveals that “sometimes” the routers can be “picky” about what firmware was on them previously and, as such, prevent some things from functioning correctly. Um, ok.  That point in mind, I decided to put on the Alchemy firmware. But wait! My only avenue is via Wi-Fi and that can brick the router. Well, as that is my only option (and I have been able to revive the thing once bricked already), I proceed. It goes swimmingly.

I test each LAN port – functioning. Wi-Fi – still ok.  Cool.   I spent some time configuring it (many more options than before) and now it’s running like a champ.  Now I’m left with more research to do before I attempt another Talisman upgrade (or maybe I look for a v2.0 or later WRT54G on eBay anyway) and, of course, one revived router.

-Nino

Tags:

General

The Mobile Minute 104

by Nino 9. November 2008 04:41

 Well.. my illness on Monday was the result of (and I’m pretty confident about this) something I ate.  Ick.  Hopefully I’ll fair better at the Nerd Dinner Wednesday – see you at BW-3’s.

Software / Hardware 

 Development

In Other News . . .

-Nino

Tags: , , , ,

Mobility

Sold my old WinCE / PPC devices ..

by Nino 9. November 2006 04:41

I had a Philips Velo 500 and an HP iPAQ h3650 lying around and decided that I'd be better off with some cash (sadly, I know..), so I went to UsedHandhelds.com and inquired about selling my devices to them.  I promptly received an e-mail from Wayne who gave me an estimate.  Once I returned from vacation, I shipped them off to Iowa, and I received a check shortly thereafter.  Easy, painless.  Give UsedHandhelds.com a look if you are interested in buying or selling...

-Nino

Tags: ,

Personal

How to hard-reset your HTC Wizard

by Nino 9. November 2005 04:41

I had to hard-reset (not the first time) my Qtek 9100 today (I was futzing with system stuff and I zigged when I should have zagged), so I thought I would blog about it for those searching for an option other than 'Clear Storage'. 

Option 1:
Start > Settings > Clear Storage (then enter in the number it requests and tap 'YES')

Option 2:
Hold down the Comm Manager button(top left) and Voice Command button(top right) buttons while performing a soft-reset (depress the reset button using the stylus); after you depress the soft-reset button, [contintue to hold the two side buttons] hold down the navigation pad for ~4 seconds until you are prompted on screen [you can release the side buttons now]. Press the Send (Talk) button (i.e. the left telephony button)  - or whichever button your system prompts you for.

FWIW, I have seen unsubstantiated claims that Option 2 is a 'more thorough' hard-reset than Option 1...

-Nino

Tags: , ,

Mobility

How To: Create a dial-up network connection over Blueooth [with a Qtek 9100]

by Nino 9. November 2005 04:41

A co-worker inquired today about how to create a dial-up networking connection over Bluetooth with his Qtek 9100...here's the info:

The Short Version:
After you pair the devices, open the properties on the of the Pocket PC device on your desktop BT connection.  Check the services for that device and select the Dial-up networking (DUN) service.  After you have done this, Windows will add a new modem item, then you can create a new network connection using the BT connection.

The Long Version:  (again, this assumes you have already paired your device to your desktop/laptop as well as having a data plan configured through your mobile operator)

1)  Open your BT properties and select the correct device (here, I am selecting my Qtek 9100 Windows Mobile Pocket PC); click Properties.


View BT devices

 

2) On the properties dialog, select the Services tab.  Check the DUN box and click apply.

 Select DUN service

3) Windows will now add a new modem

Windows add new hardware


4) Once Windows has added the new modem, it will assign a COM port.  At this point, you may click OK to exit the properties dialog and the BT devices dialog.

COM port assigned

 

5) Now that we have added the , we need to add a new network connection to use it.  Open your Network Connections and select ‘Create a new connection’. The wizard will open – click Next.

Start the Network Connection Wizard

6) The wizard prompts for the Network Connection Type – Select “Connect to the Internet” and click Next.

Select Internet type

7) Select “Set up my connection manually” and click Next.

Network Connection setup manual setup

8) Select “Connect using a dial-up modem”; click Next.

Network Connection Wizard - Connection type

9) We now need to select the device that this connection will use; we want to pick the Standard Modem over Bluetooth that we just added. (In this case it is modem on COM35) – Click Next.

Select Device

10) We now need to give the connection a name – I chose “T-Mobile (BT)”.  I added the “BT” to distinguish it because I also have another connection setup for T-Mobile on USB.

Connection Name

11) We now need to set the phone number to dial.  In this case we are setting up a GPRS/EDGE connection, so we enter *99#.  Click Next.

Network Connection Wizard - Phone Number

12) As a user running as non-admin, the only option I have here is “My use only”; if I were running as admin (not recommended), I could set this connection up for all users.  Click Next.

Network Connection Wizard - Connection Availability

13) It now wants us to enter account information.  If you need to enter credentials, do so and click Next.  For T-Mobile (USA), I do not need to enter any credentials, so I just click Next.

Network Connection Wizard - Account Info

14) The connection is now set up; added a shortcut to your desktop if you like.  Click Finish.

Network Connection Wizard - Complete

15) Back to the Network Connections screen we see (in the red rectangle) our new T-Mobile Bluetooth connection. Double-click it and we’ll see the connect dialog as below.  As I mentioned earlier, I do not need to enter any credentials, so I can just click Dial.

Connect to BT connection

16) When Windows connects, you should see a notification bubble.   That’s it!
BTConnected

To disconnect, you can simply right-click on the connection icon in your notification area and select ‘Disconnect” from the context menu.

-Nino

Tags: , ,

Mobility

The Mobile Minute 116

by Admin 9. August 2005 04:41

 ..and this one is mostly dev stuff (and darn good stuff, too).

Software / Hardware 

  • Pocket PC FAQ has a nice matrix listing new application names in WM 5.0One correction to note: They have the browser listed as “Internet Explorer”.   It used to be called “pocket Internet Explorer”  and is now called “Internet Explorer Mobile”.

 Development

In Other News . . .

-Nino

Tags: , , , , , ,

Mobility

RecentPosts