The Cog

That Little Bit of Knowledge That Makes Everything Work

Android With Linux is Frustrating as Hell

This is going to be a rant, so be prepared. I have to start out saying that I truly do love the Android OS and I am really pleased with it in my phone and tablet. The thing is that my tablet runs Android 4.0 Ice Cream Sandwich, whereas my phone only runs Android 2.2. On versions of Android 3.0 and earlier, devices could be mounted as mass storage devices using any computer OS when plugged in using USB. Starting with Android 3.1 and later, they only support the Media Transfer Protocol (MTP) or the very similar Picture Transfer Protocol (PTP). You can select the mode when you plug in the device. PTP is well supported by all OSes nowadays and works perfectly. The only issue is that when the device uses this mode, it is detected as a camera and you can only access the pictures on the device, nothing else. MTP was developed by Microsoft as a way of getting media such as pictures, music and videos on and off portable devices. MTP is in fact an extension of PTP. The problem is that MTP was never widely implemented into OSes other than Windows Vista and later; therefore the big problem lies with Linux. Most (if not all) Linux distros do not come with any support for MTP out of the box. There are packages that can be installed to enable functionality, but they really suck. For example if you want to mount your Android device in MTP mode, you have to run through a bunch of shell commands that require a lot of knowledge that most users do not have. Even if you do get the device mounted, the problems do not stop there. The actual performance is abysmal. It takes about 2 minutes to just load a directory on my device, which makes browsing basically hopeless. Even so, I could not seem to transfer any media files to my device other than pictures. The files that were not pictures were silently dropped and no matter what I tried and how I tried to copy them, they would not go. So in the end, I really end up with the same functionality as I would if I had simply used PTP mode.

This is clearly a problem. I really hate having to boot into Windows simply to transfer an MP3 to my device. That is stupid. I do almost 95% of everything in Linux (including music management) and having to switch OSes and back is really retarded. If you are wondering why Google dropped mass storage support, it does make sense from a technical standpoint. With mass storage, the device has to be accessed at the block level and it can only have one mount point. This means that when the device is connected to the computer, it has to unmount (disconnect) the internal memory/SD card from the Android OS and pass control to the PC. The memory would then be remounted when the user was finished. There were problems with corruption and overall slowness and the lack of the ability to use the device while the transfers were taking place. Since MTP is not block level, it is impossible to have a corrupt transfer or filesystem. It can also be used by the Android OS and the PC at the same time.

While the switch to use MTP was a good one from the technical standpoint, the problem with computer OS compatibility is a big downside. Yes, most of the world uses Windows, but there is still a significant percentage which use Linux or OS X. Google needs to help the Linux community develop an easy to use and properly functioning library for communicating with MTP devices. The sad thing is that Android is Linux, and Linux is sadly not getting the attention it deserves.

ASUS Transformer Pad TF300T Review

I recently purchased a TF300T Android tablet from ASUS. The TF300T is a lower cost alternative to the much adorned Transformer Prime TF101. Even though the Prime is the flagship tablet from ASUS and the TF300T is technically a model with lower specs, it has a very important advantage over the Prime; it was released over 5 months after the Prime. In that time, ASUS had time to listen to the people who bought the Prime and fixed many issues that were raised. The TF300T is similar to the Prime except it has no flash for the rear camera, a regular IPS panel instead of a super IPS display, and no gorilla glass (the TF300T has what ASUS calls “hardened” glass, whatever that means). The CPU and GPU are clocked 100 and 200MHz lower respectively, and the back of the TF300T is made of plastic instead of aluminium on the Prime. One main complaint with the Prime was that it was too thin. This caused it to cut into users’ hands after holding it for a long time. The sharp bevel on the edges also caused problems with the ports getting broken as they were very exposed, as well as the microSD card popping out as it was not perfectly flush with the edge. ASUS has attempted to remedy the problems in the TF300T by making the device slightly thicker and giving it a smoother bevel. The microSD card slot is now properly recessed and it is almost impossible to remove accidentally. The slipperiness of the Prime has been remedied by forming concentric rings into the back of the plastic which give it some resistance when you hold it in any orientation. There is a case/sleeve that ASUS makes for the TF300T however there doesn’t seem to be any Canadian retail store that carries it at the moment. The battery life of the TF300T is quite good, despite being slightly less than the Prime (by about half an hour). The unit charges and connects to the laptop dock using a proprietary 40-pin dock connector. One important thing to note that I was unaware of when I purchased the device is that it will NOT charge off a USB port or any other charger. The charger it comes with is basically a black version of Apple’s famous charger for all their iDevices. It follows the exact same design except that it is slightly larger. That would be due to the fact that it puts out two separate voltages: 5V at 2A and 15V at 1.2A. That’s a maximum of 18W of output power, which is higher than that of a standard charger such as Apple’s which only puts out 10W. This translates to a faster charge time. I have measured the power consumption of the charger and it does indeed use the full 18W for the majority of the charge and begins to taper off when the battery approaches capacity. Since the charger puts out standard 5V, you can use it to charge other devices so you only need to carry around one charger. The built in speaker was another thing that many people complained about on the Prime and I am happy to say that it now sounds excellent (for a tablet) on the TF300T. The TF300T runs Andriod 4.0 Ice Cream Sandwich which is quite standard among tablets today. There were some issues with the Prime that regarded the access time of the internal memory and would cause some applications to bring up the not responding dialogue. The problems seem to have been remedied in the TF300T as I have not received the message (except when I was browsing with Chrome and had 10 tabs open at once, but that doesn’t count). The interface is quite responsive and the slightly lower clock speeds don’t seem to affect the overall performance of the device. You could always root your device and overclock it if you really wanted to. The Prime had a big issue with GPS reception and I can safely say that it no longer exists in the TF300T. I can get a GPS lock in about 15 seconds outside, and I can usually get one inside as well. According to many testers, the WiFi reception of the TF300T is much better than that of the Prime and  the antennas are harder to block.

I have to say that I am very impressed with the TF300T and it was everything that I had hoped it would be. You can’t really beat a 32GB tablet with ASUS quality and an NVIDIA Tegra 3 CPU for only $400. My only complaint other than the scarceness of cases would be that the TF300T doesn’t have a simple name like the “Prime”.

Simple Domain Controller With Samba

I’ve had many people ask me over the last week how to set up a simple Windows domain with a Samba primary domain controller. This is a pretty complex topic and can get really messy really fast. This “guide” (if you can call it that) assumes that you have Ubuntu 12.04 installed on a server and Samba is already installed. The network is configured statically, and the client(s) are on the same network, static IP addresses as well. This setup does not require a DNS or even a gateway or Internet connection. Obviously you would never setup a real network this way, but it might help those just getting started with Samba.

On the server in smb.conf, set/add/uncomment the following. Most of this is already in the file and simply needs uncommenting. Be sure to replace everything in <> with real values. It is somewhat important where these changes are made so try to keep them in order. Run the “testparm” command to check if you have made any errors in the smb.conf file before proceeding.

 workgroup = <domain name>
 netbios name = <server name>
 wins support = yes
 security = user
 local master = yes
 os level = 64
 domain master = yes
 preferred master = yes
 domain logons = yes
 logon path = \\%N\%U\profile
 logon drive = H:
 logon home = \\%N\%U
 logon script = logon.cmd
 add machine script = sudo /usr/sbin/useradd -N -g machines
      -c Machine -d /var/lib/samba -s /bin/false %u
 [homes]
 comment = Home Directories
 browseable = no
 read only = no
 create mask = 0700
 directory mask = 0700
 valid users = %S
 [netlogon]
 comment = Network Logon Service
 path = /srv/samba/netlogon
 guest ok = yes
 read only = yes
 [profiles]
 comment = Users profiles
 path = /home/samba/profiles
 guest ok = no
 browsable = no
 create mask = 0600
 directory mask = 0700

On the server, run:

 sudo mkdir -p /srv/samba/netlogon
 sudo touch /srv/samba/netlogon/logon.cmd
 sudo mkdir -p /home/samba/profiles
 sudo chmod a=rwx -R /home/samba
 sudo groupadd sambaadmin
 sudo groupadd machines
 sudo net groupmap add ntgroup=”Domain Admins”
      unixgroup=sambaadmin rid=512 type=d
 sudo adduser --ingroup sambaadmin <admin username>
 sudo usermod -a -G sudo <admin username>
 sudo smbpasswd -a <admin username>
 sudo net rpc rights grant -U <admin username>
<domain name>\Domain Admins” SeMachineAccountPrivilege
      SePrintOperatorPrivilege SeAddUsersPrivilege
      SeDiskOperatorPrivilege SeRemoteShutdownPrivilege
 sudo restart smbd
 sudo restart nmbd

On the client:

  • Set the WINS server address to the address of the server
  • If using Windows 7, apply the registry patch by adding the following keys:
    HKLM\System\CCS\Services\LanmanWorkstation\Parameters
                DWORD  DomainCompatibilityMode = 1
                DWORD  DNSNameResolutionRequired = 0
  • Join the domain with the admin account you just created

Optionally, to add another user:

 sudo useradd <username>
 sudo smbpasswd -a <username>

Tube Amp Project Underway

 

I am currently working on a single 12AU7 class A tube amp for use as a preamp and as a headphone amp.

As you can see, the case is not ready yet, as I still have to machine it. I’ve got it in a cardboard box so I can use it until then.

I’ll post more pictures and info as the project progresses.

Recover RAID Array With dmraid

I woke up this morning and what do you know, one of my RAID arrays in my workstation was degraded. Just great. This particular array was made up of 3x 1TB disks in RAID level 5 running on an Intel RST fakeRAID controller. After Ubuntu had some serious difficulty communicating with the drive on bootup, I assumed that the onboard drive controller board had gone. Having some spare parts for this model of drive, I decided to replace the controller board with another I had from a previous drive that failed. I didn’t think I really had anything to lose – the array was already degraded, so what more could happen? The best case scenario was that I wouldn’t have to buy another $100 drive. The worst would be that the drive is still detected as failed and nothing would happen. Seems simple right? Wrong.

Upon plugging in the newly matched drive/controller pair, the Intel RST utility immediately indicated that my array had failed. It wasn’t just degraded, but FAILED. My volume was no longer accessible in Windows and Intel RST indicated that all data was lost. Rebooting did not solve the problem and even the BIOS indicated a failed array, even after removing the new frankendrive. I knew that my data was not really lost because I still had 2 healthy drives in the array and even Intel RST indicated this. After some careful inspection of the array properties, it seemed that Intel RST had duplicated the failed drive’s serial number. I truly can’t explain what happened.

I somehow needed to override the metadata on the drives to indicate that indeed the array was healthy enough to start or at least rebuild. Linux to the rescue! I knew that Ubuntu used dmraid as the fake/software RAID handler. Not having used it to rebuild an array before, I began experimenting. First of all, it did not bring up the array as it should have during the boot sequence. This was a bad sign and it kind of sunk my hopes a bit. I first checked for all the arrays on the system by running

    sudo dmraid -s -s

After spitting out a few errors about my array not having the correct number of drives (2/3) it gave me a status report on the array indicating that it was “inconsistent”.  I decided to try to start the array by running

    sudo dmraid -ay

and lo and behold it brought up the array which I could mount in Nautilus. This was the first ray of hope for my data. At the very least now I could copy my files to other drives and rebuild the array from scratch.

After buying a new drive and installing it, I rebooted and checked the drive’s health with palimpsest. The drive appeared healthy and was being given the handle /dev/sda. I now wanted to add the drive to my array (which was not running at this point due to the restart). To do this I got the array (subset) name from “sudo dmraid -s -s” and used that to identify the array when issuing the rebuild command

    sudo dmraid -R <array name> /dev/sda

It gave me a few errors but the command looked like it completed successfully for the most part. The big indication that it was doing something was that the HDD activity LED was lit up constantly. Supposedly you can monitor the status of the rebuild using the command “sudo dmsetup status”, but it did not give me any changing information. I simply waited until the LED turned off, about 4 hours later. I rebooted once I was sure that everything was finished rebuilding and everything mounted normally. The BIOS once again indicated that the array was operating normally, and a quick boot into Windows showed that Intel RST was reporting the correct status.

I have two pieces of advice that stem from this experience. Number one, don’t try to build drives from spare parts without first purging the RAID metadata. Second, give dmraid a shot if you are having trouble with regular Windows-based fake/software RAID. It saved me 2TB of precious data.

Intel SASWT4I RAID Controller Review

I recently purchased an Intel SASWT4I RAID controller. First of all, it is indeed a hardware RAID solution, so it is operating system independent. This is crucial as my workstation is dual-booted with Windows and Ubuntu. I have the ASUS P6X58D Premium motherboard and in the setup of the card, I had some issues. The motherboard would not let me enter the card’s BIOS setup utility. I could see the card initializing, but if I tried to launch the configuration utility, the BIOS would just boot the OS instead. If I was creating a bootable array I would have had a big problem, however was just using it for a 4 SATA disk RAID 10E array, so I installed the Windows configuration utility and set it up that way. The configuration is stored in NVRAM so it persisted with Ubuntu. Unless you have the configuration utility you cannot view the connected disks. I was unable to view the SMART status’ of the disks, even with the utility. There is a configuration utility for Linux, but it is distributed as an .rpm package. In the near future I might use Alien to convert the package to a .deb and attempt to install it on Ubuntu.

The card has a load of LEDs. There are 4 green activity LEDs, one for each port and 4 orange fault LEDs, one for each port. There is a green power LED on the board itself and 2 lightpipes that pass through the backplate that indicate heartbeat and fault, as well as global activity. There is a 4 pin LED header but there is no documentation on how it is wired. I found out that the pins farthest from the backplate are the activity indicator pins with the ground closest to the backplate. The performance was at par with a 3 disk software Intel RST RAID 5 array I already had in the computer, however the access time was about 3ms better. After a little digging in the settings, I found that by default the drive cache is disabled. I enabled it and got roughly the same performance in my benchmark. It does however feel faster under normal use, so it might just be the way the benchmark works. The firmware it shipped with seemed outdated, but I could not upgrade it because the updater requires a UEFI system and has no compatibility with BIOS motherboards. The Windows utility allowed me to flash a .rom to the card but the update package Intel ships has no such compatibility. The card initializes within 10-15 seconds, which is average for a hardware RAID card. When the system shuts down, the drives do not seem to be unloaded before the system power is cut. I can clearly hear the heads of the drives snap into their park positions. I don’t particularly like this because that feature is designed for emergencies, not for normal use. It can cause the drive to fail 100s of times faster than normal.

All in all, it  is still a very good RAID controller considering the sub $150 price tag. It has some issues, but it gets the job done.

Intel i7 3930k Worldwide Shortage

If you are a computer enthusiast who is in the market for a new high-performance rig, you might already know that there are absolutely no Intel i7 3930ks to be had anywhere in North America and many other places. There are many theories as to why the CPUs are not in good supply. The first bit of speculation came from users, who thought that Intel was deliberately holding them back in order to force users to purchase the far more expensive 3960X. Others are blaming it on Intel’s transition from the C1 to the C2 stepping on the production line. Intel has not released a full statement as to why they are not available. Intel representatives have stated that a ‘trickle’ may be coming to North America in February, and the majority of new shipments will be delayed until early April.

ASUS K53SV Laptop Review

I’m not exactly sure where to begin the review for a laptop, so I guess I’ll begin by going through the features.

The Outside

The K53SV series is very stylish, coming in both silver and a dark brown they call ‘mocha’ which is the one I bought. The K53SV is a 15.6″ widescreen laptop with a 16:9 aspect ratio. The lid cover is a nice matte textured black plastic with a shiny ASUS logo inlay. Opening the unit up, you are faced with a shiny back bezel surrounding a 1366×768 glossy LED backlit display. There is a 0.3MP webcam and a green indicator LED and microphone to the left of it in the top of the bezel and an inset ASUS logo on the bottom. The bottom half of the notebook contains a one piece Altec Lansing speaker bar running across the top with a silver power button with white LED inset on the right. The keyboard is chicklet style with an almost full-size num pad on the left. The multi-touch pad is offset to the left of the frame, and contains two distinctly separate silver mouse keys. Below the touchpad, but not on the front edge, are 5 green LED indicators. From left to right they are: power, battery, WiFi, num lock, caps lock. Everything on the bottom half is nicely surrounded with a scratch resistant ‘mocha’ coloured brushed aluminum face plate. The left edge of the laptop has, from back to front, the cooling vent, 19V DC power in jack, gigabit Ethernet port (which to my sadness has no flashing indicator lights on it), VGA and HDMI ports, and one lonely USB 3.0 port. The front of the laptop is empty except for the multi-card reader on the left hand side, which accepts MMC, SD, and MS. The right side from back to front has the DVD multi-burner tray, two USB 2.0 ports, and the microphone and headphone audio jacks. The back side is empty. The bottom is surprisingly bare, with no air intake port for the active cooling system. This is excellent because it means that you can set the unit down on your lap or a cloth surface and won’t have to worry about choking the cooling system. The HDD and RAM are both user accessible via one huge door near the front of the unit. The power adapter is roughly 1.5″x2.5″x6″ and has a green power LED on it. The power rating is not explicitly written on the device, but I calculated it to be 120W. The ferrite bead is nicely located close to the power supply (which I strongly believe is an SMPS), which gets rid of having a chunky blob beside the laptop on your desk.

The Inside

The K53SV series has many different models, but the one that I purchased was the K53SV-DH71. It sports a 2nd generation Intel Sandy Bridge Core i7-2670QM processor with 4 physical processors with hyperthreading, making 8 logical cores operating at 2.2GHz, with turbo boost up to 3.1GHz. For graphics, it supports NVIDIA Optimus, which allows both the Sand Bridge integrated graphics and the 1GB NVIDIA GeForce GT 540M to operate simultaneously. The 540M remains off most of the time, but when an application requires more graphical processing, it turns on the 540M and pipes the output through the integrated graphics. This allows for not only good performance but enhanced battery life as well. The only disadvantage to this system is that there is no way of turning it off, which led to some problems when setting up Ubuntu. I ended up adding a repository and installing IronHide, which provides support for Optimus on Linux systems. The unit comes with 6GB of dual channel DDR3 1333MHz RAM preinstalled, and it supports up to 8GB. The hard drive is a 750GB 5400RPM Hitachi, which is sadly the bottleneck for the entire system. In the future, I will most likely replace it with an SSD, however I cannot afford that at the moment. The battery is a 56Wh 12.5V 6-cell Li-ion pack, which, according to ASUS, will run for up to 4 hours. I have not fully conditioned the battery yet, so I am not going to release my findings yet. I’ll update this post once I have solid figures. My tests confirm that the battery lasts anywhere from 3.5 to 4.5 hours in Windows 7, depending on what you are doing. The battery does not last as long in Ubuntu – usually around 3 hours. This is due to the kernel regression power problems in addition to the fact that Ubuntu does not engage SATA link power management, USB selective suspend, or PCI low power modes automatically on this machine, as confirmed when running PowerTop. A nice small feature I discovered was that the unit will only charge the battery to 100% if it is below 95%. This is to prevent the battery from charging constantly when plugged in, both saving power and prolonging the battery’s lifespan.

Performance

The K53SV is part of ASUS’ ‘versatile performance’ series. I would expect moderate to high end performance from it,  but not the world. The CPU interestingly enough was only able to do 37GFLOPS, which is interesting, given that it is supposedly more powerful than an i7 950 which can do more FLOPS. The GPU didn’t do so well on the Heaven benchmark, with only about 8FPS on max settings, but it can still run games like COD MW3 at max settings with no problem. Using MSI Afterburner to overclock the GPU to 845MHz (the RAM cannot go any faster than the stock 900MHz), I was able to get up to 15.4FPS. The sound is average for a mid-sized laptop. The laptop stays relatively cool, despite the fact that it lacks a dedicated air intake, and you rarely hear the fan at all. The top of the unit gets only slightly warm after several hours of use, but I mostly attribute that to my arms and fuzzy clothing. ASUS markets the unit has having a special technology which keeps the user contact surfaces cool, and I would have to say that they did a good job.

Warranty

Another thing that I might as well mention is that the unit comes with an excellent warranty. First of all, the unit is guaranteed to have absolutely no stuck pixels from the factory. Throughout, the 2 year warranty, ASUS will pay to ship the product in both directions. What really surprised me was that the unit comes with a second warranty known as the Accidental Damage Warranty or ADW at no extra cost. It covers the unit from accidental liquid spills, drops, fire and electrical shocks for 1 full year from date of purchase. With this warranty, they will only ship the product one way, and promise to have a turnaround time of less that 3 days. The only thing you have to do is register it within 60 days of purchase.

Conclusion

After using the K53SV for a while, I have to say that it is in my opinion the best laptop I’ve ever used. I can hardly find fault with the design or engineering of the notebook. The unit is of solid build quality, which is expected of ASUS, and not only has all the features you would need in a laptop, but they are all implemented correctly and there are no stupid design fails. I have no doubt that it will continue to operate flawlessly for a long time to come, just as all of my other ASUS products have. I have never had a laptop by ASUS before, and I have to say that from what I know now, I will most certainly be a returning customer.

Filesystems Matter – Here’s Why

A filesystem in the most simple terms is a hierarchy of how the information is stored on computer storage media such as hard drives, SSDs and RAID arrays. Many people don’t think that filesystems pose a significant impact on the performance of a system and therefore do not think much of them. In fact, most end users never need to deal with them unless they become corrupted. I’d like to share a little story of mine, which I think showcases the true importance of choosing the right filesystem and the effects it can have.

I have an Ubuntu powered server, which contains 4 separate RAID arrays. Of those 4, 2 are used for data storage and they are named ‘Storage’ and ‘Backup’ appropriately in accordance to what they are used for. Every night, the server versions some directories from the Storage array, and copies them into the Backup array. The Backup array also stores filesystem images of other computers, along with other backup related stuff. The nightly backup used to take about 1-2 hours, but lately it has been going for over 7-8 hours – still running when I get up in the morning. I was intrigued by this, and thus went digging to see if I could find out why everything was slowing down. What I found literally shocked me. The 2 data partitions were NTFS! For those who don’t already see the horror, let me explain. First of all, NTFS is a Windows filesystem and it has no place on a Linux system. It is also a notoriously bad filesystem when it comes to speed. I can’t explain why I made the arrays NTFS and not ext4, and up until my investigation, that’s what I thought they were. As a small test, I tried to copy a 1.5GB file onto the Backup array and was saddened to tears when I saw that the maximum transfer speed was an abysmal 300KB/s! This was a RAID 10 array with a benchmarked write rate of over 300MB/s, yet it could only transfer at a speed 1000x slower! I got the feeling that the filesystem was epically fragmented, but since it was a Linux machine, I had no way of checking or defragmenting it.

I decided to reformat the array as ext4, and fix the problem, which was no easy task. I spent an entire day copying the 800GB of data to another array, and proceeded with the reformat. After spending about 3 hours copying the data back, I reviewed the results. The first result I got was actually during the copying process itself. It took about a day to copy the data off the server, but only 3 hours getting it back on. To do the transfers, I used SAMBA over gigabit Ethernet, and using the NTFS partition, I yielded an average of 10MB/s transfer rate with a maximum of about 15MB/s. On the ext4 partition copying data back, I yielded a very impressive average of 70MB/s, with a maximum of over 110MB/s.

As you can see, using the right filesystem can make a huge difference in the performance of a system. I’m not out to say that NTFS was entirely the problem in this situation, but this just shows that a poorly maintained filesystem can cause problems. I also encourage those who can to use ext4, to do so, due to its amazingly high performance.

Logitech R800 Presenter Review

In the presentation peripheral market, there is sadly not that much to choose from. The R800 is the better of two presenters that Logitech sells. The R800 is very small, just over 5 inches long. It fits very comfortably in your hand, and all the main buttons are easily accessible without the need to shift the device around in your palm. The unit runs on 2 AAA batteries, which to my surprise were actually included in the retail packaging. The USB receiver stows nicely in the butt end of the device, however it is roughly 1 3/4″ long (excluding the USB connector) once inserted into a PC (perhaps so you don’t forget it?). The unit comes with a case which, in my opinion is just a little too small for the device, as I have to be careful to not scratch the end of it when closing the zipper. The device turns on and off via a slide switch on the left side. The device boots in about 3 seconds, and is ready for use. The device does not need any drivers or special software to use, so it is great if you are going to be using it on other people’s computers. The presenter has a 1mW class 2 green laser activated by a momentary switch, and a wireless range of up to 100′. On the top of the device are 5 buttons. The laser button is on top, followed by 2 large forward and back buttons for advancing the slides. Below that are 2 much smaller buttons for starting and stopping the slideshow, and blanking and unblanking the screen. Above all the buttons is a rectangular LCD. It displays the current battery level, as well as the signal strength of the receiver. In the middle of the display is the timer readout. Using 2 buttons on the right edge of the device, you can set a timer from 1 minute to 9 hours and 59 minutes which outlines the time for the entire presentation. You can pause and resume the timer throughout the presentation. The display shows you the time remaining and a progress bar of what time you have left. The device will vibrate just like a cell phone at 5, 2, and 0 minutes to the timer’s expiry, and then will count up with the progress bar flashing aggressively.

I was surprised when I got the device that the timer was not set using some sort of software on the computer. It would have been better if it had some way of programming in not only the time for the entire presentation, but for each slide individually, so you can keep pace. Even without that, the device does what it should, and I would recommend it to anyone who gives a lot of presentations whether it be at school, work or otherwise. The only downside is the price. Logitech states the MSRP at $99, which is outrageous for essentially half a mouse with a laser pointer in it. I was able to find a retailer which sold it for $72, but even then it is still a bit steep. The reason for the pricing in my opinion is that there are simply not enough presenters in the market, and people like me who need them will pay whatever is necessary to get one. If other major companies came out with presenters, I would love to see how they stack up to the R800.