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 GPIO Control
  • 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
  • Replies 39 replies
  • Subscribers 712 subscribers
  • Views 9919 views
  • Users 0 members are here
  • raspberry
  • gpio
  • raspberry_pi
  • raspberrypi
Related

Raspberry Pi GPIO Control

e14 Contributor
e14 Contributor over 13 years ago

I saw a picture on flickr, which interests me vey much. I want to make a same one, as I want to learn some more about GPIO control.

I got the raspberry Pi and this exact 8 channel relay. How can I do the wire up? There are many cables, I am a bit confused,

image

  • Sign in to reply
  • Cancel
  • mcb1
    mcb1 over 13 years ago in reply to johnbeetem

    John Beetem wrote:

     

     

    You should probably use a relay board with a published schematic (or sufficient reliable on-line discussion) so you can do your own analysis.

     

    It is a shame the Sainsmart don't actually show the necessary information. One of their links points to an ebay seller.

     

    We have continually tried pointing Posters to sites that have documentation so that they can ask the supplier ... maybe we need to stop answering until Sainsmart pull their finger out?

     

     

    pjc123

    Your observations are more in line with what I expected.

    Your method using a transistor (with series resistor between GPIO pin and base ....for those others reading this) is the perfect solution.

     

    Mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • pjc123
    pjc123 over 13 years ago

    Gary Stewart wrote:

    That is not what is specified by the maker of the relay board. They clearly state that each driver input needs 15 to 20 mA.

     

    And everything you read on the Internet is true.......Do as you will.  It also clearly states that it is equipped with a high current relay (AC 250V at 10A, DC 20V 10A), but says nothing about whether the board can handle AC (traces, isolation, etc.) and not only that, I would never use a product that is not UL listed for AC use, or approved by another similar certifying body.  So if you decide to do that as well, up your house insurance policy.   I only use the board for DC applications and have a separate 30amp UL approved relay to operate AC appliances with my pi, and all my wiring, fuses, AC inlet/outlet connectors, etc. are UL certified and meet National Electric Code requirements for selection and how everything is connected together.

     

     

    Mark Beckett wrote:

    Your observations are more in line with what I expected.

    Your method using a transistor (with series resistor between GPIO pin and base ....for those others reading this) is the perfect solution.

     

    In addition to the base resistor (2.2k), I also put a 10k resistor between each GPIO pin and ground.  I specifically have chosen GPIO pins that are INPUTS and in a LOW condition at boot (most, but not all pins are, and also not in the same state at boot depending on what Model B Revision board you are using), however they are floating and can accidentally trip the relay card inputs.  I have seen where other users have experienced this.  The 10k resistor guarantees a LOW at boot, critical in my application anyway.

     

    Some use a UNL2803 instead of a transistor, a darlington pair being way overkill working with such low current/voltage, but in the long run I guess you save money on some of the parts (transistors, resistors, etc.) and it makes wiring a bit easier. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 13 years ago

    A stupidly simple way to connect 3.3V logic to a Sainsmart relay board

     

     

     

     

    http://farm6.staticflickr.com/5345/9061019390_e814e6deb5_z.jpg

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • mcb1
    mcb1 over 13 years ago in reply to e14 Contributor

    Rodney

     

    Thanks for your images and investigations.

    I'm puzzled how a 10M probe will cause the led to partially illuminate, and coupled with the voltages you are seeing, would suggest there is something drawing current, hence the voltages you observe.

     

    I note the Sainsmart site now has some links to documents.

    This is from the pdf (in the zip file) and gives the relay specs http://www.songle.com/pdf/2008961512231004.pdf

     

    Unfortunately errors have crept in, as the relay manufacturer spec is 89mA at 5v, and the sheet claims 400mA when all relays ON  ...someones maths is wrong.

     

    Unfortunately they are missing the excellent documentation provided by Terry King at Yourduino.com

    http://yourduino.com/sunshop2/index.php?l=product_detail&p=218

     

    This shows that there is a 1k resistor in series, which if reduced to 220 ohms will ensure reliable triggering on 3v3.

     

     

    So you have two options.

    1. Is to add a 270 ohm resistor across the 1k (gives 212 ohm)

    2. Short out the indicator led and leave the 1k.

     

    either way involves some careful soldering.

     

    I have a 4 way version, so if I get a chance I'll do some checks.

    In the meantime I am impressed that they have removed the board around the common, and thereby provided a physical seperation between what could be 230vAC and the rest of the low voltage tracks.

     

    mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • pjc123
    pjc123 over 13 years ago in reply to mcb1

    "Unfortunately errors have crept in, as the relay manufacturer spec is 89mA at 5v, and the sheet claims 400mA when all relays ON  ...someones maths is wrong."

     

    The 400ma is actually correct.  I have measured the coil current and it is typically around 50 - 60ma with a 5V supply (400 - 480 ma with all 8 coils activated).  Perhaps you need to take in account all the circuitry associated with the coil and how fully the two transistors are turned on.

     

    Now the 15 - 20ma input current spec definitely is wrong.  Each input requires 1.5 ma (without any circuit modification).  That spec is either a typo, or when they state "each" they mean each board, not each relay.

     

    "This shows that there is a 1k resistor in series, which if reduced to 220 ohms will ensure reliable triggering on 3v3."

     

    Actually it states something like a 220 ohm resistor, so not sure it was even tested or checked whether there would be too much current flow, so since you are going to try this, and since there are no spec sheets for each part on the relay board, I would slowly lower the resistance of the resistor until you get a reliable activation, keeping in mind max current for a typical opto LED and surface mount LED.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 13 years ago in reply to johnbeetem

    There is indeed no noticeable difference between source and sink current. Modern silicon is not like the old days where it could sink a lot more then source.

    One of the reasons is that there is not one transistor/FET anymore. There are a many in parallel. Thus if you want balance you just put a few more in parallel to get symmetrical behaviour.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • e14 Contributor
    e14 Contributor over 13 years ago

    Driving a SainSmart relay with Raspberry Pi

     

    https://coderwall-assets-0.s3.amazonaws.com/uploads/picture/file/1166/guts.jpg

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • mcb1
    mcb1 over 13 years ago in reply to pjc123

    and since there are no spec sheets for each part on the relay board

    I did run into that problem.

     

    Using Terrys figures with 2mA current, a 150 Ohm resistor is required, so a 220 will drop the current to about 1.3mA.

     

    I would be happy using a 3v3 voltage and a 150 ohm resistor which should give 2mA sink current.

     

    Thanks for clarifying the relay draw. As you say the sum of the components is enough to make the difference.

     

     

    mark

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • pjc123
    pjc123 over 13 years ago in reply to mcb1

    Those current values make sense and are in the ballpark of what is needed to get it to work.  When I first got the board a year ago I hooked the Vcc to 3.3V and used a LOW signal to activate it.  I was only measuring 0.49ma current flow through the opto circuitry and the relays were on the hairy edge of working (Sometimes they would work, sometimes they would not).  Switching to using a transistor on the input, 5V for Vcc, and using an active HIGH signal, the current increased to a measured 1.48 ma and the relays worked every time and with a much louder solid click.  In fact I have a separate opto that I bought to operate a 30Amp rated relay that I use to control AC voltages which uses a 1k resistor and is activated directly from the GPIO pin without any additional circuitry and it uses exactly 2.0 ma measured (I selected a Toshiba TLP624-4(F) because the spec sheet calls for a very low recommended operating condition of 1.6 - 2.0 ma).

     

    I had thought of modifying the relay card originally (change the resistor, completely short the external LED, etc.), but I was building a fireworks launcher, and for obvious reasons I didn't want an active LOW circuit.  I just completed that project in the time for the Fourth of July and everything worked out great.  It is a wireless battery operated headless portable fireworks launcher which I operate from my smartphone.  I can launch from a distance of up to 400 feet.  At launch time it is selectable via software for either sequential or simultaneous launches, launch port selection, fuse burn time, and delay time between launches.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • mcb1
    mcb1 over 13 years ago in reply to pjc123

    and for obvious reasons I didn't want an active LOW circuit

    I was wondering what you had against it when I saw the extra board, and components.

    But for your purpose it makes sense.

     

    In your application a short on the control wire will NOT launch thereby making it a 'fail to safe' system.

     

    Thanks

    Mark

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

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube