Archive for the ‘tools’ Category

Hacking the ADB USB Driver for Acer A500

Thursday, October 27th, 2011
; ACER Iconia Tab A500
%SingleAdbInterface%        = USB_Install, USB\VID_0502&PID_3325
%CompositeAdbInterface%     = USB_Install, USB\VID_0502&PID_3325&MI_01

I wanted to access my Acer A500 via ADB (Android Debug Bridge). When I connected it I was able to access it as a USB Mass Storage device, but ADB didn’t see it as a device. I found a page describing how to install the USB ADB drivers, but Windows said the drivers were not valid for my hardware.

I looked in the android_winusb.inf file and it lists a number of individual supported devices, but the Acer A500 wasn’t there. One of the reasons I picked the A500 was that it runs straight up Android, and not a modified version. So in theory the stock driver should work fine (yes, it is a hardware driver, but I figured what the heck.) It is possible that Acer has a download for this too, but 3rd parties tend to bundle extra junk, so I thought I would try the stock driver.

In theory this should work just as well for other Android devices. Proceed at your own risk.

1. So I went into Device Manager and found the tablet under Unknown Devices:

Other Devices

2. To get the Hardware ID’s for right click and select Properties, Details tab, then select Hardware Ids from the Property drop down:

ACER Iconia Tab A500 Properties - No Driver

3. In the android_winusb.inf file I added the following in the [Google.NTamd64] section.

; ACER Iconia Tab A500
%SingleAdbInterface%        = USB_Install, USB\VID_0502&PID_3325
%CompositeAdbInterface%     = USB_Install, USB\VID_0502&PID_3325&MI_01

The line with the semicolon prefix is a comment. You will see that the other lines match with these.  The ID’s come from the Hardware Ids in device manager (compare to screen shot.) If you are trying a different tablet then yours may be different.

4. Tell Windows to Update Driver (driver tab) then browse to that folder. My folder was “C:\Dev\android-sdk-windows\extras\google\usb_driver\” but if you installed the SDK in a different path then yours may be different. It will warn you that it can’t verify the publisher of the driver. I clicked “Install Anyway”.

Now Device Manager shows it as an Android Composite ADB Interface under Android Devices, and it shows that a driver is loaded.

Android Composite ADB Interface PropertiesI could further edit the inf file to change the name that is displayed, but now it works with ADB for deploying and debugging my Android projects.

Update: Acer does have a USB driver for download, but it doesn’t provide an ADB driver.

Web Based IDE’s

Monday, March 28th, 2011

I started a computer club at my son’s middle school. One of the limitations is that no software can be installed, and there are no development tools on the computers. So I set out to find web based IDE’s where we can write and run code via the web browser. This is what I found.

W3Schools.comw3schools.com

I started with w3schools.com, which is a favorite reference site of mine that contains tutorials on pretty much every web technology imaginable, including HTML, JavaScript, SQL, CSS, PHP, XML, SOAP, etc.

For the client side technologies they have a great “try it yourself” functionality where you can enter JavaScript, etc. and have it display the output for you.

The process is to edit in the window on the left, then click the “Edit and Click Me” button to view the output on the right. There is no debugging or error reports, you just see what comes out. Makes it really hard to track down JavaScript typos.

It would appear some of w3schools content isn’t completely accurate, so use with caution.

JSFiddle.netJsfiddle.net

If you are developing with HTML/CSS & JavaScript and one of the common public frameworks then check out JSFiddle. It offers a resizable split view where you can edit your HTML, JavaScript and CSS all independently, and then see the combined result. Additionally it offers the option to save, share and reload “fiddles”.

Other nice features include:

  • Syntax highlighting
  • TidyUp code formatting
  • JSLint validation
  • Access to a wide selection of JavaScript frameworks
  • Discussion and forks of public fiddles

It is currently in Alpha with a limited number of public alpha accounts available

IDEone.comIdeone com thumb

This is an honest to goodness web based IDE and compiler. Type the code with syntax highlighting, compile it, provide input,

What is ideone?
Ideone is something more than a pastebin; it’s an online compiler and debugging tool which allows to compile and run code online in more than 40 programming languages, including Pascal.

How to use ideone?
Choose a programming language, enter your source code and input data into text boxes. Then check or uncheck run code (whether to execute your program) and private (whether not to list your code in the recent codes page) checkboxes, click the submit button and watch your snippet being executed.

jsbin.com

Jsbin com thumb

JS Bin is an open source collaborative JavaScript debugging tool.
Similar it offers HTML and JavaScript editing and previewing. It has a nice and clean user interface and also includes common JavaScript frameworks.

Error checking is provided by the JSHint project. Like JSLint with the addition of an API.

JSBin is completely open source, so you can download it and implement it on your own server.

Snipt.netSnipt.net

Snipt is your collection of frequently used commands or code snippets.

Because even Subversion gurus forget the ’svn merge’ syntax sometimes.

It’s good for storing small pieces of code or commands that you use rather frequently, and will probably forget.

Not really an IDE. No running or debugging. It will syntax highlight the code you upload though.

pastie.orgPastie org thumb

Pastie is a lot like Snipit. You can paste in bits of code and it will provide syntax highlighting and the ability to share it with others.

Pastie syntax highlights a number of different languages, but offers no execution, debugging, etc. Useful for sharing code. You can also search, but it is a plain text search and you don’t specific which language you are searching for, nor is there any useful meta information like description, title, etc.

A few others that I didn’t look to closely at include:

  • csdesk.com – Similar to jsbin and jsfiddle, except focused on HTML and CSS.
  • Cloud9IDE.com – JavaScript focused. Requires a sign up for a 30 day trial.
  • CodeRun.com- I had high hopes, but it didn’t work in most browsers I tested it in. This one supports development in Silverlight, C#, PHP, ASP.NET and a number of other technologies, with syntax highlighting, debugging, etc. Will keep my eye on this one.

WordPress and MediaWiki Integration

Sunday, August 31st, 2008

Found some great instructions on how to get MediaWiki and WordPress to share login credentials.  I manually hacked something like that a long time ago, and it was a pain because everytime there was an update I had to re-hack it.  Jon Davis‘ solution is a plugin so it should work with new versions.

Beyond Compare 3 Beta

Tuesday, July 8th, 2008

One of my favorite tools for software development beyond Delphi is Beyond Compare.  It is the best tool for comparing and merging files, directories, etc.  It is also written in Delphi.

They happen to have a Beta for version 3 available now.  Beyond a whole slew of new features for comparing and merging source files, they are also now running natively on Linux.  I sent them an email about the Linux support and they are using Kylix along with some GUI wrappers of their own to make development smoother.

click for screenshotThey have a full list of the cool features in version 3, along with upgrade information.  One of the really cool features I am looking forward to is the 3-way text merge.  I also really like the image comparison plug-in they offer.

I have found it is an indispensable tool when I am moving files between one computer to another.  If the process fails part way through do to network issues or whatever, Beyond Compare effectively lets me resume where I left off.  Additionally, I can quickly see if some of the files are out of date or corrupted.  A great way to trouble shoot system differences in testing software.

PasswordMaker

Wednesday, June 11th, 2008

Ever since I discovered PasswordMaker.org, I’ve been recommending it, especially in my cryptography trainings.  What it does is take a hash of your super secret password with the url of current site and creates a password.  Your super secret password is never transmitted, and since the hash is secure, it cannot be reversed to your password.  So each site has a different password, so if any one of them is compromised, then you only need to reset that one password.

Joel was looking for a solution to his password storage and syncronization issue over at StackOverflow. So I sent him an MP3 quote and they played it on their podcast.  Joel liked the solution, Jeff not so much, but his solution is to just memorize a few passwords.

Their podcast is hosted by IT Conversations now.  They played at 57:14 – The audio quality isn’t great.

Updated Delphi Road Map

Wednesday, April 23rd, 2008

Nick just posted an updated Delphi Road Map.  Check it out.  This looks to be one of the most significant Delphi releases in a long time.  This road map is just covers native code, not .NET – that will be in a future road map I guess.  Anonymous Methods, Generics and Unicode stand to be huge langauge and framework improvements.

Scripting Engine Unit Template

Thursday, April 10th, 2008

I must say, Delphi Live Templates and the Scripting Engines are REALLY amazing.  I wanted to make a new scripting engine, but then I got to thinking that my scripting engines had a lot of similar code, so I figured I would make a Live Template to create Scripting Engines.  I based it on Nick’s BaseScriptingEngine from his article on Creating a Live Templates Scripting Engine.

I then created a Template Project for the Scripting Engine Package.  So I can pop out a scripting engine now faster then you can say “Delphi Rocks”.

I thought I would share my Scripting Engine Unit Template.  You will probably want to make your own Scripting Engine Package Template Project, but if there is enough interest I will share mine out.  You will most likely want to modify this template to suite your own framework.

[Scripting Engine Unit Template]

Note: This references my general scripting engine to create a new GUID.  You will need to do that manually until I dress up my general scripting engine for public consumption.

Delphi Random Class Namer

Wednesday, April 9th, 2008

Ever wonder what class to write next in Delphi?  Well, combine Delphi Live Templates (including a custom scripting engine) with www.ClassNamer.com and you never have to wonder again.

Although how to implement that class is another question.

If there is any interest in the code let me know and I will polish it up and post it.  I created a random HTTP parser script engine and then the live template does the rest.  I figured this would be a fun way to get familiar with Live Templates and the custom scripting engine.  This is a really powerful feature of Delphi.

Advanced Downloads Page

Saturday, January 26th, 2008

I’ve compiled all my Advanced Downloads links into a single page to make it easy to find for anyone who was in the Seattle Code Camp session on Advanced Downloads.

Free Camtasia and Snagit

Monday, November 26th, 2007

When it comes to screen capturing, Techsmith’s products Camtasia and SnagIt are probably the best, but there are good free alternatives. It would appear if you know where to go (links at the bottom), you can get a legitimate free license for Camtasia and SnagIt (earlier versions at least, that are eligible for a discounted upgrade.)

Camtasia is a screen video capture tool. It produces a video (animated GIF, SWF, AVI, etc.) from a series of screen shots over a period of time, usually with audio. It has a lot of nice extras and a good editing system. DebugMode’s Wink is a great tool for free. While Camtasia is more like a video editor, Wink is more like a slide show editor. It will take a screen shot at a keypress, mouse click or automatically at specified intervals. Then the editor is based on individual screen frames instead of a sequence of video. While it some regards it competes with Camtasia, it serves a different purpose as well. Worth checking out, especially at the price.

SnagIt is a single frame screen capture tool. Typically I just use [Print-Screen] or [Alt] + [Print-Screen] to capture the whole screen, or just the current window respectively. Then I paste it into IrfanView (a great quick image viewer, editor and converter) to make any changes necessary. Honestly though, SnagIt offers a number of additional features that are worthwhile. However I have found that MWSnap has most of the features I need available free. I haven’t done a side by side comparison of the tool, but I imagine MWSnap would hold up quite nicely.

With free versions of SnagIt and Camtasia though, that provides some stiff competition to the other free versions. Granted these are previous versions, which is risky on Techsmith’s part, since the biggest competitor to most products is its previous version – why pay the upgrade fee when the old version still works?  If you want an older version of many freeware / shareware titles, check out OldVersion.com.

Camtasia Studio 5 (the version I have) is $300 and has a lot of nice feature upgrades from version 3.  You can still download version 3 and then get your free license straight from Techsmith.  It appears it was a promotion offered to PC Plus Magazine readers in the UK, but the form lets you specify any country and I don’t see anywhere it says “only” a limited group.  Not sure how long the promotion is good for either. [Source]

Check out Digital Inspiration Technology guide for the details on downloading and getting a free license for SnagIt 7.2.5 (current version is 8). It appears to be a free promotion for UK .NET Magazine.