All posts by Jeremy Loper


Notice: force_ssl_login is deprecated since version 4.4! Use force_ssl_admin() instead. in /var/www/vhosts/casual-dev.com/httpdocs/wp-includes/functions.php on line 3573

Whats a CADI?


Notice: force_ssl_login is deprecated since version 4.4! Use force_ssl_admin() instead. in /var/www/vhosts/casual-dev.com/httpdocs/wp-includes/functions.php on line 3573

Notice: force_ssl_login is deprecated since version 4.4! Use force_ssl_admin() instead. in /var/www/vhosts/casual-dev.com/httpdocs/wp-includes/functions.php on line 3573

Notice: force_ssl_login is deprecated since version 4.4! Use force_ssl_admin() instead. in /var/www/vhosts/casual-dev.com/httpdocs/wp-includes/functions.php on line 3573

Notice: force_ssl_login is deprecated since version 4.4! Use force_ssl_admin() instead. in /var/www/vhosts/casual-dev.com/httpdocs/wp-includes/functions.php on line 3573

Notice: force_ssl_login is deprecated since version 4.4! Use force_ssl_admin() instead. in /var/www/vhosts/casual-dev.com/httpdocs/wp-includes/functions.php on line 3573

Overview

CADI or CASUAL’s Automated (USB)Driver Installer is an integrated part of CASUAL, which is designed to streamline the CASUAL process on Windows. CADI has its has its own Open Source repository and you can find stand-alone binaries there.  CADI was created by jrloper(Jeremy Loper), aka. “Looper”.  While CASUAL initially used a semi-automated generic driver installer bundled with Heimdall, due to the overwhelming amount of users requiring assistance with this tool, a more reliable & automated system would be required to continue Windows support. CADI was initially conceived in C++ for Samsung devices only, using the same back-end (libwdi by Pete Batard) as the original semi-automated tool; this however, only introduced new problems to work around. Ultimately libwdi was dropped and CADI was ported to java to become part of the CASUAL engine.

Current functionality

Single/Mass device installs
Single/Mass device uninstalls

CADI is currently comprised of:

In order to avoid native calls from java, a customized version of the Microsoft Devcon utility (MS-LPL) is used to make all necessary SetupDi API calls. CADI uses REGEX to parse commandline output from Devcon, and determine the next applicable step.

Its important to note, CADI (in its current state) cannot be run independently from CASUAL. Independence is possible, though no implementation is currently planned.

Driver Details

CADI uses libusbK, which is a generic WinUSB compatible driver for libusbx communication with Heimdall. Two sets of drivers are used (each containing an x86/x64 variant), one built with WDK 7.1 (allowing for XP support) the other built with WDK 8.0 (for Windows 8 support). All driver components are built & digitally signed by Jeremy Loper.

CADI has its own Open-Source repository separate from CASUAL so you can find stand-alone non-java Windows-executable distributions there.  Also, expect more driver awesomeness from jrloper and the rest of us in the future.

Share on Google+Share on FacebookTweet about this on TwitterShare on Reddit