tag:blogger.com,1999:blog-65697359485686429902024-03-13T02:07:11.686-04:00The obsessions of an electronics freakHardware, software, development, networking, technology. <br>I love it all. Welcome to my blog!Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.comBlogger54125tag:blogger.com,1999:blog-6569735948568642990.post-4886445904552124372012-05-27T11:48:00.002-04:002012-05-28T21:30:23.231-04:00Configuring QoS in Cisco IOSI'm back! Today I'm posting a how-to on QoS (Quality of Service) configuration on Cisco routers and switches.<br />
<br />
QoS is a valuable tool whenever you have different types of traffic arriving at a router where they'll need to be aggregated and sent out over a single link like a WAN connection. Some types of data and applications require traffic to be handled with as little latency and jitter as possible; VOIP is a prime example of this, as well as Citrix, RDP, and anything else that involves streaming audio and video.<br />
<br />
The reason this is important is because as a traffic arrives in a router, it gets sent into a processing queue in the router based upon the order in which the packet was received. After routing decisions are made, this traffic is sent into an input queue for the WAN interface in preparation of being sent out over the WAN link.<br />
<br />
Traffic passes from this input queue into the transmit ring, a hardware output queue. If this queue fills up during a period of high traffic congestion, additional traffic arriving to the interface is queued in the software output queue, where it waits on room in the transmit ring to become available. If the software output queue (usually just called the output queue) gets filled up and traffic is still arriving at the interface, the interface has to start dropping packets. These are recorded as "Output drops" when you do a show interface command.<br />
<br />
If this happens, critical data can be dropped, or voice traffic can be delayed while it sits in the output queue with less important traffic in front of it. Even if the voice traffic is successfully delivered, the delays can cause stuttering and poor quality on the call.<br />
<br />
QoS prevents problems like these by guaranteeing bandwidth to critical data and preventing that traffic from being dropped if the circuit becomes congested. It can also be configured to prioritize certain types of traffic over others in terms of the order they are transmitted, to ensure time-sensitive traffic is transmitted as quickly as possible.<br />
<br />
Hit the jump and we'll look at this in detail!<br />
<a name='more'></a><br />
So QoS works in a Cisco router in a few pieces. First, you need something to define the different classes of traffic you would like to have. Thus is born the class map:<br />
<div style="margin: 5px 20px 20px;">
Code:<pre class="alt2" dir="ltr" style="border: 1px inset; font-size: 13px; height: 98px; overflow: auto; padding: 6px; text-align: left; width: 1000px;"><span style="font-family: inherit;">class-map match-any QOS_REAL-TIME
match ip dscp 46 <i>(alternatively match ip dscp ef)</i>
class-map match-any QOS_CRITICAL-DATA
match ip dscp af41 <i>(alternatively match ip dscp 34)</i>
match access-group name IMPORTANT-SHIT</span></pre>
</div>
Now you can see the first class-map for real-time traffic is set to match packets tagged with DSCP value 46, aka EF (Expedited Forwarding). Usually this is voice traffic, and often the tagging is done by the voice equipment, or IP PBX.<br />
<br />
<div>
The second for critical data matches anything arriving pre-tagged as DSCP value 34, aka AF41. It also matches anything that makes it through the access-group IMPORTANT-SHIT.<br />
<div style="font-size: 13px; margin: 5px 20px 20px;">
<div class="smallfont" style="font-size: 11px; margin-bottom: 2px;">
<span style="font-family: inherit;">Code:</span></div>
<pre class="alt2" dir="ltr" style="border: 1px inset; height: 66px; overflow: auto; padding: 6px; text-align: left; width: 1000px;"><span style="font-family: inherit;">ip access-list extended IMPORTANT-SHIT
permit ip any any eq citrix-ica
permit udp any any range 6112 6119 <i>(StarCraft is serious business!)</i></span></pre>
</div>
So now we see that the access-list IMPORTANT-SHIT is permitting traffic that is coming through as Citrix traffic, or UDP on Battle.Net ports. We don't want the network admin's StarCraft sessions lagging, now do we?<br />
<br />
Okay so now we need something that will actually govern these classes of traffic we've defined. Here comes the infamous policy-map.<br />
<div style="font-size: 13px; margin: 5px 20px 20px;">
<div class="smallfont" style="font-size: 11px; margin-bottom: 2px;">
<span style="font-family: inherit;">Code:</span></div>
<pre class="alt2" dir="ltr" style="border: 1px inset; height: 160px; overflow: auto; padding: 6px; text-align: left; width: 1000px;"><span style="font-family: inherit;">policy-map 75r_24c
class QOS_REAL-TIME
bandwidth percent 75
class QOS_CRITICAL-DATA
bandwidth percent 24
set ip dscp 34
class class-default
shape average 1000000000 <i>(One <b>Beeeellion</b>... bits!)</i></span></pre>
</div>
Alright, now we've got the meat of it put together. Standard practice at work is to name the map based upon the bandwidth percentages used but you can do whatever. So we define each class, and underneath we allocate a percentage of the bandwidth we want to guarantee that traffic. <br />
<br />
I've also got a set ip dscp 34 statement under my CRITICAL-DATA class. I'm tagging that traffic because while I was matching AF41 (DSCP 34) traffic, that Citrix and StarCraft traffic wasn't coming to me pre-tagged. I'm tagging it now so that when I hand it off to my provider, they can see it come across tagged and match it (of course, this is assuming I've called them and had them set up QoS on their side). This way they don't need to build any ACLs. Besides, they don't need to know that I've got StarCraft in that priority queue.<br />
<br />
At the bottom I've got my shaper, shaping traffic heading out of the interface to a mere 1 Billion bits (though I'm guessing a normal Cisco router would give me a hard time for this when I try to apply it to a FastEthernet port at 100 Mbps!) Also note that you can set up a separate shape-policy and apply it instead of the shape-average statement I used above. The shaper isn't necessary on Serial links since the router already knows the max bandwidth of the circuit.<br />
<br />
With a serial interface the T1 knows the bandwidth capacity of the link, but by default only allows 75% of it to be used by a QoS policy. To change this, you use a max-reserved-bandwidth 100 applied to the serial interface to allow the QoS policy to use all of the available bandwidth. It's not unusual for me to find QoS policies set up and applied but completely inactive within a router because the QoS policy allows for more bandwidth to be used by the policy than the 75% default can provide. A show policy-map int Serialx/x will usually reveal this. In addition, standard practice at my workplace is to only allow the QoS queues to add up to 99%, not 100. The reason for this is to prevent the QoS policy from smothering traffic like keepalives or route advertisements.<br />
<br />
IMPORTANT NOTE: Instead of using the bandwidth statement you can use a priority statement (ie priority percent 75). In addition to guaranteeing bandwidth, priority actually delays other traffic to allow the priority traffic to the front of the line heading into the transmit ring (buffer) of the physical interface the policy is applied to. This is important when handling voice and traffic VERY sensitive to latency or jitter. However, while with the bandwidth statement, any available bandwidth by a queue with spare bandwidth gets allocated to other queues that need bandwidth, priority does not do this. So if my CRITICAL-DATA queue has spare bandwidth and my REAL-TIME queue does not, with the bandwidth statement the REAL-TIME queue will be allocated some of CRITICAL-DATA's free bandwidth. With priority statements this will not happen; 75 percent is all REAL-TIME will ever get when the circuit is congested.<br />
<br />
We're not done though! We have to tell the router which interface QoS applies to. Generally, QoS is applied outbound on an interface.<br />
<div>
<div style="font-size: 13px; margin: 5px 20px 20px;">
<div class="smallfont" style="font-size: 11px; margin-bottom: 2px;">
<span style="font-family: inherit;">Code:</span></div>
<pre class="alt2" dir="ltr" style="border: 1px inset; height: 82px; overflow: auto; padding: 6px; text-align: left; width: 1000px;"><span style="font-family: inherit;">interface FastEthernet0/0
description Connection to a Series of Tubes
ip address 123.123.123.123 255.255.255.0
service-policy output 75r_24c</span></pre>
</div>
...aaannnd there we have it! QoS is now configured for this router.<br />
<br />
A couple other quick points in closing:<br />
<br />
In an ADTRAN, QoS is set up almost exactly the same with a few minor changes in syntax, and the fact that the class-map is actually merged within the policy map (which is called a "qos map"). <br />
<br />
Additionally, in Ciscos, policy maps can actually be nested, much as how I described a shaper policy can be nested within class-default under the main QoS policy. This is often done when applying QoS to traffic from multiple VLANs. <br />
<br />
Another thing worth mentioning is the random-detect statement you may sometimes see under class-default in QoS policies. This causes the best effort queue to drop random packets when congestion occurs, which can cause TCP retransmits and thus lowered TCP window sizes which effectively throttles down TCP traffic to reduce bandwidth maxing. Random-detect drops can be weighted based upon DSCP values and the drop rate can be adjusted as well. My company doesn't use this statement as we rely upon shapers to throttle traffic and our customers to decide if they want to enforce limitations upon their TCP streams. <br />
<br />
I hope this proves helpful to some folks out there looking to get QoS configured on their router or switch. If anyone has any suggestions, comments, or corrections, please post below, I appreciate the feedback!</div>
</div>Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com1tag:blogger.com,1999:blog-6569735948568642990.post-48696711507829440352012-01-12T19:49:00.000-05:002012-01-12T19:53:46.187-05:00Dreams made realityOkay, so I'm well overdue for a check-in. A lot has happened since my last post so I'll try to fill in the gaps.<br />
<br />
First, I got a new job. In my dream field, networking. I'm now an enterprise WAN data technician working in a NOC!<br />
<br />
Tomorrow will be my last day of nearly 2 months of training (I was hired in the 3rd week of November). I was initially trained in Facilities, which gave me some background in telephony and TDM circuits (T1, T3, etc). I'm now able to test T1s for errors, troubleshoot phone issues on PRIs and CAS lines, and refer tickets on the local loop out to carriers for resolution.<br />
<br />
During my training in Facilities, the company transitioned to ownership by another carrier, and I believe I was likely the last employee hired under the original company. I even played a game of Foosball with the Fortune 1000 CEO on the evening of the last day he owned the company, losing by a few points, undoubtedly due to the few pints of lager I'd had by that point. :p<br />
<br />
After about 5 weeks came the good stuff: data training. I was trained on QoS, MPLS (multilinks), VLANs and Trunking, Metro Ethernet, Multilink Frame Relay, BGP, ACLs, subnetting and more. I already have a decent understanding of the LAN side of networking so some of the stuff like Metro E was pretty easy to understand, and I already knew subnetting, ACLs and VLANs pretty well.<br />
<br />
On top of everything I've learned, I'm also looking at a reasonable bump in pay as well, which has me preparing a proposal to Lynn as well as a reasonable likelihood of owning a house in my future, especially as my family has one that they're willing to sell me (in one of the best neighborhoods and school districts in the country!)<br />
<br />
I've also been offered a job writing articles on smartphones for a tech blog startup, and while I've written a few articles (and will not disclose the website here just yet), I've been so busy with my new job and the holidays that I've not written enough to earn any pay.<br />
<br />
Lastly, I also won the Christmas Grand Prize over at AndroidAndMe.com's 25-Days-Of-Tegra giveaway! I won a Transformer Prime tablet with keyboard dock, a Sonos sound system, and a Kindle Fire! The stuff hasn't come yet (and has been a daily reminder of how impatient I am) but I'm very excited to see it come. It's possible the Transformer Prime has been delayed by ASUS' announcement that they're releasing a second-edition model that will resolve some of the issues people have had with GPS and WiFi performance due to the metal back of the tablet.<br />
<br />
In closing, I'll try to keep up on my blog, maybe post a few Cisco-oriented articles, but I expect my life is going to continue in high gear for the next several months while I continue to focus on learning everything I can about WAN networking, get a ring for my girlfriend, and work on buying the house.<br />
<br />
After years of struggle, I'm finally seeing my goals achieved... and I couldn't be happier!Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com4tag:blogger.com,1999:blog-6569735948568642990.post-67022756609686149342011-10-09T23:25:00.003-04:002011-10-28T19:13:24.728-04:00Fun with Tasker Part II: Covert mugshots!<div>
Okay Blog, I've been neglecting you. Today, I'll outline a neat little trick once again using the amazing automation tool, Tasker.</div>
<div>
<br /></div>
<div>
First, I've an admission to make. My phone doesn't use one of those coded lockscreens. There's a couple reasons for this... I don't have time to deal with it, and it's far too easy to get around those screens by looking at a screen at a shallow angle and seeing where the fingerprints are.</div>
<div>
<br /></div>
<div>
That said, my phone hardly is lacking in the security department. I've written a few pretty involved scripts in Tasker that will, when I text the phone a secret phrase, turn my phone into an information-gathering powerhouse.</div>
<div>
<br /></div>
<div>
Specifically in this post I'm going to describe how I can covertly and remotely grab photos from the front and rear cameras on my phone as well as see the ugly mug of the last person who unlocked my screen, and have those photos quietly emailed to me. This can be an awesome tool if your phone is stolen or if you just want to know who the last person to unlock your screen was.</div>
<div>
<br /></div>
<div>
Let's get started!<br />
<a name='more'></a></div>
<div>
<br /></div>
<div>
Your phone has to be running Gingerbread if you want to use the front-facing camera.The reason? Gingerbread has a new API built-in to allow programs (such as Tasker) to access the front-facing without having been written specifically for your model of phone.</div>
<div>
<br /></div>
<div>
Got Gingerbread? Or just going to use the back camera? Okay. Now you need to download and install the app "SL4A" from<a href="http://code.google.com/p/android-scripting/"> here</a>. This program is an Android scripter that will let your phone run scripts written in other programming languages. Once you get into the program, follow the instructions <a href="http://code.google.com/p/android-scripting/wiki/InstallingInterpreters">here</a>, using a Python interpreter for Step 6. This should install another APK on your phone called "Python For Android". Open it and click Install. </div>
<div>
<br /></div>
<div>
Got Python? Awesome. <span style="background-color: transparent;">To make sure it's installed properly, go back into SL4A and you should be greeted by a list of scripts with names like "bluetooth_chat.py", "hello_world.py" etc. </span><span style="background-color: transparent;">Now follow the instructions <a href="http://tasker.wikidot.com/email">here</a> to install the sendemailA.py script that can quietly send out an email with a photo attachment</span><span style="background-color: transparent;">. I'm going to take a moment here to give a huge amount of credit to "baudi", who wrote the script, this wouldn't be possible without it.</span></div>
<div>
<br /></div>
<div>
Okay here's the part where we actually fire up Tasker to do the dirty work.</div>
<div>
<br /></div>
<div>
If you don't already have Tasker, download it off the Android Market, or give it a 7-day trial from the <a href="http://tasker.dinglisch.net/">Tasker website</a>. Trust me, it's worth purchasing after the end of the trial, it's the best $5 I've ever spent. (Update: apparently it's $7 now... but I still think it's worth it at less than the cost of lunch.)</div>
<div>
<br /></div>
<div>
Now, you'll need to create 2 new Profiles and 4 new Tasks. I'm not going to babysit you through every piece of this, so if you need something that covers the basics of how to use Tasker, read their <a href="http://tasker.dinglisch.net/tour.html">tutorial</a>.</div>
<div>
<br /></div>
<div>
The first Profile I like to call "Watcher". What this does is covertly take a photo using the front-facing camera every time the screen is unlocked. So create the Profile, and the context, or trigger, for this profile is, obviously "Display Unlocked". This can be found under Event, Display, Display Unlocked.</div>
<div>
<br /></div>
<div>
Create a new Task for the Watcher profile titled "Front Spy". This is a one-step task that takes the covert photo. For the action, select Media, Photo. Select Front for the camera, and the filename is "%PHOTONUMBER" minus quotes. This is a variable that we'll be working with a little later. Select the option for "Discrete" and make sure "Insert in Gallery" is unchecked, to keep things covert. That's all we need to do for this task and this profile. Lock your screen, unlock your screen, go to the folder where your camera stores photos, go to the Tasker folder, and you should see a picture of yourself unlocking your screen. Sweet, right?!</div>
<div>
<br /></div>
<div>
Create a new Task exactly the same as the above but titled "Back Spy" and using the rear camera. You can do this easily by clicking the Task icon (a little orange lightning bolt on the main screen in Tasker) and selecting New Task. We'll use this later.</div>
<div>
<br /></div>
<div>
Now create another Task named "Photo Email" or some such. This task has 7 steps to it. The Variable Set/Add are under the Variable category (imagine that), and Run Script is under Misc.</div>
<div>
<ol>
<li>Variable Set<br />Name: %PHOTONUMBER<br />To: 1<br />If: %PHOTONUMBER ! Set<br />(This step sets the variable %PHOTONUMBER to equal 1 if the variable doesn't have a value).</li>
<li>Variable Set<br />Name: %EMAIL_USER<br />To: (your gmail account username. Do not include the @gmail.com part.)</li>
<li>Variable Set<br />Name: %EMAIL_PSWD<br />To: (your gmail account password. Don't worry, I've reviewed the python script and it doesn't do anything with this other than log into your email account. We'll also lock Tasker later so people using your phone can't see this!)</li>
<li>Variable Set<br />Name: %EMAIL_TO<br />To: (the email address you want to email your photos to. Pro tip: don't send them to an account that can be accessed by your phone without logging in!)</li>
<li>Variable Set<br />Name: %EMAIL_ATTACH<br />To: (path to your %PHOTONUMBER.jpg file. For me it's "/sdcard/DCIM/Tasker/%PHOTONUMBER.jpg)</li>
<li>Variable Add<br />Name: %PHOTONUMBER<br />Value: 1<br />(adds one to the %PHOTONUMBER value so that each time you email something it creates a new file instead of saving over the old one).</li>
<li>Run Script<br />Name: sendemailA.py<br />Pass Variables: %EMAIL_USER,%EMAIL_PSWD,%EMAIL_TO,%EMAIL_ATTACH<br />(Handy tip, you can pick these variables off a list by clicking on the orange tag icon.)</li>
</ol>
</div>
<div>
Whew! Alright, the hard part is done, trust me, we're almost there.</div>
<div>
<br /></div>
<div>
Now we create a new Profile titled "PIXORSTFU". The Context is going to be "Received Text" under Event, Phone, Received Text. Set Content to "PIXORSTFU" minus quotes. If you want to restrict this to a certain number (maybe your friends like saying that phrase?) you can do so under Sender.<br />
<br />
Lastly, we add a task to PIXORSTFU that we don't need to name anything. This is pretty simple, Perform Task is under the category Task:</div>
<div>
<ol>
<li>Perform Task<br />Name: Photo Email<br />(You can select this from a list by clicking the magnifying glass.)</li>
<li>Perform Task<br />Name: Front Spy</li>
<li>Perform Task<br />Name: Photo Email</li>
<li>Perform Task<br />Name: Back Spy</li>
<li>Perform Task<br />Name: Photo Email</li>
</ol>
<div>
This next step is VERY important! We don't want people able to get into our Tasker and disable this stuff, so we've got to set up a lock code. Select Menu, Preferences, scroll down to Lock Code, enter a code of your choice (but something you won't forget!) and select Lock On Startup. (Just learned that you may not be able to lock the Trial version of Tasker, so pony up already!)</div>
<div>
<br /></div>
And we're done! Your first email probably will be missing the lockscreen spy shot because the %PHOTONUMBER variable wasn't set and there's no file yet titled 1.JPG<br />
<br />
So, text message PIXORSTFU to your phone from another phone or Google Voice or what have you, then lock and unlock your screen, and do it again. This time you should receive 3 emails: one from the last time the screen was unlocked, and one from the front and rear cameras moments after the text message was received.<br />
<br />
There you have it ladies and gents. Now your phone has become a secret surveillance tool. I'll be doing another blog at some point with an even more involved script in Tasker that incorporates part of this one and gathers a ridiculous amount of data that can be used in tracking your phone down. Trust me, Lookout and some of those other phone-tracking apps have nothing on it!<br />
<br />
EDIT - Thinking about making a couple minor changes so that you can get sent pictures from the last two unlocks. There may be circumstances where you didn't know your phone was messed with until after you've unlocked it. I'll update if I decide to do this.</div>Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com8tag:blogger.com,1999:blog-6569735948568642990.post-61979833105028938162011-07-30T10:01:00.001-04:002011-07-30T10:04:32.037-04:00Still alive!I'm still here! Work has been taking up a lot of my time as of late, and I've resumed my Cisco studies. My goal is to be able to take the CCNA exam at the end of August. I'm already well versed in ICND1 (which I'm halfway through re-reviewing now) and I'll commit 3 weeks to studying ICND2 before taking the CCNA exam.<br />
<br />
Helping motivate me is my friend Bob, who recently went to work for Google. He's studying for the CCNA too, and we're meeting weekly via Google+'s new Hangout system to discuss our progress.<br />
<br />
For those of you still interested in Android phone news, check out this article by AnandTech:<br />
<br />
<a href="http://www.anandtech.com/show/4551/motorola-droid-3-review-third-times-a-charm">http://www.anandtech.com/show/4551/motorola-droid-3-review-third-times-a-charm</a><br />
<br />
As usual for AnandTech, the review is excellent.Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-35328164976222382152011-05-11T22:33:00.000-04:002011-05-13T16:47:05.903-04:00The Android Invasion: My impressions of our new Neato XV-11 robotic vacuumSo, my girlfriend has always been saying that the one thing she wishes she had more of is time. She joked around with me several months back about getting a Roomba to make life a little easier for us, and my curiosity was piqued.<br />
<br />
Tomorrow is her birthday, so I went all-out and bought a Neato XV-11 robotic vacuum. I've only played with it for about an hour, so consider this more of a "hands-on" review than anything thorough.<br />
<br />
First, important "good boyfriend" tip. Never get your girlfriend something that you're even more excited about getting than she is, even if she said she wanted it. She certainly likes it, but I've definitely been given the "oh I see why you got it" treatment. I really did get it for her because I wanted to see her smile as a machine cleaned the house for her, but since it benefits the both of us, perhaps it wasn't exactly the best birthday present choice. Duly noted!<br />
<br />
Read on past the break for my review.<br />
<a name='more'></a><br />
Alright, on to my impressions of the Neato XV-11. I am, as you may be aware, the kind of individual that does a fairly extensive amount of research before any major investment. I read up on the Roomba and a couple of the alternatives such as the iClebo and Navibot. iClebo isn't available in the US yet (AFAIK) and the Navibot is very pricey. So really, the choice was really between a 700-series Roomba (I couldn't bring myself to get anything other than current-gen) and the Neato XV-11.<br />
<br />
There were a few reasons that made me pick the XV-11 over the Roomba. First and foremost is it's ability to map a room out using its infrared laser. Having a lidar-guided robot in my home is simply an awesome prospect. Secondly, there are a few different modes of 700-series Roomba, and even the cheapest, the 760, is priced at $449 to the XV-11's $399. The next step up, the Roomba 770, priced at $499, features a supposedly more-advanced dirt detection system (which it should be pointed out, is a feature the XV-11 does not have) and a full-bin indicator (which the XV does). The 780's primary distinction from its little brother is capacitive buttons instead of mechanical. This upgrade will only cost you another $100, putting the 780 at $599. Yikes!<br />
<br />
The Roomba does have collision-detection and collision-avoidance systems (hopefully some of you network junkies out there keep reading that as CSMA/CD or CSMA/CA like I do) but they're a combination of bumper switches and infrared sensors. The vacuum operates essentially by changing directions every time it comes into vicinity of an object until the entire room is clean. It does do perimeters, and it does have a little sweeping brush to ensure corners get cleaned. It also has a bristle brush instead of a solid plastic brush like the XV-11, but it does require more cleaning and maintenance.<br />
<br />
In short, the combination of no room mapping, higher cost, and more frequent maintenance is what made me choose not to get a Roomba. And I'm very happy with my choice, the XV-11 is an amazing little beast!<br />
<br />
After a trip to get my daughter's hair cut this evening, we returned home and I got to get the XV-11 running. My girlfriend had the day off and had already set up the docking station, gotten it charged, and had already had put it through a trial run. As she put it, "If I could take the thing out of the box and get it working without opening the manual, it's a good robot."<br />
<br />
I pressed the Start button to wake it up. It had turned off its LCD display while we were away. It showed a full charge. I pressed Start again, and the display announced that it was beginning to clean the house. The vacuum spooled up (it's a centrifugal fan like the one on the graphics card I fixed in the March 17th blog post, for those of you who remember) and it trundled away from its charging station to get to work.<br />
<br />
It immediately made for the perimeter of the room, carefully weaving between chair legs and rarely actually bumping into anything, while the corners of the device generally came within a centimeter of the objects it was navigating around. It began working its way around the edge of the room, turning to try to reach into crevices with the front corners of the vacuum as much as possible. Anything that it could go underneath, it would, and without hesitation. If it got stuck on something, it would try turning different directions and moving forward or backwards until it was freed, and then would get back on track. The device can turn with absolutely no turning circle due to two rugged, spring-loaded rubber wheels on the bottom that extend off of a pair of durable arms that allow it to clear obstacles a good inch or so high.<br />
<br />
It did once get stuck on a long curtain which it had run over and then tried to free itself from. After several minutes of determined wiggling, it finally beeped and asked me for help. The curtain was securely lodged between a spring-loaded "wheel arm" and the chassis, and it did take a good tug to get it free. With the curtain now set up on the window sill, I set it down and it returned to where it was last working.<br />
<br />
After the perimeter was complete, it began doing rows back and forth across the center of the room, until everything had been cleaned. At this point, I had to get my daughter to bed, and had to prevent it from moving on to cleaning the next room, though the manual assures me that it will find doorways and move into other rooms to keep cleaning until the entire house is done, and will take trips back to its charging station when necessary. I did watch it shut off its vacuum and drive back to the charging station, where it turned itself around and backed up until its rear charging contacts contacted the vertical dock. It chimed to let me know that it was successfully charging. As long as I remove the obvious sources of trouble, I'm confident that the XV-11 is self-sufficient enough for me to schedule to run while I'm at work. I look forward to coming home to a house that has been cleaned for me while I've been away!<br />
<br />
Without taking too much longer here (I got 4 hours of sleep last night and intend to do better tonight), I have to say that I'm impressed with the Neato XV-11. It truly seems like an intelligent device, and the 3 bins packed full of cat hair and child snack food crumbs it has pulled out of my carpet this afternoon proves its effectiveness. The fact that I had to do little more than watch and empty out the dirt when it was done means that in terms of time saved, the Neato XV-11 will pay for itself very quickly.Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-8276705642336855182011-04-01T21:21:00.003-04:002011-04-01T21:23:55.279-04:00The Empire Strikes Back: Qualcomm's Dual-Core benchmarkedAnandTech has gotten their hands on a Qualcomm prototype, brought it home and benchmarked it. The dual-core, 1.5 Ghz development phone runs at max clock speeds and isn't a perfect example of what we'll see in production handsets, but it does give a taste of what Qualcomm has in store for the mobile industry later this year, and the results are impressive. This unit also packs a next-gen Adreno 220 GPU and is optimized for graphics performance.<br />
<br />
Take a look!<br />
<a href="http://www.anandtech.com/show/4243/dual-core-snapdragon-gpu-performance-1-5-ghz-msm8660-adreno-220-benchmarks">http://www.anandtech.com/show/4243/dual-core-snapdragon-gpu-performance-1-5-ghz-msm8660-adreno-220-benchmarks</a>Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-73508134362163528122011-03-17T22:57:00.008-04:002011-03-19T12:04:23.078-04:00The NecromancerThe title of this blog post also happens to be the name of the book I'm reading. Perhaps I've just been inspired to do a little necromancy of my own, but with less cadavers and more circuit board.<br />
<br />
I'll explain; let's start with the fact that something's been bugging me. My desktop PC does not have a discreet GPU (video card).<br />
<br />
You might be thinking, "WTF, and you call yourself an electronics freak?!" Well, you've got me there, but I do have reasons. One primary reason is that I'm not a gamer anymore. I do almost everything on this laptop nowadays, and I only took my desktop out of storage a few weeks ago so that I could get a decent VM box running in the basement next to my HTPC and my Cisco lab hardware.<br />
<br />
However, my integrated GPU (despite it being a reasonably beefy AMD HD 3200) just ain't cuttin' it for some of the video processing and RemoteFX stuff I'd like to mess around with.<br />
<br />
Fortunately, I have an NVIDIA 8800 GTS in a static bag that should do what I need it to do. Unfortunately, it's going to take a little more than me popping this sucker into my PC to get it running.<br />
<br />
Problem #1: The graphics card does not have an enclosure for the heat sink; the fan cannot circulate air to keep it cool.<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifjqYzRjlir2OI9Ix77HFCrpXTC6xBBuJcAM8oV6vFjQSHP0mLsx1cZpuvmIWi7mv4a7o8TocyHcysZ_kyr9ijp4WHkBK41BEgmlFSx84dacnpa8GQiMfTw6A7QzPcFZtpPWwmdrLV5IE/s1600/2011-03-16+22.52.36.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifjqYzRjlir2OI9Ix77HFCrpXTC6xBBuJcAM8oV6vFjQSHP0mLsx1cZpuvmIWi7mv4a7o8TocyHcysZ_kyr9ijp4WHkBK41BEgmlFSx84dacnpa8GQiMfTw6A7QzPcFZtpPWwmdrLV5IE/s320/2011-03-16+22.52.36.jpg" width="320" /></a></div><br />
Problem #2: It's damaged goods. (Okay, I lied, the card isn't entirely dead. But someone who brings sick people back to life is a doctor, and that's a lot less fun than being a Necromancer!) It displays bands of pixels vertically across the screen that are visible during the boot process, which means it's a hardware issue, not a driver problem. Additionally, it usually won't boot into Windows, causing the system to hang when the operating system is starting up. On the rare chance it does make the boot into Windows, graphics are horribly distorted.<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcZJ8XlKEEQlTdYF8gfXl08rBC968AkpB6csltoIjPcaGNkae6_8rdyNfY11dsERgoNj7obmOXLUkTpJ4gYVOrZgvalkS-lz7QJA-8NSHRZc_aTtT8Z2agMeNgCY8b8liVivkfXgla5Io/s1600/2011-03-16+23.27.31.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcZJ8XlKEEQlTdYF8gfXl08rBC968AkpB6csltoIjPcaGNkae6_8rdyNfY11dsERgoNj7obmOXLUkTpJ4gYVOrZgvalkS-lz7QJA-8NSHRZc_aTtT8Z2agMeNgCY8b8liVivkfXgla5Io/s320/2011-03-16+23.27.31.jpg" width="320" /></a></div><br />
So, I'm screwed, right? Hell no! I wouldn't pass up an opportunity like this! Read on to see how I got this old workhorse running again.<br />
<a name='more'></a><br />
<br />
Alright, so Problem #1 isn't too bad, right? All I've gotta do is build something that lets the <a href="http://en.wikipedia.org/wiki/Centrifugal_fan">centrifugal fan</a> on the 8800 GTS push air through the fins of the heatsink instead of just stirring it around uselessly. Besides, this isn't my first time building oddly-shaped fan enclosures for electronics equipment. This time it ain't gonna be pretty though. Since this beast has hardware issues, I'm going to stick with function over form until I know I can beat Problem #2.<br />
<br />
After a few rough measurements and half-an hour with an exacto knife, some cardboard off a Radio Shack box, and everyone's favorite silver tape, here's what I've got:<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj35n52ZCXGhkHPAaGPpivy3kNCQq1DEACz-AWpiGNvnQLbfo6oD3ReGx6lrgxMHES5Ogdme2wH_JjCL1IqkqxJTffwFKjfB8fYaN25lcGcO452XdyMKJScGZhBUa7d-pLkM3KLGaVn6AA/s1600/2011-03-16+22.53.39.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj35n52ZCXGhkHPAaGPpivy3kNCQq1DEACz-AWpiGNvnQLbfo6oD3ReGx6lrgxMHES5Ogdme2wH_JjCL1IqkqxJTffwFKjfB8fYaN25lcGcO452XdyMKJScGZhBUa7d-pLkM3KLGaVn6AA/s320/2011-03-16+22.53.39.jpg" width="320" /></a></div><br />
Okay, so it probably won't melt now. The only problem that remains is that it's already screwed up. So what am I going to do to fix it? Melt it.<br />
<br />
Wait wha...? And we just went to the trouble to make sure it <i>won't </i>melt? Yep. Time to work some black magic. All it takes is an oven, a cookie pan, some aluminum foil, and the blood of a virgin maiden. Okay, that last one is optional... I went without.<br />
<br />
Here's what you do. Set your oven to 385 degrees. Now remove <i>every</i> removable plastic component from the graphics card, and get out the cookie sheet. Now find a way to position the video card so that NO electronic component or solder point comes into contact with the cookie sheet. Any major components on the board should probably be face-up or they may fall out when the solder melts. When I've done this in the past, usually I've made 4 little balls of aluminum foil, placed them at the corners of the PCB, making sure they don't touch any solder or components, and balance the video card on top of them.<br />
<br />
Now I chose to turn this graphics card upside down, resting on the heatsink. I then crammed some aluminum foil between the fins of the heatsink and propped it up to prevent it tipping forward. I also removed the fan after taking the picture below (I forgot to take a new picture after taking it off). Basically, don't do it like how I did; I was a little careless (mostly 'cause this card was a freebie from my little brother).<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYmFkkWIM7ECKqHFrKC8aYoKZpRwUixnSES6445RbJDAMNnbDM_px6GXiTRKlw1HK_NrMKi3ixqGDriyBwA3nRaPufMf1ULGrsek0KIl5j6yTh0ZR4pTUEEvyuGc4dbp5xj42sDEHMZxM/s1600/2011-03-16+22.56.51.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYmFkkWIM7ECKqHFrKC8aYoKZpRwUixnSES6445RbJDAMNnbDM_px6GXiTRKlw1HK_NrMKi3ixqGDriyBwA3nRaPufMf1ULGrsek0KIl5j6yTh0ZR4pTUEEvyuGc4dbp5xj42sDEHMZxM/s320/2011-03-16+22.56.51.jpg" width="320" /></a></div><br />
<i>Carefully</i> place your video card in the hot oven, making sure everything is in place before carefully closing the door (a slam might drop your card onto the cookie sheet and if you don't notice, you'll have a paperweight in a few minutes!)<br />
<br />
Wait 10 minutes and peek inside. The solder points on the board should look extremely shiny, like chrome. If they don't, it might need another minute, but I wouldn't let it go for much more than 12 minutes. <i>Carefully </i>remove the cookie sheet with oven mitts<i> </i>being <i>extremely</i> careful that the video card does not fall onto the cookie sheet or get jarred. The reason for caution is twofold; the video card is <i>very</i> hot and you may burn yourself, the solder on the board should be melted, which is also a burn hazard, and the components of the board are now loose and may fall off the board if jolted or touched. The solder cools quickly too... if something falls out, you'll probably need a soldering iron to put it back in (trust me on this one!)<br />
<br />
Wait at least 30 minutes for the card to cool before getting all the plastic bits reattached and the graphics card popped back into the PC. After I got my new fan enclosure put on and the graphics card installed, I booted up the PC. No vertical bands of doom! Windows booted as well, another good sign, and I proceeded to install the graphics drivers. While that was going, I checked the rear vent on the card and felt a good flow of warm air coming out. I also felt the sides of my fan enclosure, slightly warm to the touch, but not hot. Below is a picture I took of the screen once I'd gotten the drivers instead and the resolution cranked up. I'm going to run it through some benchmarks to see how it holds up but I did load up Mass Effect with maxed graphics and resolution and pushed the card through a thick firefight without observing any graphic anomalies or artifacting. At this point, I'm ready to declare success!<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmbnDrtdu_rTTat1Zr8N6JqlRMrsLqj5nEXUgQpY7B0rY7HxlZZ_jnqyKZk4BN5WCpB1Q4oB-kZTWjlsWaKBeXANi6XgUBdut9zWlLifBUnC4k8ALMHmB7V4nJ4PEd1ncE2J1zWZ_vOMw/s1600/2011-03-17+01.02.09.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmbnDrtdu_rTTat1Zr8N6JqlRMrsLqj5nEXUgQpY7B0rY7HxlZZ_jnqyKZk4BN5WCpB1Q4oB-kZTWjlsWaKBeXANi6XgUBdut9zWlLifBUnC4k8ALMHmB7V4nJ4PEd1ncE2J1zWZ_vOMw/s320/2011-03-17+01.02.09.jpg" width="320" /></a></div><br />
This technique is something I learned years ago from somewhere on the internets and I've baked several video cards since. Some were completely non-functional, some had glitches and errors. Only once was it unsuccessful in bringing a card back to life, and that was one that had been baked before quite a while prior. Most hardware issues with graphics cards arise from connection issues in the circuitry forming after the repeated heating and cooling (which causes expansions and contractions that can break those connections apart). This process is known as "reflowing" the card, because the solder is remelted and cooled, re-establishing those connections.<br />
<br />
If you've got a card with hardware problems, there's no reason not to give it a try... unless of course you're worried that your housemates will think you've lost your mind when you don an apron and oven mitts and start popping electronics-laden cookie sheets into the oven.<br />
<br />
But hey, so what if they confuse necromancer with mad scientist? ;)Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-63482252972837171972011-03-04T20:38:00.001-05:002011-03-04T20:39:10.160-05:00Smartbench 2011: your multi-core benchmarkSmartbench 2011 is now on the Android market! I encourage everyone who likes to benchmark to download and use this excellent tool. (Insert disclaimer: benchmarks are benchmarks, nothing more; they should not be used as proof for anything.)<br />
<br />
It's the successor to Smartbench 2010, which I've done a lot of testing with on behalf of it's developer, Acei, the admin over at www.smartphonebenchmarks.com. Smartbench 2010 demonstrated itself to be an excellent benchmark, working far better than some of the alternatives, (coughQuadrantcough).<br />
<br />
Smartbench 2011 takes it a step further with multi-core support, as well as a really cool benchmark score aggregator that displays the scores of like-clocked phones and those running the same custom ROM averaged together. Thus, not only does it show you what phones are performing best in the benchmark, but what ROMs and overclocks are dominating the field.<br />
<br />
Even if you don't have a dual-core phone, it's a worthy improvement over Smartbench 2010, and a far cry better than the-benchmark-that-shall-not-be-named.<br />
<br />
<a href="https://market.android.com/search?q=smartbench+2011&c=apps&rdid=com.smartbench.eleven&pli=1">https://market.android.com/search?q=smartbench+2011&c=apps&rdid=com.smartbench.eleven&pli=1</a>Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com1tag:blogger.com,1999:blog-6569735948568642990.post-39788901269644531682011-03-04T20:23:00.003-05:002011-03-04T20:29:17.112-05:00Tegra 2 vs OMAP 4 vs Cortex-A8 vs 2nd-gen SnapdragonAndroidAndMe has done up a pretty decent comparo of the current Android smartphone kings:<br />
<br />
<a href="http://androidandme.com/2011/03/news/tegra-2-benchmarks-motorola-atrix-4g-vs-lg-optimus-2x/">http://androidandme.com/2011/03/news/tegra-2-benchmarks-motorola-atrix-4g-vs-lg-optimus-2x/</a><br />
<br />
Ugh, my blog posts are getting lazy. I've been getting my networking lab put back together though and hopefully I'll be able to start doing some real posts again!Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-40889689121942701292011-02-16T23:00:00.000-05:002011-02-16T23:00:12.423-05:00MWC Overload!I'm just going to drop in here and say that some of the stuff I've been reading from MWC is absolutely insane.<br />
<br />
Tegra 3 chips <a href="http://androidandme.com/2011/02/news/nvidia-kos-the-competition-quad-core-cpus-in-android-devices-by-summer/">demoed?!</a><br />
<br />
TI OMAP 4430's upclocked SGX 540 <a href="http://www.anandtech.com/show/4179/ti-omap4-and-lg-optimus-3d-tested">outperforming Tegra 2?!</a><br />
<br />
Galaxy S II's Mali-400MP GPU <a href="http://www.anandtech.com/show/4177/samsungs-galaxy-s-ii-preliminary-performance-mali400-benchmarked">benchmarked!</a><br />
<br />
Qualcomm's <a href="http://www.anandtech.com/show/4170/qualcomms-announces-krait-cpu-the-successor-to-scorpion">successor to Scorpion?!</a><br />
<br />
<a href="http://www.anandtech.com/show/4153/ti-reveals-omap-5-the-first-arm-cortex-a15-soc">Cortex-A15 news!</a><br />
<br />
As you can see, AnandTech wins my approval for the best articles. As usual, they provide well-written, well-researched articles that manage to dig up tidbits of SoC information that I'm not able to find anywhere else (and ultimately are accurate!) I'll give AndroidAndMe the runner-up because when it comes to NVIDIA's Tegra platform, Taylor Wimberly keeps his ear to the ground.<br />
<br />
I recommend reading through AnandTech's <a href="http://www.anandtech.com/tag/smartphones">Smartphones</a> section for some great info as to what the SoC future holds in store for us (and the future looks bright!) If you're pondering getting a Tegra 2 phone, trust that AndroidAndMe will keep you up to date on any developments.<br />
<br />
I hate to say it boys and girls, but these guys have got everything covered... I've got no inside scoop this time around. That said, I'm glad to see more tech blogs take a much more interested and informed approach to SoC comparison compared to a year ago, and manufacturers are releasing much more information about their chips now that the mobile market is interested in more than just clock speeds.<br />
<br />
Thank you, tech bloggers. I originally wrote my <a href="http://sean-the-electrofreak.blogspot.com/2010/03/hummingbird-vs-snapdragon-1ghz.html">Hummingbird vs Snapdragon article</a> out of frustration with the amount of poor information available to those wanting to compare or understand ARM hardware. Since then, perhaps due to the increased availability of information available by the SoC manufacturers, we're seeing much-more informed articles about ARM hardware making it out to the masses.<br />
<br />
I may end up on the sidelines, but I'm happy knowing that readers have a lot better reading material to base their smartphone investment upon!Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-26406164416313146622011-01-17T22:18:00.002-05:002011-10-09T23:31:42.443-04:00Fun with Tasker Part I: Weather-adaptive alarm clock.One of those things I always dreamed of having was an alarm clock that woke me up early on those mornings where Mother Nature decided to hand me a nice blizzard before work or school to struggle through.<br />
<br />
A couple months back I started playing with <a href="http://tasker.dinglisch.net/">Tasker</a>, an amazing Android application that you've probably already heard me gush about in previous posts. In short, for about the price of a Value Meal at McDonalds, Tasker allows you to set up triggers on your phone that you can use to carry out a virtually limitless set of actions. And really, that'll pay for itself, because you can set it up to do countless things for you that other applications charge for. I've got a bunch of profiles I've set up and I'll be sharing them here on my blog over a period of time.<br />
<br />
So I'll cut to the chase. I used Tasker to create a weather-adaptive alarm clock, and posted the profile on Tasker's Wiki page, so feel free to try it out!<br />
<a href="http://tasker.wikidot.com/weather-clock">http://tasker.wikidot.com/weather-clock</a>Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com1tag:blogger.com,1999:blog-6569735948568642990.post-84690709893374930152011-01-16T19:12:00.008-05:002011-01-19T08:21:05.907-05:00More on Samsung; the good, the bad, and the ugly.Well my last post was <a href="http://sean-the-electrofreak.blogspot.com/2010/12/mystery-solved-how-samsung-pulls-off.html">the good</a>... now we're about to see some of the bad and ugly. I've been on XDA-developers.com a lot in the last couple months, (<a href="http://forum.xda-developers.com/member.php?u=2776957">I've got over 100 posts there</a>). Today an anonymous tipster posted some insight into why none of the Samsung Galaxy S phones have received Android 2.2 (FroYo) officially yet.<br />
<br />
Anyhow, read past the break, I'll let <a href="http://forum.xda-developers.com/showthread.php?p=10594333">his post speak for itself</a>.<br />
<a name='more'></a><br />
<br />
Posted by The.Samsung.Secret:<br />
<blockquote><blockquote>Hello,</blockquote><blockquote>I’m going to step across the NDAs and explain the issues behind the Android Froyo update to Samsung Galaxy S phones in the United States. I think most of you have come to this realization yourself now: the withholding of the Froyo update is a largely political one, not a technological one: Froyo runs quite well on Galaxy S phones, as those of you that have run leaked updates may have noticed.</blockquote><blockquote>To explain the political situation, first, a primer on how phone firmware upgrades work for carriers. When a carrier decides to sell a phone, a contract is usually written between the phone manufacturer and the carrier. In this contract, the cost of updates (to the carrier) is usually outlined. Updates are usually broken into several types: critical updates, maintenance updates, and feature updates. Critical updates are those that resolve a critical bug in the phone, such as the phone overheating. Maintenance updates involve routine updates to resolve bugs and other issues reported by the carrier. Finally, feature updates add some new feature in software that wasn’t present before. Critical updates are usually free, maintenance updates have some maintenance fee associated with them, and feature updates are usually costly. </blockquote><blockquote>In the past, most phone updates would mainly consist of critical and maintenance updates. Carriers almost never want to incur the cost of a feature update because it is of little benefit to them, adds little to the device, and involves a lot of testing on the carrier end. Android has changed the playing field, however – since the Android Open Source Project is constantly being updated, and that information being made widely available to the public, there is pressure for the phone to be constantly updated with the latest version of Android. With most manufacturers, such as HTC, Motorola, etc. This is fine and considered a maintenance upgrade. Samsung, however, considers it a feature update, and requires carriers to pay a per device update fee for each incremental Android update.</blockquote><blockquote>Now, here’s where the politics come in: most U.S. carriers aren’t very happy with Samsung’s decision to charge for Android updates as feature updates, especially since they are essentially charging for the Android Open Source Project’s efforts, and the effort on Samsung’s end is rather minimal. As a result of perhaps, corporate collusion, all U.S. carriers have decided to refuse to pay for the Android 2.2 update, in hopes that the devaluation of the Galaxy S line will cause Samsung to drop their fees and give the update to the carriers. The situation has panned out differently in other parts of the world, but this is the situation in the United States. </blockquote><blockquote>Some of you might have noticed Verion’s Fascinate updated, but without 2.2 : This is a result of a maintenance agreement Samsung must honor combined with Verizon’s unwillingness to pay the update fees. </blockquote><blockquote>In short, Android 2.2 is on hold for Galaxy S phones until the U.S. carriers and Samsung reach a consensus. </blockquote><blockquote>Some might wonder why I didn’t deliver this over a more legitimate news channel – the short answer: I don’t want to lose my job. I do, however, appreciate transparency, which is why I'm here.</blockquote></blockquote><br />
Pretty enlightening stuff... the question will be who will ultimately cede defeat in this dispute. The carriers (and thus, ultimately, us customers) or Samsung?<br />
<br />
UPDATE: Samsung has fired back <a href="http://www.phonescoop.com/news/item.php?n=7346">a response</a>, stating that they do <i>not</i> charge for FroYo updates and hope to have some more details on FroYo's status shortly. Who do we believe?Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com2tag:blogger.com,1999:blog-6569735948568642990.post-36872568607914729322010-12-24T22:12:00.006-05:002011-01-16T22:54:51.095-05:00Mystery (probably) solved; how Samsung pulls off its GPU magic.EDIT - Hmm. One of my readers (who has been an enormous resource in the past) has posted below in the comments why I am likely incorrect in my theory. Be sure to check out the comments at the end of the article!<br />
<br />
So, despite my efforts to pull myself away from ARM architecture, Android, and specifically, the mysteries surrounding the Hummingbird processor, I can never really extract myself. One of these days I'll get around to obsessing over something else (hopefully career-related) but until then, I'll let you know what I think I've uncovered as the solution to how Samsung solved the GPU bandwidth issue (which I puzzled over in my original <a href="http://sean-the-electrofreak.blogspot.com/2010/03/hummingbird-vs-snapdragon-1ghz.html">Hummingbird vs. Snapdragon article</a>.)<br />
<br />
There have been a few opportunities where I've had to step in and correct people when they post that a Galaxy S phone has only ~320 megs of RAM. It's an error I see made frequently when people use Android system info applications that can only see the 320 megs of volatile memory, despite the fact that the phone does actually contain 512 megs of RAM. We see it happen every time a new Galaxy S phone is leaked, <a href="http://androidandme.com/2010/11/news/new-gingerbread-and-samsung-nexus-s-photos-leak-via-xda/">even the Nexus S</a>.<br />
<br />
The explanation for this has always been that a certain amount of memory have been "reserved" by Samsung for the Android OS, and that memory is not visible nor available to applications. Despite this, I've never been able to figure out exactly how the system provides the 12.6 GB/sec of memory bandwidth it (theoretically) needs to push out 90 million triangles/sec with the PowerVR SGX540 GPU.<br />
<br />
I'm not quite sure how it happened, but in my meanderings across the interwebs, I ran across the following image on <a href="http://dev.odroid.com/projects/odroid-t/">odroid.com</a>, of the block diagram of the S5PC110 that they use for their developer board.<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="http://dev.odroid.com/wiki/odroid-t/pds/FrontPage/s_blockdiagram.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="436" src="http://dev.odroid.com/wiki/odroid-t/pds/FrontPage/s_blockdiagram.jpg" width="640" /></a></div><br />
<a name='more'></a>Read on, there's more!<br />
<br />
Careful observation of the POP (Package-On-Package, or "Stacked" circuits) module on the left-hand side shows 384 MB of LPDDR1 and 128MB of OneDRAM, a term I'd noticed on S5PC110 documentation on the list of supported technologies. I'd assumed that it wasn't used. I'd already determined that even though the Hummingbird supports LPDDR2, <a href="http://www.samsung.com/global/business/semiconductor/productInfo.do?fmly_id=834&partnum=S5PC110&xFmly_id=229">it only supports it at 400 Mbps transfer rate</a> (which LPDDR1 is capable of) and, with an x32 bus, only allows for 1.6 GBps data bandwidth, a far cry from the 12.6 GBps needed.<br />
<br />
So what is this OneDRAM? <a href="http://www.samsung.com/global/business/semiconductor/products/fusionmemory/Products_OneDRAM.html">According to Samsung</a>, "OneDRAM is a fusion memory chip that, can significantly increase the data processing speed between a communications processor and a media processor in mobile devices," and, "...this results resulting in a five-fold increase in the speed of cellular phone and <b>gaming console operations</b>, longer battery life and slimmer handset designs." (Sic.)<br />
<br />
Hear hear! 5 times 1.6 GBps still doesn't equal 12.6, but the 12.6 number is a something I arrived at using a lot of assumptions (4.2 GBps bandwidth needed by the PowerVR SGX540 to perform 28 million triangles per second, multiplied times 3 to make ~90 million triangles per second). I'm satisfied that the OneDRAM is that holy grail memory I've been looking for.<br />
<br />
Now, how to prove that it actually exists inside my Epic 4G? Remember, the S5PC110 Hummingbird doesn't come with memory built-in; that's something that gets stacked on when the phone is built. The ODROID guys could very well be using a completely different configuration; though that ~320 megs showing up over and over in Android system info apps hardly seems like a coincidence, assuming the difference between 384 and 320 is actually reserved memory for the OS' own system applications. The OneDRAM on the other hand would be reserved primarily for hardware use, such as the GPU as Samsung earlier suggested.<br />
<br />
I turned to one of my Android developer acquaintences, noobnl of xda-developers.com. Noobnl is well-known within the dev community, particularly the Epic 4G branch. He's built the universal one-click root for the Epic 4G, the ClockWork Recovery installer, built the original Epic 4G Andromeda ROM that fathered many others, and is currently working on porting Cyanogenmod 6 over to the Epic 4G (and is quite close!) Anyhow, when I showed him what I've run across, (hoping to see if he'd heard of this before, as he has a good handle on Epic hardware) he told me that I had made a good find. He also pasted some kernel code that clearly referenced OneDRAM, proving that the Epic 4G contains this technology.<br />
<br />
So there you go folks. The secret is out. The Galaxy S phones are likely able to achieve such amazing graphics performance via a 128 MB Samsung-proprietary high-speed hybrid memory solution. The remaining 384 megs of memory is plain-jane LPDDR1. The total is the promised 512 megs, and honestly, I wouldn't trade the OneDRAM for 128 megs more of LPDDR1 available application memory, but it's interesting how Samsung has kept the OneDRAM solution so quiet. It's likely enjoying the current GPU supremacy of the Galaxy S phones, unfortunately come Cortex-A9, LPDDR2 memory (> 400 Mbps), and dual-channel memory controllers, they will be back on a level playing field. Who could blame them for setting aside <a href="http://www.engadget.com/2010/09/07/samsungs-orion-is-the-1ghz-dual-core-arm-cortex-a9-weve-all-be/">Orion</a> and <a href="http://androidandme.com/2010/12/news/samsung-places-sizeable-order-with-nvidia-for-tegra-2-smartphones/">picking up NVIDIA's Tegra 2 SoCs</a> for their next-gen smartphones? It's a fast-moving industry out there, particularly when you <a href="http://www.engadget.com/2010/04/27/apple-purchases-intrinsity-just-498-more-arm-licensees-to-go/">don't have Intrinsity any longer</a> as your ace-in-the-hole. Curse you, Apple.Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com2tag:blogger.com,1999:blog-6569735948568642990.post-70483765096150834422010-11-28T00:06:00.007-05:002010-11-28T01:25:08.321-05:00Friends don't let friends use Quadrant...<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC_D-h4t_37uAWIket1TgiA-1O0YIQXSeXSey6wvK_A9TH7vcxjmp6K3eIoaTaVNOI59UhtRZUXt4UBTYjTrsD8Nh7dDSUuGQI-mqgOVdvq3hqAqBfRoTxlPGsZqlM9CFOlZDuXbs3haM/s1600/epiczomg.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="250" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC_D-h4t_37uAWIket1TgiA-1O0YIQXSeXSey6wvK_A9TH7vcxjmp6K3eIoaTaVNOI59UhtRZUXt4UBTYjTrsD8Nh7dDSUuGQI-mqgOVdvq3hqAqBfRoTxlPGsZqlM9CFOlZDuXbs3haM/s320/epiczomg.jpg" width="320" /></a></div><div style="text-align: center;"><span class="Apple-style-span" style="font-size: xx-small;">Image courtesy <a href="http://forum.xda-developers.com/member.php?u=2137417">cicada</a></span></div><div style="text-align: center;"><br />
<br />
</div>You've heard my express my concerns over the benchmark tool Quadrant <a href="http://sean-the-electrofreak.blogspot.com/2010/11/flaws-in-quadrant-demonstrate-need-for.html">recently.</a><br />
<br />
Well, I decided to put it to the test, and in doing so, I've set some records. Read on past the break!<br />
<a name='more'></a><br />
<br />
I've been spending a lot of time hanging out with various XDA-Developers in IRC recently, and I've seen them echo those frustrations. I've even watched a rather heated argument between two developers break out on a development thread over the fact that tweaks to improve Quadrant scores have no impact on actual performance.<br />
<br />
One of those developers, Dameon87, decided to prove his point by enlisting the assistance of another well-known Epic developer, noobnl, to add to his latest ROM release one such tweak. He wanted to prove how simple it was to exploit Quadrant, and with noobnl's help, how dramatically those scores could be impacted.<br />
<br />
I've been using Dameon's mod (a <a href="http://forum.xda-developers.com/showthread.php?t=841948">modded beta FroYo leak</a> that has been a lot of fun to use) for a few days and decided to see what kind of Quadrant scores I could manage with his latest version. I upgraded his ROM after release this morning, and was able to hit a Quadrant score of 2597. I posted this score to <a href="http://smartphonebenchmarks.com/">SmartphoneBenchmarks.com</a>, where it is the 8th highest score ever recorded and the very highest score for an Android phone with a stock clock speed. In addition, it is the highest Epic 4G score recorded, by more than double the previous record-holder.<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="http://dl.dropbox.com/u/11825908/snap20101127_124836.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="320" src="http://dl.dropbox.com/u/11825908/snap20101127_124836.png" width="192" /></a><a href="http://dl.dropbox.com/u/11825908/snap20101127_131805.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="http://dl.dropbox.com/u/11825908/snap20101127_131805.png" width="192" /></a></div><br />
I've posted about this score both on SmartphoneBenchmarks.com as well as XDA-Developer forums.<br />
<br />
On SmartphoneBenchmarks, an admin replied to <a href="http://smartphonebenchmarks.com/forum/index.php?/topic/157-this-is-why-quadrant-sucks/">my post</a> about my score (in which I expressed my concerns with Quadrant) with a candid response stating that they're working on their own benchmark tools to try to alleviate the problem by providing an alternate benchmark.<br />
<br />
On XDA-Developer forums, noobnl replied to <a href="http://forum.xda-developers.com/showthread.php?t=853377">the thread I started there</a> confirming that the hack he helped implement into the ROM does nothing to improve actual phone performance and is merely a way of inflating Quadrant scores.<br />
<br />
So seriously everyone, don't use Quadrant. Use GLBenchmark instead...Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-45399861198452881632010-11-13T11:17:00.001-05:002010-11-13T11:18:53.700-05:00Insights into the MicroSD card black markets...Trust me, if China's hardware black market fascinates you like it does me, you'll find this blog post very interesting.<br />
<br />
<a href="http://www.bunniestudios.com/blog/?p=918">http://www.bunniestudios.com/blog/?p=918</a><br />
<br />
I've never read anything else by this guy, but apparently he's a production manager for the <a href="http://www.chumby.com/">Chumby</a>, which is a rather interesting piece of hardware itself, particularly if you're the kind that likes to tinker.<br />
<br />
Essentially, his production line ran into a rash of quality control failures and upon investigation, he found that Kingston had sold him a large batch of MicroSD cards from a very questionable source.<br />
<br />
He goes into great detail and even drops a bunch of chips into acid to find out where they actually originated from. I learned a lot reading this article, and will undoubtedly be looking much closer at the SD cards I purchase in the future...Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-59784305235227399942010-11-13T10:01:00.003-05:002010-11-13T10:09:00.763-05:00Flaws in Quadrant demonstrate the need for care when analyzing benchmarksAndroid benchmark enthusiasts, check out this article: <a href="http://briefmobile.com/cyanogen-demonstrates-quadrants-flaws">http://briefmobile.com/cyanogen-demonstrates-quadrants-flaws</a><br />
<br />
I'm not sure how I've missed this article, but it's quite interesting. I knew that the problem with the Quadrant I/O performance in the Galaxy S phones (causing them to score significantly below phones like the Droid X, which do not have as powerful a CPU or GPU) could be remedied on the I9000 Galaxy S and the Captivate using a fix from XDA developers.<br />
<br />
The above article demonstrates however that the issue may go beyond the way the file system is set up in the Galaxy S. While the fix does produce actual performance gains on the hardware, phones like my <a href="http://forum.xda-developers.com/showthread.php?t=760928">Epic 4G apparently have no need for the fix</a>. While Quadrant scores are still affected, Samsung appears to have made changes to the file system on the Epic 4G to allow for quicker loading of data from NAND flash instead of the SD card.<br />
<br />
TL;DR - An I/O bug in other Galaxy S phones was rectified in the Epic 4G, but the performance gain is not reflected by Quadrant benchmarks.Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com1tag:blogger.com,1999:blog-6569735948568642990.post-89980374885214023652010-11-12T14:35:00.019-05:002010-11-13T11:05:35.442-05:00How To: Manage an Active Directory directly from a remote PC.The Active Directory Users and Computers MMC is commonly used to administer users in an Active Directory via the domain controller. The MMC snap-in is designed to be used by a user that exists on the domain that is being administered; it will determine your rights to make changes to accounts based upon your current login ID.<br />
<br />
So let's assume you want to manage an Active Directory on a <em>different</em> domain than the one you are on. Not only do you need to log in as a user on that domain, but you also need to force the snap-in to connect to a seperate domain controller. To do this, you will want to create a .BAT file that employs a runas command. (NOTE: This method can also be used as an additional layer of security so that you can administer the Active Directory from a non-administrative account, avoiding the risks of a trojan or virus gaining access to Active Directory information.) Hit the Read link for details!<br />
<a name='more'></a><br />
<br />
To start, create a standard notepad file, and include the following text. For DOMAIN_NAME, enter the domain name, for DOMAIN_CONTROLLER_ADDRESS, enter a fully qualified domain controller address and name, ie <em>domaincontroller1.mydomain.local</em><br />
<br />
<span class="Apple-style-span" style="background-color: black; color: white;">@set /p NAME=Enter a UserID:</span><br />
<span class="Apple-style-span" style="background-color: black; color: white;">@runas /netonly /user:DOMAIN_NAME\%NAME% "mmc dsa.msc /domain DOMAIN_CONTROLLER_ADDRESS</span><br />
<br />
(Omit the @ signs if you want the commands to be visible when the .BAT file runs. I also like to add a few @echo lines before the @set describing the function of the .BAT file etc.)<br />
<br />
Rename the file extension from .txt to .BAT. It should turn into a recognized Windows Batch file.<br />
Ensure that you have the Active Directory Users and Computers console installed. Type <em>dsa.msc </em>into the Run command line. This should launch the MMC. If it does not, download and apply the <a href="http://www.microsoft.com/downloads/details.aspx?familyid=e487f885-f0c7-436a-a392-25793a25bad7&displaylang=en">Windows 2003 SP1 Administration Tools</a> update.<br />
<br />
Now all you need to do is establish a VPN connection to the network you want to administer and launch the .BAT file. It will ask for your username and password on the target domain (and, if nobody else uses the file, you can always just remove the first line and replace <em>%NAME%</em> with your user ID).<br />
<br />
This will launch the snap-in as if you are connected to that domain, and will allow you to administer that Active Directory remotely.<br />
<br />
NOTE: Due to the sensitive nature of the data involved in Active Directory account administration, your VPN should use encryption methods to keep password data secure.<br />
<br />
PS: Using a terminal server connection to the domain controller is another possibility. This solution is intended to avoid that route and keep administration simple and efficient.Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-56878792850322314292010-11-10T10:29:00.000-05:002010-11-10T10:29:38.484-05:00Poll Closed: Which Galaxy S Phone should I get?NOTE: I won't be direct linking the polls any longer. It looks like Google reuses their poll IDs, so over time it'll just end up showing the results of someone else's poll anyhow. I will be posting the numeric results however.<br />
<br />
Below are the results of the poll:<br />
<br />
Verizon Fascinate 3 (13%)<br />
Sprint Epic 4G 11 (50%)<br />
AT&T Captivate 3 (13%)<br />
T-Mobile Vibrant 5 (22%)<br />
Votes so far: 22Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-71304445691666313122010-11-10T09:02:00.002-05:002010-11-13T10:02:15.209-05:00FroYo on the Epic, coming Soon™Report is in that Sprint has <a href="http://forum.xda-developers.com/showthread.php?t=829139">released Android 2.2 (FroYo) for the Epic in beta form</a> to select Sprint employees. The FroYo build was leaked to XDA-Developer "noobnl", who has chosen <a href="http://forum.xda-developers.com/showthread.php?p=9025574#post9025574">not to leak it</a> partly because the build is incomplete and buggy, and partly to protect the indentity of the Sprint employee who distributed it. He did however distribute the build to two other trusted developers who will use the code to prepare custom FroYo mods.<br />
<br />
The FroYo build does not appear to contain USB TV-Out and FM tuner options that many Epic owners have been clamoring for, since it appears it's merely a software / firmware issue to enable these features. We may have to wait for XDA-Developers or Cyanogen to add these features. And, speaking of Cyanogen, it appears that <a href="http://forum.xda-developers.com/showthread.php?t=798232">they have been working on Cyanogen 6.1 for the Epic</a>, which could end up being pretty... well... epic.<br />
<br />
So, long story short, FroYo is coming to the Epic 4G as promised... so fellow owners, hang in there.<br />
<br />
UPDATE, 11/13: It seems XDA-Developers has been working faster than expected. Only 1 day after I posted this, the following <a href="http://forum.xda-developers.com/showthread.php?t=836111">rooted leak of Android 2.2 was posted.</a> This build is, for the most part, stable, though some applications will force close (however, this is quickly being rectified on a day-by-day basis). Stock browser performance is somewhat poor and there are a few other minor quirks. Quadrant performance is not stellar, but it is a beta build and <a href="http://sean-the-electrofreak.blogspot.com/2010/11/flaws-in-quadrant-demonstrate-need-for.html">we've already discussed why Quadrant scores should be taken with a grain of salt on Galaxy S phones.</a><br />
<br />
I may load it onto my phone later today if I have time.Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-17181354308013125932010-11-10T08:46:00.000-05:002010-11-10T08:46:16.460-05:00The Epic ExperienceI finally got around to <a href="http://forum.xda-developers.com/showthread.php?t=770388">rooting</a> my Epic 4G the other night, and after <a href="http://forum.xda-developers.com/showthread.php?t=782300&page=47">replacing the stock recovery boot software</a> I proceeded to install the <a href="http://forum.xda-developers.com/showthread.php?t=811030">Phoenix kernel</a> and the <a href="http://forum.xda-developers.com/showthread.php?t=797239">Epic Experience shell</a>.<br />
<br />
I have to say, I'm very impressed with the performance of the kernel and the features provided by the shell. In addition to some nice little tweaks offered by the shell (such as 270 degree rotation, performance tweaks, additional options, removal of ads, and all the software on the other Galaxy S phones), the kernel has managed to run my Epic for over 16 hours from full to empty, <i>including </i>10 hours of standby, 1 hour of light use,<i> </i>2 hours streaming Pandora via the speaker at nearly max volume, and about 3 hours of video playback with the screen brightness at max and speaker blaring. All with a boot sequence that takes about half as long and no loss of Android speed or performance.Very cool!Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com1tag:blogger.com,1999:blog-6569735948568642990.post-32460061440694803892010-10-16T09:31:00.007-04:002010-10-16T09:39:51.733-04:00Samsung Transform - Sub-par hardware in a pretty package.<span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">J</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">ust finished reading the <a href="http://www.engadget.com/2010/10/15/samsung-transform-review/">review on Engadget of the Samsung Transform</a>, a "mid-end" Android phone launching on Sprint that shares a lot of similarities with my Epic 4G on the surface. But as the review notes, hardware performance is pretty terrible. And that's not surprising since the Samsung S3C6410 inside is an ARM11 chip that was released in 2008.</span><br />
<br />
<span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">That's some pretty tired hardware chugging underneath the surface of the Transform, almost comparable to the hardware in the Droid Eris. The problem is, the hardware in the Eris was called old when it launched nearly a year ago. </span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">We shouldn't be seeing ARM11 chips anymore. We're almost 2 generations ahead of that tech.</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"> </span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"><br />
</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"><br />
</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">Keep in mind that Cortex-A8 chips are way faster MHz for MHz than the ARM11 chips. The 667 MHz processor in the Transform accomplishes the same amount of instructions per second as a Cortex-A8 running at 417 MHz. On top of that, Cortex-A8's ARMv7 architecture accomplishes more with less instructions than the Transform's ARMv6.</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"> </span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"><br />
</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"><br />
</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">In short, the 550 MHz Cortex-A8 processor in the original Droid (which launched almost a year ago) kicks the pants off this chip. And that's not even going into graphics processing power, where the Mali-200 GPU in the Transform doesn't fare any better.</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"><br />
</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;"><br />
</span><span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">Releasing phones like this is not healthy for Android, which is moving in a direction that requires phones with better hardware, not stuff that's nearly 3 years old. The new JIT compiler in FroYo (Android 2.2) will allow this chip to perform at least reasonably well by boosting average CPU performance over 4 times. This seems to be the only possible justification that Sprint might have used to launch this phone. Unfortunately, they've made one major oversight; it won't help the miserable performance of the GPU. </span><br />
<br />
<span class="Apple-style-span" style="font-family: Helvetica, Arial, sans-serif; line-height: 17px;">Here's hoping this isn't a trend. Improvements to Android's compiler should not be used as an excuse to launching obsolete hardware.</span>Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com2tag:blogger.com,1999:blog-6569735948568642990.post-85958251947470325592010-10-13T11:24:00.005-04:002010-10-13T13:24:44.688-04:00Red handed...So I caught the guy who had been <a href="http://sean-the-electrofreak.blogspot.com/2010/04/operation-fury-revenge-is-dish-best.html">breaking into cars in my driveway</a>, <a href="http://sean-the-electrofreak.blogspot.com/2010/04/shame-on-me-once-shame-on-me-twice.html">again and again</a> back in April. No, it wasn't with the home surveillance system I set up (and still have yet to write up a How To on). My webcam did not have a separate IR filter like most do, and I'd been unsuccessful in getting it to be able to see anything in the dark, when the guy had been sneaking into the driveway. No, I've just been keeping my car locked and telling myself that I'll get around to getting up a night-vision camera set up.<br />
<br />
I'll start at the beginning. Sunday, Lynn and I took our daughter out on the Wayne County Apple-tasting tour. Wayne County is kind of like the "rural farmland" in Monroe County's backyard, but has a lot of fruit orchards and wine vineyards due to the proximity of Lake Ontario, which provides a lot of moisture. It was a long but exciting day as we trekked across the county to visit various farm markets and vineyards (though we had to avoid more than a few sips of wine). We arrived home and collapsed in the house. An hour or so passed before Lynn realized she'd left her new Blackberry in the car, so I went out the back door to get it. That's when I met our thief. Read past the break for the full story.<br />
<a name='more'></a><br />
<br />
It was about 8:30 in the evening. I stepped outside, and saw the new Nissan Versa owned by my upstairs neighbor Patrick (an Irish-born bartender, complete with brogue) parked only a dozen or so feet from the back door, right under a large spotlight that lights up the back door. The door was open, and someone was leaning into the car. At first, I thought it was Patrick. As I walked towards the car heading toward Lynn's car, a man suddenly ducked out of the car and stared at me, standing only a few strides away. It wasn't Patrick. He was a middle-aged African American man, maybe 45 or 50. He had on a thick padded jacket and baggy painter pants. He wore a cap, but it was dark enough that I had trouble telling the color... maybe green. He was about my height, around 6 foot, but it was hard to tell how much he weighed... the way his clothes hung on him, probably not a whole lot. But then, I'm not more than a buck thirty myself.<br />
<br />
I stopped, and asked "...Can I help you?"<br />
He glanced back in the car and reached for something, saying "I'm just getting my change."<br />
I stepped forward. "This isn't your car..."<br />
He looked back at me, obviously nervous. "It's my boy's car."<br />
"Really... who is your boy," I said. He stepped away from the car as if he wanted to bolt past me down the driveway and replied, "my... he's my boy."<br />
I took a step backwards down the driveway and motioned for him to follow me. "Why don't we go talk to 'your boy' then."<br />
He followed me, but only because my back yard is fenced off with high fences and he had no other direction to go. The driveway is fairly narrow and has the side of our apartment and the next door neighbors on either side.<br />
I said, "I don't think this is 'your boy's car'. I think you're looking for something to steal. Lets find out if Patrick knows who you are." <br />
We had reached the sidewalk, and the front door to the house was on our right. He stepped to the left.<br />
"You go get him then."<br />
"No... if you're not coming with me, then I'm going to get the cops, that's what I'm going to do. And you know what? <i>My</i> car got broken into a few months ago in this driveway. A few weeks after that, my <i>girlfriend's </i>car got broken into. And you know what? I think you did it..."<br />
He broke in, "no... not me, I wouldn't..."<br />
I kept going, starting to back down the driveway. I'd left my cell in the house. "I think you've been coming down here and trying to steal from us every chance you've got. <span style="font-size: small;">So you better start walking</span>."<br />
He turned and began sauntering down the sidewalk. I started to yell as I watched him go. <br />
"No, you know what; START RUNNING. <b>THE COPS ARE GOING TO BE COMING AND YOU BETTER NOT STICK AROUND F*CKER!</b>"<br />
(I know, I'm a tough guy now that he's walking away... :-p)<br />
I started booking down the driveway and headed through the back door, yelling, <b>"PATRICK! I NEED YOU TO COME DOWN HERE. I GOT SOMEONE BREAKING INTO YOUR CAR!"</b><br />
<br />
I grabbed my phone (the new Epic 4G) and dialed 911, crashing back through the back door again and running back onto the street, intending to follow the guy while I called the police. But he was gone. He must have headed up someone's driveway or hid somewhere. I gave the operator my description of the guy, wishing I'd been able to keep him longer under the spotlight for a better view of his face. I was standing in the street as Patrick and his girlfriend Jen, came down. I gave them a short version of what happened and Jen looked up and down the street while Patrick went to see if anything had been taken.<br />
<br />
Half an hour later the cops showed up. I was sitting in the house at that point with my ScannerRadio app running on my Epic, listening to the Monroe County Police. I'd only switched it on a couple minutes prior and hadn't heard anything interesting yet. I was still holding my phone when I answered the door. A young cop was on the porch with 2 others standing on the steps. He asked me if I'd called in regarding the attempted theft and I said I had.<br />
<br />
The radio on the hip of one of the cops let out a burst of static and said something unintelligible, and a moment later my phone did the same. The cop looked at me in amazement and turned and looked at his buddy. "Whoa did you hear that?! He's listening to us on his phone!" The cop in the front turned to look at them. "Can you believe it?" the other guy said. The original guy laughed "I guess there really is "an app for that!" The first cop turned back to me. I was feeling kind of embarrassed at this point. "I provide tech support to the City of Chicago PD so normally I just use it for them," I lied, and shut down my phone rather than fiddle with killing the task. Patrick came down from upstairs and reported nothing had gone missing, fortunately.<br />
<br />
I told them what happened and they told me they had already stopped someone who matched my description and said that they determined it wasn't the guy they were looking for. I told them that it was possible that he doubled back down the street in the other direction since I'd seen him head to the left out of my driveway. At least, that's what I would have done. They said they would look around for a bit and they headed out.<br />
<br />
It was a nerve-wracking evening after that. Lynn's been frightened to go outside alone and has chastised me for confronting the guy. I just remember being so furious when I realized that this was the guy and that he's been so brazen as to try to steal from us while we were home and my daughter slept in the house right behind me.<br />
<br />
So hopefully, he's not coming back. I'm torn between trying to get a night-vision camera set up in case he does, and just hoping that this is the end of it. We'll see...Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com1tag:blogger.com,1999:blog-6569735948568642990.post-28681066621575102712010-10-04T11:09:00.004-04:002010-10-16T09:33:23.086-04:00An Epic upgrade...As you may have guessed, I've gone and gotten an Epic 4G from Sprint, which I'm currently taking for a trial run.<br />
<div><br />
</div><div>Sprint's network has definitely proven to be a bit more spotty than Verizon's, but not unbearably so. I've been spoiled on Verizon. 4G coverage is actually reasonably good, even if the speeds still don't compare to the WiFi connection I have when at home.<br />
<br />
I've had the phone for almost 3 weeks now (yeah... sorry for not mentioning anything earlier, life has been busy), so I'm coming up on the end of my trial run. I think I'll be sticking with Sprint, though the network may prove to test my patience.<br />
<br />
I'm not going to rattle on too long about the phone, there's dozens of reviews on the web that'll tell you about the Epic 4G. All I can say is that it definitely meets my expectations and is an excellent piece of hardware. It is not, however without its faults, as Samsung's build quality issues do show through. In the first couple of days I got the phone, sometimes the capacitive Menu button would spontaneously and repeatedly act as if it had been touched, even if I wasn't touching it. Other times it would not respond at all. I found that the device was running a pre-production ROM, and had to manually update it. Once I did, I immediately got an OTA update and the problem disappeared. Perhaps Sprint should take the blame for that one. There are also a few very thin gaps (fractions of a millimeter) between the glass on the front and the bezel, which already are gathering small amounts of dust.<br />
<br />
But the complaints are few when compared to the great things I have to say about this device. The screen is amazingly bright, colorful, and responsive. Tilt and acceleration sensors are very accurate. Battery life is good, all things considered. I've had no issues with the GPS since the updates have come through. Front camera works right in the main camera app (Self-Portrait option) and the slide-out keyboard has a nice spring open, feels solid, and the keys themselves are well spaced and have excellent response and travel.<br />
<br />
The phone is zippy, but does hit an occasional snag. I'm hoping Froyo works this out of the system with the new JIT compiler, though the problem ultimately likely lies with the I/O bug that plagues the Galaxy S line. I know that the XDA developers have produced a fix for the Captivate, hopefully we'll see one soon for the Epic.<br />
<br />
As for Samsung's UI, I've played around with a couple custom home launchers and themes but I keep finding myself coming back to TouchWiz. It might not be pretty, but it does get the job done. Perhaps I'll get rid of it when I get around to rooting my phone, but I've got my 7 homescreens already organized at this point and I'm perfectly fine with the way it looks. <br />
<br />
I'll leave things at that for the time being. I'll have further things to write about regarding the phone and Android in general in the coming week, so stay tuned... I'll try to do a better job of keeping my blog up to date, I promise!</div>Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-23063594911046126142010-09-12T09:23:00.004-04:002010-09-17T17:38:57.612-04:00Hard drive failure...So Lynn's Sony VAIO laptop started failing S.M.A.R.T last week. I put in a rush order for a replacement drive on Newegg on Wednesday after spending a day or two backing up data from her laptop to mine and waiting on a response from Toshiba about whether they're able to replace the drive under their warranty or if I have to go through Sony.<br />
<br />
After I got no response, I decided to just replace the drive myself. I really don't want to ship the laptop off to Sony and wait weeks for it to get sent back. My girlfriend in particular isn't too thrilled with that idea.<br />
<br />
So Friday the new drive (a 320 GB Seagate Momentus) arrived. Yesterday morning, I attempted to clone the data on the Toshiba drive (250 GB btw) to the Seagate drive. Clonezilla refused to do this, stating that the drive was flagged for disk checking. Unfortunately, ChkDsk freezes when attempting to repair the drive. I tried cloning with Ghost, and while it allowed me to run the clone process, it froze not long after reporting the detection of a few bad sectors. Last night I fired up HDD Regenerator and began recovering the bad sectors. Frankly, I should probably have done it earlier; but this stuff ain't easy when you've got a 2-year-old running around.<br />
<br />
So HDD Regenerator is about halfway done after approximately 12 hours. It's recovered 3 bad blocks on the Toshiba HDD. My girlfriend was frustrated last night about not having a laptop to use, so I burned an Ubuntu 10.04 CD and booted direct from CD. A little unnerving running an OS with a gaping hole in the bottom of the laptop where the HDD is supposed to be; it feels a little unnatural! In any case, by the time I'd burned the disc and come back to the bedroom, she was fast asleep. But hey, now she can use the laptop until I get her new drive cloned.<br />
<br />
Hopefully once the drive is repaired, Ghost won't have any issues cloning the damaged drive. Once the damaged drive is copied over, I plan on pulling it apart and taking a look inside. I'll report back here on my progress. :)<br />
<br />
UPDATE: After 24 hours of rebuilding data, I've given up. 12 hours has seen about another 1/6th of the data on the drive recovered, and even then, only about 2 out of 3 bad sectors are being successfully restored. I've copied the hidden Sony Recovery Volume to the new drive and I'm simply reinstalling from factory default that way. I've saved the most important data to my own laptop and I'll move it back after a clean install (once I've gotten rid of the Sony bloatware).<br />
<br />
UPDATE 2: All went as planned. Killed all the VAIO crap bogging down startup and copied the important data back onto the drive. Lynn's happily using Windows once again. :)Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com0tag:blogger.com,1999:blog-6569735948568642990.post-45368716565020547662010-08-29T18:12:00.006-04:002010-10-16T09:34:15.900-04:00Help me pick my Galaxy S...Alright folks, I need your help. I have to decide which Galaxy S phone I'm going to buy this fall.<br />
<br />
Currently, I'm torn primarily between the Verizon Fascinate and the Sprint Epic 4G. Here's the Pros vs. Cons for me:<br />
<br />
<b><u>Fascinate</u></b><br />
<b><br />
</b><br />
Pros:<br />
Already on Verizon (and so is my girlfriend)<br />
Better network<br />
Thinner and lighter<br />
<br />
Cons:<br />
Bing Search (Per Engadget it can't be changed to Google either!)<br />
No front-facing camera.<br />
Expensive monthly payment<br />
Only 3G connection<br />
<br />
<br />
<b><u>Epic 4G</u></b><br />
<b><br />
</b><br />
Pros:<br />
4G connection (available in my city too)<br />
QWERTY keyboard<br />
Front-facing camera<br />
<br />
Cons:<br />
Would have to switch carriers (and my girlfriend doesn't really want Sprint)<br />
Less reliable network<br />
Still a fairly expensive monthly payment, and $10 extra for 4G data service.<br />
Phone is heavier and thicker<br />
<a name='more'></a><br />
<br />
Other than that, the phones are pretty much the same aside from the relatively minor differences of bundled software. I want the front-facing camera and the physical keyboard, but I worry about call quality and reception.<br />
<br />
Be sure to put your vote in the poll at the top of my blog, and if you'd like to recommend the other two options (Captivate and Vibrant), please feel free to do so!Electrofreakhttp://www.blogger.com/profile/00831677178752927710noreply@blogger.com4