I3C BasicSM Controller Python Package for Scout SC4420

One of the biggest barriers to getting up and running with I3C right now is the limited options when it comes to devices and tools that are capable of acting as an I3C Controller. There are many devices on the market that support I3C Target mode operation that can be easily acquired on dev boards, but the same cannot be said about I3C Controllers. Regrettably the current generation of our Binho Nova USB Host adapter does not support I3C (we'll have more news on that soon), but in the meantime we're eager to help make I3C Controller functionality more readily accessible.

Update: We just launched our own USB to I3C host adapter! You can find out all about it here: Binho Supernova Product Page. Not only does the Supernova come with point-and-click GUI software, it also features support for automation using our python library as well as a C/C++ SDK for direct integration into custom applications. As a result, we're retiring the I3C Basic Controller Package for SC4420 described on this page as we're able to offer a much better solution using the cohesive hardware/firmware/software stackup we developed for our Supernova host adapter. The content on the page below is kept only for reference.

Binho is proud to introduce the I3C Basic Controller Python Package for the Scout SC4420 Serial Bus Controller by Signal Craft Technologies. 

Just as we built our world-class I3C Basic Protocol analyzer plugin for Saleae Logic, we're at it again! This time, we've created a Python Package to make using the low-cost Scout SC4420 Serial Bus Controller an incredibly powerful development tool for teams working with I3C.

Hmmm... Well that's neat. But why do I need this?

The Scout SC4420 is limited to a terminal-style interface over a virtual com port. There is no desktop-based software provided. Furthermore, the user's manual provides just a sequential list of commands and not many clues on how to string them together to perform typical I3C bus transactions. Furthermore, the responses the device provides over the terminal interface are non-uniform and unique to each command, making parsing the responses a non-trivial and time-consuming endeavor. Take a look at the demo below to see how it is to use the SC4420 using its built-in command terminal. This brings up the bus and performs a GETBCR, GETDCR, and GETPID CCC for the single I3C Target on the bus.

Manual Operation with VIrtual COM Terminal

Yikes! That's painful. We've gotta do something about this...

We spent the time putting together a robust interface to make using the Scout SC4420 a much more enjoyable experience. Following the example above, here's how you can use our Python package to perform the same transactions as shown in the manual demo above.

In a Python Script

With our CLI

Not a Big Fan of Python?

We've got you covered! Our I3C Controller Python Package includes the Command-Line Interface tool (shown above). Once installed, you can call those shell commands from the programming language of your choice, enabling you to easily integrate I3C support into your preferred development stack.

Performing I3C Transactions Has Never Been Easier!

Key Features

  • Supports the latest I3C BasicSM Specification (v1.1.1)
  • Direct & Broadcast CCC Commands
  • Support for Vendor-Specific CCC Commands
  • Support for In-Band Interrupts and Hotjoin Requests
  • Private Read & Private Write Transactions
  • Legacy I2C Communication Support
  • Support for 12.5MHz Single Data Rate (SDR) Mode
  • Support for HDR Double Data Rate (DDR) Mode
  • Pairs Perfectly with our I3C Basic Protocol Analyzer Plugin

Software Compatibility

  • Python 3.7+ (Python 2.x is NOT supported)
  • I3C Controller CLI Tool (Included)
  • Cross-Platform Support (Windows, Mac, & Ubuntu)

Hardware Compatibility

  • I3C bus voltages from 0.8V to 3.5V
  • Scout SC4420 (firmware version 2995 and up)

Flexible Licensing

We're eager to support customers of all sizes, from enterprise semiconductor companies to small tech startups, so we offer on-demand/flex licensing as well as node-locked licensing solutions. Our flex licensing allows the license to be shared among team members working on internet-connected PCs, using any SC4420, whereas the node-locked license solution works on computers without internet access, no tedious license server setup required. These licenses can be locked to either a specific host PC or a specific SC4420 device.

Features

Protocol Support

  • Supports the latest I3C BasicSM Specification (v1.1.1)
  • Direct & Broadcast CCC Commands
  • Support for Vendor-Specific CCC Commands
  • Private Read & Private Write Transactions
  • In-Band Interrupts and Hotjoin Requests
  • Legacy I2C Communication Support
  • Up to 12.5MHz Single Data Rate (SDR) Mode
  • Support for HDR Double Data Rate (DDR) Mode

Software Support

  • Python 2.x Support
  • Python 3.7+ Support
  • Cross-Platform Support for Windows, Mac, & Ubuntu
  • I3C Controller CLI Support

Hardware Compatibility

  • SCT Scout SC4420 (firmware version 2995 and up)
  • Internal Voltage Reference: 1.2V, 1.8V, and 3.3V
  • External Voltage Reference: 0.8V to 3.5V

Tech Support

  • Updates and Bugfixes
  • Tech Support via Email
  • Tech Support via Phone/Video

Licensing Options

  • Device-Locked  / PC-Locked Licensing
  • Flex/On-Demand Licensing
  • Monthly License
  • Annual License
  • Perpetual License

Standard

 

 

 

 

 

Enterprise

 

 

 

 

 

Trial Period

All licenses include a 7-day trial period. If for any reason you're not satisfied with our I3C Controller Python Package, we'll issue a full refund.

Deliverables

A purchase of the I3C BasicSM Controller Python Package for SC4430 includes the following digital files:

  • I3C Controller Python Module
  • I3C Controller CLI Script
  • Example Python Scripts
  • Getting Started Guide [PDF]

Note: This Python package requires hardware from Signal Craft Technologies in order to be useful. The Scout SC4420 can be purchased here, or use the devices that you already own.

Note: The source code of the I3C Controller Python Module is obfuscated and is not modifiable by the user. A source code license package is available to enterprise customers under NDA. Please contact us for additional information if interested.

Payment

Payments must be made in US Dollars. Credit Cards and Bank Transfers Accepted. NET30 Terms available with prior approval.

Learn More

Accelerate your I3C Development with our I3C Controller Python Package Today!

I3C Expertise You Can Trust!

We developed our own I3C Basic Protocol decoder and verified it at the most recent I3C Interop Workshop (Munich, June 13-14 2022) to confirm it's performance with many existing and upcoming I3C devices and tools. We use this I3C Controller Python Package in our development of our own products as well as for custom automation/test projects for our clients. We are heavily invested in I3C and are ready to support our customers long into the future.

Photo Credits: MIPI Alliance

Still on the fence? Schedule a Demo!

Curious to learn more? Join us for a 20-minute live demo. We'll give a brief overview of the capabilities and features of the I3C Controller Python Package, and then take it for a test drive using Saleae Logic to capture and decode I3C transactions from our demo setup generated by the Scout SC4420 using our python package. We're also happy to field any specific questions you may have.

Schedule an I3C Controller Python Package Demo + Q&A Session

MIPI® and I3C® are registered trademarks owned by MIPI Alliance. I3C BasicSM, Debug for I3CSM, I3C HCISM and DisCo for I3CSM are service marks of MIPI Alliance. Saleae® and Saleae Logic® are registered trademarks owned by Saleae Inc.