element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • 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 Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • 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
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • 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
Code Exchange
  • Technologies
  • More
Code Exchange
Forum How are flocks connecting there RPI with external world(Other embedded circuits)? any standards.. if not which 1 you will pick?
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Code Exchange to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 28 replies
  • Subscribers 53 subscribers
  • Views 2289 views
  • Users 0 members are here
  • 32bit
  • raspbpi
  • raspcontrol
  • Code Exchange
  • programming
  • embedded
  • raspberry_pi_rev_2
  • arm
  • arduino
  • atmel
Related

How are flocks connecting there RPI with external world(Other embedded circuits)? any standards.. if not which 1 you will pick?

shahbhaumik
shahbhaumik over 12 years ago

There are various option when it comes to connect RPI with external embedded boards. Currently many geeks are trying to interface various peripherals with RPI with the I/O header given. I feel there are following option one can go with.

 

1) Use I/O header.

Which i feel is good for prototyping but as we move do something that looks good this option is not what I feel is best, I hate all the wires that comes out of RPI and then loose connection and what not to take care of...

 

2) Use of USB port.

RPI is computer and you it can communicate to co-processor using its USB ports.I think this is very neat way to do things. For example if you are making a robot which has a microcontroller that has UART it can easily communicate with RPI above that you can reflash you microcontroller as per your application using RPI. I know there are no instruction or related work out there like this but soon i will be posting instruction to do this on my blog as well on code exchange.

 

 

Would like to now community views on same.

  • Sign in to reply
  • Cancel

Top Replies

  • fustini
    fustini over 12 years ago +1
    Thus far I've been using the Adafruit Pi Cobbler Adafruit Pi Cobbler to interface the header with a breadboard and programming in Python using libraries like RPi.GPIO . I've really enjoyed Adafruit's tutorials…
  • morgaine
    morgaine over 12 years ago in reply to fustini +1
    Since you've already dealt with 1) Use I/O header , and 2) Use of USB port , I think I'll add the missing alternative, 3) Use of Ethernet . Some people consider USB a fixture and a sacred cow, but I've…
  • morgaine
    morgaine over 12 years ago in reply to gdstew +1
    On the issue of Ethernet complexity, I can't help you further since you refuse to use the engineering concept of dividing a communications stack into layers so that properties of single layers can be discused…
Parents
  • shahbhaumik
    0 shahbhaumik over 12 years ago

    Thank you all for your views. I knew this post would be little bit controversial, and eventually it went little bit ofcouse but the fun part is its still knowledgeable.

    Being and embedded person and my exploration on RPI has made me to conclude that all the lower levels interface like more led's, switches other sensors should not be connected to RPI directly. To better understand this I would like to bring an example.

    Suppose I want to make a robot using RPI, I can make a motor driver breakout and connect it directly to RPI and ofcourse code on RPI is no big deal, But RPI is much more computational power to just drive a motor and thus i want to put all this motor control and small sensor stuff to a companion board attached to my RPI. Thus RPI can focus on algorithmic claculation part (Putting ROS or Open CV).

     

    Now with 8 bit microcontroller i would not have much option with USB and Ethernet, I now there are alternative avaiable but i feel its overkill for 8 bit. RS232 comes handy in this case. I can convert  RS232 to USB CDC using FT232RL or CP2102 or some other option.

     

    I would futher like to create an open interface for RPI to communicate with expansion board.

     

    Hence a good interface

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • johnbeetem
    0 johnbeetem over 12 years ago in reply to shahbhaumik

    Bhaumik Shah wrote:

     

    Suppose I want to make a robot using RPI, I can make a motor driver breakout and connect it directly to RPI and ofcourse code on RPI is no big deal, But RPI is much more computational power to just drive a motor and thus i want to put all this motor control and small sensor stuff to a companion board attached to my RPI. Thus RPI can focus on algorithmic claculation part (Putting ROS or Open CV).

     

    Now with 8 bit microcontroller i would not have much option with USB and Ethernet, I now there are alternative avaiable but i feel its overkill for 8 bit. RS232 comes handy in this case. I can convert  RS232 to USB CDC using FT232RL or CP2102 or some other option.

    I wouldn't bother with an 8-bit micro in the 21st Century.  ARM Cortex-M0 (or M0+) chips are really cheap, and you can just write 32-bit C code without worrying about 8-bit nonsense.  If you need serious real-time motor control, the ARM Cortex-M4 is a nice architecture.  I'd look at the NXP LPC4350 dual-core which has both a Cortex-M4 and a Cortex-M0, so the first can be used for hard real-time and the second can be used for communication and supervision.  The STM32 F3 and F4 series are very nice as well.  I need to take a look TI Stellaris LM4F120 (Cortex-M4) one of these days.  All those Cortex-M4 chips have hardware floating point.

     

    Another nice alternative to 8-bit is the 16-bit TI MSP430.  If I remember correctly, its instruction set is based on the PDP-11, so old timers can write programs while bathing in an sea of nostalgia.

     

    USB is a nice way to talk to them, but SPI would probably work well and keep software really simple.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • johnbeetem
    0 johnbeetem over 12 years ago in reply to shahbhaumik

    Bhaumik Shah wrote:

     

    Suppose I want to make a robot using RPI, I can make a motor driver breakout and connect it directly to RPI and ofcourse code on RPI is no big deal, But RPI is much more computational power to just drive a motor and thus i want to put all this motor control and small sensor stuff to a companion board attached to my RPI. Thus RPI can focus on algorithmic claculation part (Putting ROS or Open CV).

     

    Now with 8 bit microcontroller i would not have much option with USB and Ethernet, I now there are alternative avaiable but i feel its overkill for 8 bit. RS232 comes handy in this case. I can convert  RS232 to USB CDC using FT232RL or CP2102 or some other option.

    I wouldn't bother with an 8-bit micro in the 21st Century.  ARM Cortex-M0 (or M0+) chips are really cheap, and you can just write 32-bit C code without worrying about 8-bit nonsense.  If you need serious real-time motor control, the ARM Cortex-M4 is a nice architecture.  I'd look at the NXP LPC4350 dual-core which has both a Cortex-M4 and a Cortex-M0, so the first can be used for hard real-time and the second can be used for communication and supervision.  The STM32 F3 and F4 series are very nice as well.  I need to take a look TI Stellaris LM4F120 (Cortex-M4) one of these days.  All those Cortex-M4 chips have hardware floating point.

     

    Another nice alternative to 8-bit is the 16-bit TI MSP430.  If I remember correctly, its instruction set is based on the PDP-11, so old timers can write programs while bathing in an sea of nostalgia.

     

    USB is a nice way to talk to them, but SPI would probably work well and keep software really simple.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
  • gdstew
    0 gdstew over 12 years ago in reply to johnbeetem

    John wrote: Personally, I'd be leery of supplying more than 1A through the RasPi Micro USB power jack.  Not only is the USB connector limited as you pointed out, but we don't know the current capacity of the 5V traces on the RasPi PCB.

     

    True, the only thing we know for sure is they are good for at least 1A.

     

     

    John wrote: Also, most Micro USB cables can just barely supply RasPi's 700 mA. Above that the voltage drop across the

    Micro USB cable could easily be too much.

     

    I don't know about the most part. I have found a couple that have very little measured voltage drop and for

    full specification compliance they "should" support full current. Many obviously don't. What I have found

    is the very flexible ones tend to have the small thin conductors wrapped around a multi-thread (as in cloth)

    string used for strain relief.

     

    I have also found several 1.2A to 1.5A supplies with micro USB connectors. If the power supply is rated this

    way, the power cord should support it.

     

     

    John wrote: If I had an add-on board that needed more than 300 mA at 5V I'd consider putting a 5.5mm barrel connector on the add-on board and letting the add-on board power RasPi through the GPIO connector.  The FTDI RasPi expansion module does this: http://www.ftdichip.com/Products/Modules/RPi.htm

     

    Yes, that works for me too, but I don't know if the 5V trace run to the expansion connector can handle the 700mA needed by the Raspberry Pi either. I have not seen anything

    about the PCB artwork being released. Has that been mentioned by the RPF ?

     

     

    John wrote: USB is a nice way to talk to them, but SPI would probably work well and keep software really simple.

     

    I don't have much working experirence with SPI but what I do know is that it is much faster than serial, lots of people use it, most if not all SOC's and microcontrollers

    support it, lots of ICs (D/A, A/D, sensors, etc.) support it, and it should work as well as any of the alternatives previously discussed. The only minor quibble I have with

    SPI is the need for seperate select lines (one more wire) when multiple channels are needed. Not much of a problem really. And high speed versions of I2C have

    about the same list of goodies as I provided for SPI and should work also.

     

    So many serial busses, so little time.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • johnbeetem
    0 johnbeetem over 12 years ago in reply to gdstew

    Gary Stewart wrote:

     

    John wrote: Also, most Micro USB cables can just barely supply RasPi's 700 mA. Above that the voltage drop across the  Micro USB cable could easily be too much.

     

    I don't know about the most part.

     

    ...

     

    Yes, that works for me too, but I don't know if the 5V trace run to the expansion connector can handle the 700mA needed by the Raspberry Pi either. I have not seen anything  about the PCB artwork being released. Has that been mentioned by the RPF ?

    Yes, the "most" is an over-statement.  However, quite a few Razzers have had bad Micro USB cables and it's a common source of frustration of the form: "I have tried x power supplies, and I still can't get TP1-TP2 above 4.2V".  The reality is that when you order a Micro USB cable over the Internet you have no idea if it's made out of AWG 28 or AWG 36.  So it's one of those known potential problems I try to avoid.

     

    I have read of a number of Razzers powering their RasPis using the GPIO connector and never heard of a trace burning out.  I think I recently read that RPF is planning to release artwork soon, but I can't find where I saw it (grumble).  The smart thing would be for RPF to release schematics and artwork before manufacturing so extra eyes can find problems like the silly notion of removing F1 and F2 entirely.  Maybe they fear that the signal/noise ratio would be too small.

    • 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 © 2025 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