element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Raspberry Pi
  • Products
  • More
Raspberry Pi
Raspberry Pi Forum Raspberry Pi 3 Freescale Xtrinic KITMMA955xLEVM
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Raspberry Pi to participate - click to join for free!
Featured Articles
Announcing Pi
Technical Specifications
Raspberry Pi FAQs
Win a Pi
Raspberry Pi Wishlist
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 6 replies
  • Subscribers 693 subscribers
  • Views 833 views
  • Users 0 members are here
  • raspberry_pi
Related

Raspberry Pi 3 Freescale Xtrinic KITMMA955xLEVM

Former Member
Former Member over 10 years ago

How do I communicate with a Freescale Xtrinic KITMMA955xLEVM evaluation board from a Raspberry Pi via USB?

I'm running LINUX and using Python 3.4

All the evaluation kit documentation points to the SensorToolBox software which is windows based.

It's not what I want anyway because I am looking to use the data in a robotics project.

I've connected the Xtrinic to the Raspberry Pi and it's picking up the USB port.

I have installed a Python USB pack and got a far as detecting whether it's plugged in but how do I read the data?

Everything I've found relating to the MMA9551 shows it plugged into the Raspberry Pi GPIO.

It must be possible to drive the evaluation board using the USB.

 

Can anyone help?

  • Sign in to reply
  • Cancel
  • clem57
    0 clem57 over 10 years ago

    What you say is true. The kit is nice for playing with the chip from Windows, but NXP does not tell how it communicates with the kit. Possible options:

    1. Take off sensor chip to use on GPIO pin. Since this looks like a SMT and small, not recommended.
    2. Try Windows 10 IOT on Raspberry Pi 3. Problem although this approach works, I would guess the application will not run under IOT.
    3. Find software to intercept USB communications while running the Windows application. This is like detective work and may yield results. Then you need to roll your own code to mimic this. Can you program in Python?

    Clem

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 10 years ago in reply to clem57

    Thanks Clem for your prompt response.

     

    I was hoping for a protocol document, this is going to be much more difficult.

    I think I will run SensorToolBox on a PC with a USB monitor/analyser.

    This should allow me to determine the protocol and to reverse engineer the software interface.

     

    Yes I can program in Python. I've written serial interfaces before and they are never ease.

     

    I'll post the results once I have made some progress.

     

    Mike

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • packetgeek
    0 packetgeek over 10 years ago

    I tried answering this earlier today, by replying via email.  Doesn't look like Element14 forwarded it back.

     

    In any case...  I'm working on a similar problem.  According to various docs, the chip involved is controlled via I2C and the USB interface should be "transparent" to Linux.  What do you get when you run the following?

     

        i2cdetect -l   (<-- that's a lower-case "L")

        i2cdetect -y 0

        i2cdetect -y 1

     

    - Tim

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 10 years ago in reply to packetgeek

    Tim,

     

    i2cdetect -l

    Nothing, just returns with no message

    i2cdetect -y 0 and i2cdetect -y 1

    Directory/file not found

     

    Using my laptop I loaded a USB sniffer USBlyzer and tried the USB analyser in SharkWire, the former gave me the best results. Below is the USB property and a single message. I'm not sure this is getting me anywhere!

     

    This is the USB property:

    Connection StatusDevice connected
    Current Configuration1
    SpeedFull (12 Mbit/s)
    Device Address2
    Number Of Open Pipes2

    Device Descriptor FT232R USB
    UART

    OffsetFieldSizeValueDescription
    0bLength112h
    1bDescriptorType101hDevice
    2bcdUSB20200hUSB Spec 2.0
    4bDeviceClass100hClass info in Ifc Descriptors
    5bDeviceSubClass100h
    6bDeviceProtocol100h
    7bMaxPacketSize0108h8 bytes
    8idVendor20403h
    10idProduct26001h
    12bcdDevice20600h6.00
    14iManufacturer101h"FTDI"
    15iProduct102h"FT232R USB UART"
    16iSerialNumber103h"A8005A1Q"
    17bNumConfigurations101h

    Configuration Descriptor 1
    Bus Powered, 90 mA

    OffsetFieldSizeValueDescription
    0bLength109h
    1bDescriptorType102hConfiguration
    2wTotalLength20020h
    4bNumInterfaces101h
    5bConfigurationValue101h
    6iConfiguration100h
    7bmAttributes1A0hBus Powered, Remote Wakeup
    4..0: Reserved...00000
    5: Remote Wakeup..1..... Yes
    6: Self Powered.0...... No, Bus Powered
    7: Reserved (set to one)
    (bus-powered for
    1.0)
    1.......
    8bMaxPower12Dh90 mA
    Interface Descriptor 0/0 Vendor-Specific, 2 Endpoints

     

    OffsetFieldSizeValueDescription
    0bLength109h
    1bDescriptorType104hInterface
    2bInterfaceNumber100h
    3bAlternateSetting100h
    4bNumEndpoints102h
    5bInterfaceClass1FFhVendor-Specific
    6bInterfaceSubClass1FFh
    7bInterfaceProtocol1FFh
    8iInterface102h"FT232R USB UART"
    Endpoint Descriptor 81 1 In,
    Bulk, 64 bytes

     

    OffsetFieldSizeValueDescription
    0bLength107h
    1bDescriptorType105hEndpoint
    2bEndpointAddress181h1 In
    3bmAttributes102hBulk
    1..0: Transfer Type......10 Bulk
    7..2: Reserved000000..
    4wMaxPacketSize20040h64 bytes
    6bInterval100h

    Endpoint Descriptor 02 2 Out,
    Bulk, 64 bytes

    OffsetFieldSizeValueDescription
    0bLength107h
    1bDescriptorType105hEndpoint
    2bEndpointAddress102h2 Out
    3bmAttributes102hBulk
    1..0: Transfer Type......10 Bulk
    7..2: Reserved000000..
    4wMaxPacketSize20040h64 bytes
    6bInterval100h

     

     

    Here is an example of an individual message:

     

    OffsetFieldSizeValueDescription
    0bLength112h
    1bDescriptorType101hDevice
    2bcdUSB20200hUSB Spec 2.0
    4bDeviceClass100hClass info in Ifc Descriptors
    5bDeviceSubClass100h
    6bDeviceProtocol100h
    7bMaxPacketSize0108h8 bytes
    8idVendor20403h
    10idProduct26001h
    12bcdDevice20600h6.00
    14iManufacturer101h"FTDI"
    15iProduct102h"FT232R USB UART"
    16iSerialNumber103h"A8005A1Q"
    17bNumConfigurations101h

    Configuration Descriptor 1
    Bus Powered, 90 mA

    OffsetFieldSizeValueDescription
    0bLength109h
    1bDescriptorType102hConfiguration
    2wTotalLength20020h
    4bNumInterfaces101h
    5bConfigurationValue101h
    6iConfiguration100h
    7bmAttributes1A0hBus Powered, Remote Wakeup
    4..0: Reserved...00000
    5: Remote Wakeup..1..... Yes
    6: Self Powered.0...... No, Bus Powered
    7: Reserved (set to one)
    (bus-powered for
    1.0)
    1.......
    8bMaxPower12Dh90 mA
    Interface Descriptor 0/0 Vendor-Specific, 2 Endpoints

     

    OffsetFieldSizeValueDescription
    0bLength109h
    1bDescriptorType104hInterface
    2bInterfaceNumber100h
    3bAlternateSetting100h
    4bNumEndpoints102h
    5bInterfaceClass1FFhVendor-Specific
    6bInterfaceSubClass1FFh
    7bInterfaceProtocol1FFh
    8iInterface102h"FT232R USB UART"
    Endpoint Descriptor 81 1 In,
    Bulk, 64 bytes

     

    OffsetFieldSizeValueDescription
    0bLength107h
    1bDescriptorType105hEndpoint
    2bEndpointAddress181h1 In
    3bmAttributes102hBulk
    1..0: Transfer Type......10 Bulk
    7..2: Reserved000000..
    4wMaxPacketSize20040h64 bytes
    6bInterval100h

    Endpoint Descriptor 02 2 Out,
    Bulk, 64 bytes

    OffsetFieldSizeValueDescription
    0bLength107h
    1bDescriptorType105hEndpoint
    2bEndpointAddress102h2 Out
    3bmAttributes102hBulk
    1..0: Transfer Type......10 Bulk
    7..2: Reserved000000..
    4wMaxPacketSize20040h64 bytes
    6bInterval100h
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • clem57
    0 clem57 over 10 years ago in reply to Former Member

    These are headers only. What is needed is the data portions and matching them with the operations you perform. For instance, the datasheet has setting registers values for operations. I know one sets the measurements active and standby. Another may set delays. Another may set recording the data internally and later request dumps of that stored data. Matching this with the flows should show what is sent and returned as a response.

    Clem

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • packetgeek
    0 packetgeek over 10 years ago in reply to Former Member

    Mike,

     

    I'm so far behind on my reading that I can't say for sure.  What I've gathered so far is that virtual serial port should automatically be created (ttyUSB0????), which you would open send/read I2C messages.  I'm currently working the RPi3 review but I have a USB-2-I2C dongle and will eventually get around to trying it (will hook a TEA5767 or RDA5807SP to it).

     

    - Tim

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube