Printable PDF: Michael Barr's Expert Witness CV
Michael Barr is a former adjunct professor of computer engineering with more than twenty-five years of experience in the software industry, including over a decade spent developing software for embedded systems. Software he wrote has powered millions of products. Mr. Barr is the author of three books and more than seventy articles and papers about embedded software design and architecture and is internationally recognized as an expert in the field. He is also a founder of three companies, including Barr Group. In his work as a software expert witness, Mr. Barr has testified more than twenty times before judges and juries in matters ranging from patent infringement and validity to product liability to theft of copyrighted software and trade secrets. He has been qualified in U.S. and Canadian courts as an expert in computer software, electrical engineering, and satellite TV security and piracy.
Looking for an expert witness? Contact us now >
Education
Master of Business Administration, Smith School of Business at University of Maryland, 2006
Master of Science in Electrical Engineering, University of Maryland College Park, 1997
- Thesis: “Software-Based Memory Testing”
Bachelor of Science in Electrical Engineering, University of Maryland College Park, 1994
Present Activities
Barr Group, CTO and Co-founder, 2012 – present
- Executive management for an engineering services firm specializing in the design and development of custom computer software and electronics with clients ranging from small startups to the Fortune 100.
- Creator of popular professional training curriculum and courses for embedded software developers, including the “Embedded Software Boot Camp” and “Embedded Software Training in a Box”.
- Performed engineering design, consulting, and training services for clients in industries ranging from consumer electronics to medical products.
- Led a team of software experts in review of millions of lines of source code for Toyota’s engine control modules in relation to sudden unintended acceleration, and testified in the one case that went to trial.
Relevant Past Experiences
Netrino, Founder and President, 1999 – 2012
- Developed software for various products, including safety-critical mechanical systems involving closed-loop PID control systems and high volume consumer electronics for digital television
- Consulted with and trained engineers and engineering managers and executives at various companies, including makers of FDA-regulated medical devices such as pacemakers and implanted defibrillators, insulin pumps, and glucose meters
- Conducted new product assessments of software development tools for companies introducing products such as real-time operating systems and debugging tools into the embedded market
Embedded Systems Design, Technical Editor/Editor-in-Chief/Contributing Editor, 1999 – 2012
After an initial period as technical editor, served as editor-in-chief of this monthly magazine with over 50,000 subscribers. Wrote a monthly technical column, supervised the editorial staff, and worked with experts and regular contributors to refine their articles and columns to best fit subscriber interests.
Embedded Systems Conference, Advisory Board Member/Track Chair/Conference Chair, 2001 – 2011
Provided industry viewpoint and observations on emerging and ongoing trends in the marketplace and suggest possible new course and panel topics and speakers for future events
Johns Hopkins University, Lecturer, Winter Session 2012
Taught embedded software architecture to undergraduate students in computer science.
University of Maryland, Adjunct Professor of Computer Engineering, 2000 - 2002
Taught operating systems design to graduate and undergraduate computer engineering students and designed and supervised independent study projects related to real-time embedded software.
PropHead Development, Software Architect, 1998 – 1999
Defined the embedded software architecture and detailed design for a satellite TV set-top box joint venture between America Online and Hughes Network Systems.
TSI TelSys, Principal Software Engineer, 1997 – 1998
- Wrote software in Java to convert any valid Java program into synthesizable Verilog hardware.
- Developed Solaris and Windows NT device drivers for a PCI-based reconfigurable coprocessor card.
- Led the effort to produce a development and prototyping platform for microSPARC-IIep processor.
- Designed and implemented a set of software development and debugging tools for designers of applications based on reconfigurable computing technology and wrote an InstallShield application to distribute the tools to Windows computers.
Hughes Network Systems, Software Engineer, 1994 – 1997
- Developed a Windows NT device driver for a high-speed I/O device on a PCI card.
- Successfully led a high-priority, three-person project to resolve a software problem that had been plaguing internally developed test equipment for more than six-months.
- Coordinated with engineers at Hitachi in Japan to design the middleware interface between home consumer electronics over a CEBus network and implemented the same for a high-volume satellite TV set-top box.
- Ported the VRTX and VxWorks board support packages to multiple custom hardware platforms.
- Developed an implementation of the UDP/IP protocol stack that included BOOTP, TFTP, and ARP client software, requiring just 8-kilobytes of memory—a ten-fold decrease over commercial stacks.
Patents
- U.S. Patent No. 7,945,879: “Method and Apparatus for Selecting a Hardware Representation from a Software Description”
- U.S. Patent No. 7,210,116: “Method and Apparatus for Synthesizing a Hardware System from a Software Description”
- U.S. Patent No. 6,976,562: “Method of Calibrating a Brake System for Stationary Equipment and Apparatus for Doing the Same”
Publications
Books
- Barr, Michael. "Programming Embedded Systems in C and C++." O’Reilly & Associates, 1999.
- Ganssle, Jack and Michael Barr. "Embedded Systems Dictionary." CMP Books, 2003.
- Barr, Michael and Anthony Massa. "Programming Embedded Systems with C and GNU Development Tools." O’Reilly & Associates, 2006.
- Barr, Michael. "Embedded C Coding Standard." 1st ed.: 2009, 2nd ed.: 2013, 3rd ed.: 2018.
Articles and Papers
- Barr, Michael and Brian Frank. “Java: Too Much for Your System?,” Embedded Systems Programming, May 1997.
- Barr, Michael. “Controlling Run-Time Reconfigurable Hardware Designs with Java,” DesignCon, Jan 1998.
- Barr, Michael and Jason Steinhorn. “Kaffe, Anyone? Implementing a Java Virtual Machine,” Embedded Systems Programming, Feb 1998.
- Barr, Michael. “A Reconfigurable Computing Primer,” Multimedia Systems Design, Sep 1998.
- Barr, Michael. “A Free Java Virtual Machine for Embedded Systems,” Embedded Systems Conference, Nov 1998.
- Barr, Michael. “Choosing a Compiler: The Little Things,” Embedded Systems Programming, May 1999.
- Barr, Michael. “Programmable Logic: What’s it to Ya?,” Embedded Systems Programming, Jun 1999.
- Barr, Michael. “Architecting Embedded Systems for Add-on Software,” Embedded Systems Programming, Sep 1999.
- Barr, Michael. “IrDA and Bluetooth,” Embedded Systems Programming, Oct 1999.
- Barr, Michael. “Checksums,” Embedded Systems Programming, Nov 1999.
- Barr, Michael. “Cyclic Redundancy Codes, Part 1,” Embedded Systems Programming, Dec 1999.
- Barr, Michael. “Cyclic Redundancy Codes, Part 2,” Embedded Systems Programming, Jan 2000.
- Barr, Michael. “Virtual Serial Ports,” Embedded Systems Programming, Feb 2000.
- Barr, Michael. “Language Lessons,” Embedded Systems Programming, Mar 2000.
- Barr, Michael. “TCP/IP or Not TCP/IP?,” Embedded Systems Programming, Apr 2000.
- Barr, Michael. “Calibration,” Embedded Systems Programming, May 2000.
- Barr, Michael. “MAC Daddy,” Embedded Systems Programming, Jun 2000.
- Barr, Michael. “Address Resolution Protocol,” Embedded Systems Programming, Jul 2000.
- Barr, Michael. “Software-Based Memory Testing,” Embedded Systems Programming, Jul 2000.
- Barr, Michael. “Internet Working,” Embedded Systems Programming, Sep 2000.
- Barr, Michael. “Introduction to Memory Types,” Embedded Systems Programming, May 2001.
- Barr, Michael. “K Virtual Machine,” Embedded Systems Conference, Jul 2001.
- Barr, Michael. “Java Technology Overview,” Embedded Systems Conference, Sep 2001.
- Barr, Michael. “Introduction to Pulse Width Modulation,” Embedded Systems Programming, Sep 2001.
- Barr, Michael. “Introduction to Watchdog Timers,” Embedded Systems Programming, Oct 2001.
- Brown, Chris and Michael Barr. “Introduction to Endianness,” Embedded Systems Programming, Jan 2002.
- Barr, Michael. “Embedded Programming 101,” Embedded Systems Conference, Mar 2002.
- Barr, Michael. “Java 2 Micro Edition,” Embedded Systems Conference, Mar 2002.
- Barr, Michael. “Preparing Your System for Java,” Embedded Systems Conference, Mar 2002.
- Stewart, David and Michael Barr. “Introduction to Rate Monotonic Scheduling,” Embedded Systems Programming, Mar 2002.
- Kalinsky, David and Michael Barr. “Introduction to Priority Inversion,” Embedded Systems Programming, Apr 2002.
- Barr, Michael. “Toward a Smaller Java,” Embedded Systems Programming, Jun 2002.
- Beal, David and Michael Barr. “Embedded Linux and the Law,” Embedded Systems Programming, Aug 2002.
- Barr, Michael. “Introduction to Closed-Loop Control,” Embedded Systems Programming, Aug 2002.
- Ball, Stuart and Michael Barr. “Introduction to Counter/Timer Hardware,” Embedded Systems Programming, Sep 2002.
- Wagner, Brian and Michael Barr. “Introduction to Digital Filters,” Embedded Systems Programming, Dec 2002.
- Barr, Michael. “Choosing a Real-Time Operating System,” Embedded Systems Programming, Jan 2003.
- Berger, Arnold and Michael Barr. “Introduction to On-Chip Debug,” Embedded Systems Programming, Mar 2003.
- Labrosse, Jean and Michael Barr. “Introduction to Preemptive Multitasking,” Embedded Systems Programming, Apr 2003.
- Ball, Stuart and Michael Barr. “Introduction to Timer-Based Measurement,” Embedded Systems Programming, Aug 2003.
- Barr, Michael. “Fixed-Width Integers in C, C++, and C99,” Embedded Systems Programming, Feb 2004.
- Barr, Michael. “Multitasking Alternatives and the Perils of Preemption,” Embedded.com, Sep 2006.
- Barr, Michael. “Don’t Believe Everything You Hear About RTOSes,” Embedded.com, Oct 2008.
- Barr, Michael. “Bug-Killing Standards for Firmware Coding,” Embedded Systems Design, Apr 2009.
- Samek, Miro and Michael Barr. “Event-Driven Programming,” Embedded Systems Conference, Apr 2009.
- Barr, Michael. “Embedded C Coding Standards,” Embedded Systems Conference, Apr 2009.
- Barr, Michael. “How to Assign Priorities to RTOS Tasks (and Why It Matters),” Embedded Systems Conference, Apr 2009.
- Barr, Michael. “More Bug-Killing Standards for Firmware Coding,” Embedded Systems Design, May 2009.
- Wilk, Michael and Michael Barr. “A Framework for Safe Motion Control Firmware,” RTC Magazine, Jun 2009.
- Barr, Michael. “Real Men Program in C,” Embedded Systems Design, Jul/Aug 2009.
- Barr, Michael. “Firmware Architecture in Five Easy Steps,” Embedded Systems Design, Sep 2009.
- Barr, Michael. “The Lawyers are Coming,” Embedded Systems Design, Dec 2009.
- Barr, Michael. “Faulty Code Will Lead to an Era of Firmware-Related Litigation,” Electronic Design, Jan 2010.
- Barr, Michael. “Embedded Systems Programmers Worldwide Earn Failing Grades in C,” Embedded Systems Design, Jan 2010.
- Barr, Michael. “Five Top Causes of Nasty Embedded Software Bugs,” Embedded Systems Design, Apr 2010.
- Barr, Michael. “Three Things Every Programmer Should Know About RMA,” Embedded Systems Design, Sep 2010.
- Barr, Michael. “Five More Top Causes of Nasty Embedded Software Bugs,” Embedded Systems Design, Nov 2010.
- Barr, Michael. “Catching Copy Cats: Emerging Tools Can Detect Source Code Thievery,“ Law Technology News, Nov 2010.
- Barr, Michael. “Embedded Software Drives Economic Growth,” Electronic Design, Dec 2010.
- Barr, Michael. “Social Networking for Engineers,” Embedded Systems Design, Feb 2011.
- Barr, Michael. “Unintended Acceleration and Other Embedded Software Bugs,” Embedded Systems Design, Apr 2011.
- Barr, Michael. “What Belongs in a Header File,” Embedded Systems Design, May 2011.
- Barr, Michael. “How to Enforce Coding Standards Automatically,” Embedded Systems Design, Jul 2011.
- Barr, Michael. “Five Dangerous Coding Standard Rules,” Embedded Systems Design, Sep 2011.
- Barr, Michael. “Firmware Forensics: Best Practices in Embedded Software Source Code Discovery,” Digital Evidence and Electronic Signature Law Review, Volume 8 : 2011.
- Barr, Michael. “Best Practices in Embedded Software Source Code Discovery,” Embedded Systems Design, Nov 2011.
- Barr, Michael. “Combining C’s volatile and const Keywords,” Embedded Systems Design, Feb 2012.
- Barr, Michael. “Building Reliable and Secure Embedded Systems,” Embedded Systems Design, Apr 2012.
- Barr, Michael. “Trends in Embedded Software Design,” Embedded Systems Design (final issue), May 2012.
- Barr, Michael. “Dead Code, the Law, and Unintended Consequences,” Embedded.com, May 2013.
- Barr, Michael. “Intellectual Property Protections for Embedded Software: A Primer,” Embedded.com, Jul 2013.
- Barr, Michael. “Binary Executable Analysis Techniques for Embedded Systems,” DFI News, Sep 2013.
- Barr, Michael. “C: The Immortal Programming Language,” Embedded.com, Feb 2018.
- Barr, Michael. “The Commercial RTOS Business is Doomed,” EEWeb, Mar 2018.
Blog
- “Barr Code,” 2001 - 2018. Archived at https://embeddedgurus.com/barr-code
Expert Witness
Testimony at Jury Trial
- DirecTV v. Frye, et. al. (satellite TV piracy), U.S. District Court for South Carolina, 22 Jan 2004.
- DirecTV v. Crespin (satellite TV piracy), U.S. District Court for Colorado, 28 Jun 2004.
- DirecTV v. Medina (satellite TV piracy), U.S. District Court for South Carolina, 26 Jul 2004.
- DirecTV v. Murray, et. al. (satellite TV piracy), U.S. District Court for South Carolina, 11 Aug 2004.
- Antonick v. Electronic Arts (software copyright), U.S. District Court for Northern California, 11/15 Jul 2013.
- Jean Bookout and Estate of Barbara Schwarz v. Toyota Motor Corporation, et. al. (automotive product liability), District Court of Oklahoma for Oklahoma County, on behalf of plaintiffs, 14-15 Oct 2013.
Testimony at Bench Trial
- DirecTV v. Escalona (satellite TV piracy), U.S. District Court for Southern Florida, 2 Feb 2004.
- DirecTV v. Craft (satellite TV piracy), U.S. District Court for Northern Florida, 6 Apr 2004.
- DirecTV v. Schaffer (satellite TV piracy), U.S. District Court for Southern Alabama,17 Jun 2004.
- DirecTV v. Walsh (satellite TV piracy), U.S. District Court for Middle Pennsylvania, 30 Aug 2004.
- DirecTV v. Taylor (satellite TV piracy), U.S. District Court for Western Tennessee, 29 Sep 2004.
- DirecTV v. Norris (satellite TV piracy), U.S. District Court for Southern West Virginia, 25 Jan 2005.
- DirecTV v. Toler (satellite TV piracy), U.S. District Court for Southern West Virginia, 25 Jan 2005.
- DirecTV v. Farley (satellite TV piracy), U.S. District Court for Southern West Virginia, 15 Feb 2005.
- DirecTV v. Karpinsky (satellite TV piracy), U.S. Bankruptcy Court for Eastern Michigan, 25 Apr 2005.
- DirecTV v. D’Andrea (satellite TV piracy), U.S. District Court for New Jersey, 6/13 Mar 2006.
- Videotron, et.al. v. Bell ExpressVu (security of satellite TV), Quebec Superior Court, on behalf of defendant, 8-9, 13 Dec 2011.
- CCP Systems v. Samsung (software copyright), U.S. District Court for New Jersey, on behalf of defendant, 7 Jul 2014.
Testimony at Deposition
- DirecTV v. Laroe, et. al. (satellite TV piracy), U.S. District Court for Colorado, 13 Feb 2004.
- DirecTV v. Denton, et. al. (satellite TV piracy), U.S. District Court for Northern Georgia, 26 May 2004.
- DirecTV v. Stoner, et. al. (satellite TV piracy), U.S. District Court for Eastern North Carolina, 27 May 2004.
- EchoStar v. NDS Group (security of satellite TV), U.S. District Court for Southern Central California, on behalf of defendant, 13 Sep 2007.
- EchoStar v. NDS Group (security of satellite TV), U.S. District Court for Southern Central California, on behalf of defendant, 1 May 2008.
- Baxter Healthcare v. Fresenius (software quality), U.S. District Court for Northern California, on behalf of defendant, 1 Jul 2009.
- Motorola Mobility v. Microsoft (DVR patent infringement), U.S. District Court for Southern Florida, on behalf of plaintiff, 18 Jul 2011.
- van Alfen, et. al. v. Toyota Motor Sales (automotive product liability) and Toyota Motor Corp. Unintended Acceleration, Marketing, Sales Practices, and Products Liability Litigation MDL 2151 (economic loss), U.S. District Court for Southern Central California, on behalf of plaintiff, 2 Oct 2012.
- Antonick v. Electronic Arts (videogame software copyright/trade secrets), U.S. District Court for Northern California, on behalf of plaintiff, 27 Nov 2012.
- SmartPhone Technologies v. Research in Motion, Apple, LG, and AT&T, et. al. (smartphone patent infringement), U.S. District Court for Eastern Texas, on behalf of plaintiff, 15-18 Jan 2013.
- Estate of Ida Starr St. John v. Toyota Motor Sales, et. al. (automotive product liability), U.S. District Court for Southern Central California, on behalf of plaintiff, 3 Jul 2013.
- Estate of Guadalupe Alberto v. Toyota Motor Corporation, et. al. (automotive product liability), Circuit Court of Michigan for Genesee County, on behalf of plaintiff, 2 Aug 2013.
- Jean Bookout and Estate of Barbara Schwarz v. Toyota Motor Corporation, et. al. (automotive product liability), District Court of Oklahoma for Oklahoma County, on behalf of plaintiff, 2 Aug 2013.
- SmartPhone Technologies v. Huawei (smartphone patent validity), U.S. District Court for Eastern Texas, on behalf of plaintiff, 18 Feb 2014.
- CCP Systems v. Samsung (software copyright), U.S. District Court for New Jersey, on behalf of defendant, 23 May 2014.
- In Re Swift Transportation (class action), Superior Court of the State of Arizona, on behalf of defendant, 12 Nov 2014.
- Comcast v. Rovi (IPR 2017-941), U.S. Patent Trial and Appeal Board, on behalf of defendant, 11 July 2018.
Testimony at Evidentiary Hearing
- DirecTV v. Andino, et. al. (satellite TV piracy), U.S. District Court for Central Florida, 27 Oct 2003.
- DirecTV v. Nguyen (satellite TV piracy), U.S. District Court for Central Florida, 7 Nov 2003.
- DirecTV v. Iwan (satellite TV piracy), U.S. District Court for Central Florida, 7 Nov 2003.
- DirecTV v. Emfinger (satellite TV piracy), U.S. District Court for Central Florida, 7 Nov 2003.
- DirecTV v. Cabral (satellite TV piracy), U.S. District Court for New Mexico, 30 Apr 2004.
- DirecTV v. Koubicek, et. al. (satellite TV piracy), U.S. District Court for Western Louisiana, 22 Jun 2004.
- DirecTV v. Fayard, et. al. (satellite TV piracy), U.S. District Court for Middle Louisiana, 1 Dec 2004.
Testimony at U.S. Patent and Trademark Office
- U.S. Patent No. 6,321,331 (ex parte reexamination), U.S. Patent and Trademark Office, 7 Sep 2011.
- U.S. Patent No. 5,751,736 (ex parte reexamination), U.S. Patent and Trademark Office, 15 Feb 2012.
Settled Prior to Testimony
- Bally Gaming v. IGT (slot machine patent infringement), U.S. District Court for Nevada, on behalf of plaintiff.
- Canada Customs and Revenue Agency vs. Davin Omeir (satellite TV piracy), Canadian Federal Court in Ottawa, on behalf of plaintiff.
- DirecTV v. Roggero (DMCA), U.S. District Court for Eastern Michigan, on behalf of plaintiff.
- DirecTV v. SDLogic, et. al. (DMCA), U.S. District Court for Central California, on behalf of plaintiff.
- DirecTV v. Various Defendants (satellite TV piracy), various venues, on behalf of plaintiff.
- EchoStar v. Freetech (security of satellite TV), U.S. District Court for Northern California, on behalf of defendant.
- EchoStar, et. al. v. nFusion, et. al. (security of satellite TV), U.S. District Court for Central California, on behalf of plaintiff.
- Eutronix vs. Texas Embedded Solutions (contract dispute), et. al., Louisiana State District Court, on behalf of defendant.
- Manard, et.al. v. Knology (class action), U.S. District Court for Middle Georgia, on behalf of defendant.
- Motorola v. Lemko, Huawei, et. al. (cellular software copyright/trade secrets), U.S. District Court for Northern Illinois, on behalf of plaintiff.
- SmartPhone Technologies v. ZTE (smartphone patent validity), U.S. District Court for Eastern Texas, on behalf of plaintiff.
- TiVo v. Cisco and Time Warner Cable (DVR patent infringement), U.S. District Court for Eastern Texas, on behalf of defendant.
- Toshiba v. Intellectual Ventures (IPR 2014-310), U.S. Patent Trial and Appeal Board, on behalf of defendant.
- various plaintiffs v. Toyota (automotive product liability), various venues, on behalf of plaintiffs.
Current as of April 14, 2020