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
  • 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
Blog Embedded PI Initial Impressions
  • 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
GPIO Pinout
Raspberry Pi Wishlist
Comparison Chart
Quiz
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: mconners
  • Date Created: 29 Jun 2013 3:39 AM Date Created
  • Views 1620 views
  • Likes 5 likes
  • Comments 21 comments
Related
Recommended

Embedded PI Initial Impressions

mconners
mconners
29 Jun 2013

I recently had an opportunity to check out the Embedded Pi board. I had observed an advertisement when visiting Element 14 one morning and I became intrigued enough to investigate the board. While it is advertised as a “Triple Play Platform” I came away with the idea that it was truly more of a double play.

 

 

The board has several modes which are jumper selectable:

 

 

1) STM32 (which is built in) -> Arduino shield (You supply the shield)

2) Ras-Pi (you supply) -> Arduino shield

3) Ras-Pi -> STM32 -> Arduino shield

 

 

So at first blush, it seems like an interesting concept. Not as freakishly Frankensteinish as you might think.

 

 

After receiving the board I decided to check out the CooCox IDE. I normally don’t use windows for anything, but I do have a copy of Windows 8 I run in VirtualBox for just this type of thing. Before I started playing with this in linux, I wanted to try it out in it’s native environment. I installed the IDE and attempted to run through one of the examples. It was a little confusing to get through the demo, but I was able to resolve all the missing dependencies that I was cautioned about and went to program the board. This was where it asked me to setup my JTAG debugger. Everyone has a JTAG debugger laying around, don’t they? No, I don’t think they do. Fortunately I had ordered a couple of STM32 Discovery boards a few weeks previous, and they do have a ST-Link debugger installed that is jumper selectable to work with either the on board chip, or you can route the SWD Pins to a header that you can attach to. I was able to consult the schematics and get the board connected properly and successfully flashed the board and was on my way. The Coo Cox IDE was familiar as it is based on Eclipse. I reviewed a few of the demos, they seemed pretty reasonable. I will say that I was a bit disappointed that I needed an external Piece of hardware to program the board. I would also like to see Coo Cox make the extra effort to add Linux support.

 

 

But then it occurred to me, STM32 chips have a built in bootloader so that you can load the chip via the serial port. It was then that I decided to connect the Ras PI to the Embedded PI.

 

Rather than provide a socket allowing you stack the embedded Pi on top of the Ras Pi you are supplied a flat ribbon cable to connect the two boards together. I didn’t like the orientation of the boards when connected, but that is just my preference. I reviewed the schematics and connected the uart connections on the Pi and the STM32. I downloaded a python script to allow me to program the STM32 via the uart. I tried a simple program to blink one of the led’s on the embedded Pi and attempted to program the chip. I was unsuccessful. I rechecked my connections and tried again. No success. I looked around and found a usb - ttl rs232 controller and tried that. No success. I reviewed the code, checked the connections, it just wouldn’t work. But I wasn’t gonna give up. I looked around my electronics parts some more and found an FTDI based based adapter, plugged it into the Pi’s usb port, and wired up the tx and receive pins. Success!!! I don’t know why. I was able to repeat this feat several times, downloading a slightly modified program that altered the blink speed of the led each time so I could be sure it really succeeded.

 

 

I went back to the other usb to serial module, still didn’t work, and I again checked directly from the Pi’s gpio exposed uart. No success. I looked at the signals on a scope and all appears correct. I don’t know why it doesn’t work. The only thing I can think of is the signal levels. The Pi puts out 3.3v while the FTDI chip puts out 5v. But the STM32 is supposed to be 3.3v with 5v tolerant inputs.

 

 

If this had been successful I would have been very pleased. But at least I was able to program the board via the Pi even though again it required external hardware.

 

 

The concept of the board is pretty much what you would expect. You can directly access all of the typical Arduino pins directly from the STM32 if desired. You can also configure the board to bypass the STM32 and control the pins with the Pi. I guess the biggest benefit in this case is the 5v level conversion (if necessary) and the isolation of the Pi’s GPIO pins from the external circuit. In the third mode you can run a program on the Pi to interface with the user (if desired, it could be an unattended program or anything that you want) and you run a program on the STM32 to receive messages from the Pi to control the device attached to the Arduino pins.

 

 

In conclusion, while I find this is a pretty interesting board, it was fun to play with, I’m afraid that it may be too advanced for beginners, and unnecessary for the more advanced user. The same functionality could be accomplished with the Freescale FRDM boards at a lower price.

  • Sign in to reply

Top Comments

  • mcb1
    mcb1 over 8 years ago in reply to mconners +1
    i revisited this because http://www.newark.com/embest/embedded-pi/i-o-bridge-rpi-arduino-arm/dp/67W2379?ost=embeddedpi&ddkey=http%3Aen-US%2FEleme… these are now $9.99 Ours are still at $39.20 plus 15%…
  • ntewinkel
    ntewinkel over 8 years ago in reply to mcb1 +1
    That's annoying. And I guess they wouldn't ship it from the US to you, or if they did the shipping is likely to be a multiple of the price anyways Also, Canada.Newark.com is a total mess right now - website…
  • mcb1
    mcb1 over 8 years ago in reply to mconners +1
    And I guess they wouldn't ship it from the US to you I was definitely considering picking up a few Possibly, but here in NZ we have YouShop which is run by the NZ Postal Service. https://www.nzpost.co…
  • Former Member
    Former Member over 12 years ago in reply to mconners

    Hi,Mike

     

       I try this and works fine.

        From you reply, I find one things that you do not use the stm32loader.py provide by coocox at first.

      You said  "but it looks like the only diference was that you hardcoded /dev/ttyAMA0 into the script",It is wrong.

     

    The stm32loader.py provide by coocox has other diference which is crucial.You should  use this file.

     

    One more thing is that you need to set the Embedded Pi to ISP mode ( press BOOT0 and hold it there, and press RESET button for 1 second and release, then release BOOT0, the STM32 will enter ISP mode)

     

    Last pleas give me the picture which include the information after you execute the py script .

     

     

    Best Regards

     

    Sam

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mconners
    mconners over 12 years ago in reply to mconners

    Also, when using the script you referenced I just get None repeated over and over again, even though I had placed the board in bootloader mode.

     

    Mike

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mconners
    mconners over 12 years ago in reply to Former Member

    BTW, when I say I tried all that, I mean I had done this review prior to the post you linked was available, I revisited the issue when I saw that there was an entry on the coo cox blog. I noticed you are redistributing a modified version of the python script I had used when doing this write up, but it looks like the only diference was that you hardcoded /dev/ttyAMA0 into the script. I retried using the script linked in the article and got the same results I had gotten before. I double and triple schecked that tx and rx were connected properly (crossed) so it didn't work for me.

     

    Mike

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mconners
    mconners over 12 years ago in reply to mconners

    I guess it could be an issue with my stm32 or embedded pi board.

     

    Mike

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mconners
    mconners over 12 years ago in reply to Former Member

    I tried all of that, didn't work thru any of my pi's (i tried four of them) built in serial ports. Worked via usb-serial adapter though. I even put a scope on the tx pin of the pi, I can see the signal there, I can see it is sending the right data, the stm32 just won't respond, although if I hook up a usb ftdi serial adapter it works fine.

     

    Mike

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • 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