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
Raspberry Pi
  • Products
  • More
Raspberry Pi
Raspberry Pi Forum power management
  • 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 9 replies
  • Subscribers 664 subscribers
  • Views 1933 views
  • Users 0 members are here
  • raspberry_pi
Related

power management

Former Member
Former Member over 13 years ago

My R-Pi just arrived yesterday, after the long wait since release day, and it is working fine!  I have a question which isn't too pressing, but I'm just curious. With my Pi set up headless, running over the serial UART only, as shown in the photo here: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=44&t=9665#p111172  or here: https://picasaweb.google.com/lh/photo/tGgcfLKxu-WwtoR-yA9tXtMTjNZETYmyPJy0liipFm0?feat=directlink  -you will note that no ethernet and no USB devices of any kind are attached- yet still the Eth/USB chip is the warmest thing on the board, 50 C according to my IR thermometer.  Is there any way to throttle back that chip when it is not in use?

  • Sign in to reply
  • Cancel
Parents
  • morgaine
    morgaine over 13 years ago

    From SMSC's datasheet on the LAN9512 @ http://www.smsc.com/media/Downloads_Public/Data_Sheets/9512.pdf  :-

     

    — Implements Reduced Power Operating Modes

    — Advanced power saving features

    — Downstream PHY goes into low power mode when port power to the port is disabled

    — Full Power Management with individual or ganged power control of each downstream port.

     

    1.1.6 Power Management

    The LAN9512/LAN9512i features three variations of USB suspend: SUSPEND0, SUSPEND1, and SUSPEND2. These modes allow the application to select the ideal balance of remote wakeup functionality and power consumption.

     

       SUSPEND0: Supports GPIO, “Wake On LAN”, and “Magic Packet” remote wakeup events. This suspend state reduces power by stopping the clocks of the MAC and other internal modules.

       SUSPEND1: Supports GPIO and “Link Status Change” for remote wakeup events. This suspend state consumes less power than SUSPEND0.

       SUSPEND2: Supports only GPIO assertion for a remote wakeup event. This is the default suspend mode for the LAN9512/LAN9512i.

     

    4.3.1 SUSPEND0

        Power Dissipation (Device and Ethernet components) 379 mW

    4.3.2 SUSPEND1

        Power Dissipation (Device and Ethernet components) 229 mW

    4.3.2 SUSPEND2

        Power Dissipation (Device and Ethernet components) 14.1 mW

     

    So, it seems that you'll be in luck once we figure out how to activate the power-down modes, which presumably is done in the driver but might already have control points brought out into /sys space.

     

    I'm puzzled why there is so much variation in the temperature that people are seeing under zero traffic conditions though.  It's a long shot, but I guess it's worth checking that the 3.3V really is 3.3V.  Assuming that the supply is in spec, then this does rather look like SMSC's manufacturing parameter control is rather poor.

     

    While I'm at it, the maximum specified operational power seems to be:

     

    4.3.4 Operational Current Consumption & Power Dissipation

    100BASE-TX Full Duplex (USB High-Speed)

         Supply current (VDD33IO, VDD33A) 231 mA

         Power Dissipation (Device Only) 763 mW

     

    PS. Great idea to power it from the USB-UART for headless operation! image

     

    Morgaine.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 13 years ago in reply to morgaine

    jbeale,

       very impressive.

     

    You can disable the usb by doing (as root)

     

    echo 1 > /sys/devices/platform/bcm2708_usb/bussuspend

     

    which stops the 8000 interrupts/sec, and probably will save power.

     

    You can also desolder the lan chip, as at least one user has done.

    http://www.raspberrypi.org/phpBB3/viewtopic.php?f=63&t=6747&start=153

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to Former Member

    Good catch, coder27.  Dom seems to have posted that info:  http://www.raspberrypi.org/phpBB3/viewtopic.php?f=28&t=7866#p95086

     

    I wonder which of the three LAN9512 suspend modes it activates.  Hopefully SUSPEND2, if there is only a single boolean control.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 13 years ago in reply to morgaine

    I also posted this at http://www.raspberrypi.org/phpBB3/viewtopic.php?f=28&t=7866&sid=29a2c3f1cba25fb9122f3f047afbbb92&start=25#p111978

     

    In case of interest: with the R-Pi sitting idle with 'top' load average: 0.00, 0.01, 0.05

    No monitor, no video, no USB and no Ethernet devices connected (UART serial port only -see http://www.raspberrypi.org/phpBB3/viewtopic.php?f=44&t=9665).

    Voltage is measured onboard, TP1-TP2.  Ambient surface temperature is 27 C, air temp 24 C.

    IR thermometer: MicroTemp MT100 cross-checked with thermocouple sensor.

     

    RPi power draw:  318 mA at 5.0 V (1.59 W)   Chip temperatures: SoC: 46 C, Eth/USB: 51 C, SD card: 32 C

     

    after this command as root, and waiting 10 minutes for temperature to stabilize

      echo 1 > /sys/devices/platform/bcm2708_usb/bussuspend


    RPi power draw: 182 mA at 5.0 V (0.91 W)  Chip temperatures: SoC: 40 C, Eth/USB: 39 C, SD card: 30 C

     

    so the system uses 1.59 W when idle but Eth/USB on, and 0.91 W when Eth/USB shut down, nearly half the power. This could make a difference in some possible use cases, where you want to power up the high-bandwidth link only when needed. I wonder if the Eth/USB system be turned back on after "bussuspend" without doing a full reboot- hopefully so.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to Former Member

    echo 0 > /sys/devices/platform/bcm2708_usb/bussuspend


    will almost certainly turn it back on.  That's how all the other controls in /sys work.

     

    I should be able to check myself next week. image  \o/

     

    Morgaine.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 13 years ago in reply to morgaine

    That was the first thing I tried, but assumed it did not work, because the current draw remained at 182 mA, and also I could not mount a USB device. I think something else has to be manually restarted.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to Former Member

    Ah.  Well the values of leaf entries in /sys don't have to be boolean, so they might have mapped the suspend values as

     

    0 - SUSPEND0 - 379 mW

    1 - SUSPEND1 - 229 mW

    2 - SUSPEND2 - 14 mW

    3 - No suspend - 763 mW, everything on, default value of bussuspend

     

    or indeed any other numeric mapping.  So it's worth trying all the low numbers. image

     

    I could try to figure it out from the driver, but it's really dark in there and I got scared the last time I looked. :-P

     

    PS. Try reading the value first after a reboot, to determine its default value.  (cat .../bussuspend)

     

    Morgaine.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • morgaine
    morgaine over 13 years ago in reply to Former Member

    Ah.  Well the values of leaf entries in /sys don't have to be boolean, so they might have mapped the suspend values as

     

    0 - SUSPEND0 - 379 mW

    1 - SUSPEND1 - 229 mW

    2 - SUSPEND2 - 14 mW

    3 - No suspend - 763 mW, everything on, default value of bussuspend

     

    or indeed any other numeric mapping.  So it's worth trying all the low numbers. image

     

    I could try to figure it out from the driver, but it's really dark in there and I got scared the last time I looked. :-P

     

    PS. Try reading the value first after a reboot, to determine its default value.  (cat .../bussuspend)

     

    Morgaine.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • Former Member
    Former Member over 13 years ago in reply to morgaine

    Immediately after a fresh boot:

     

    pi@raspberrypi:~$ cat /sys/devices/platform/bcm2708_usb/bussuspend

    Bus Suspend = 0x0

    pi@raspberrypi:~$ cat /sys/devices/platform/bcm2708_usb/buspower

    Bus Power = 0x1

    pi@raspberrypi:~$ cat /sys/devices/platform/bcm2708_usb/busconnected

    Bus Connected = 0x1

     

    and after the suspend action, Bus Power and Bus Connected go to 0. But even root can't write to ~/busconnected, maybe it's a read-only status bit?

     

    root@raspberrypi:/home/pi# echo 0 > /sys/devices/platform/bcm2708_usb/bussuspend

    root@raspberrypi:/home/pi# echo 1 > /sys/devices/platform/bcm2708_usb/buspower

    root@raspberrypi:/home/pi# echo 1 > /sys/devices/platform/bcm2708_usb/busconnected

    bash: /sys/devices/platform/bcm2708_usb/busconnected: Permission denied

    root@raspberrypi:/home/pi# cat /sys/devices/platform/bcm2708_usb/busconnected

    Bus Connected = 0x0

     

     

    There are other devices, but I think I need some more info...

     

    pi@raspberrypi:~$ ls /sys/devices/platform/bcm2708_usb/

    busconnected  ggpio      gusbcfg     hsic_connect  regdump        subsystem

    buspower      gnptxfsiz  hcddump     inv_sel_hsic  regoffset      uevent

    bussuspend    gotgctl    hcd_frrem   modalias      regvalue       usb1

    devspeed      gpvndctl   hnp         mode          remote_wakeup  wr_reg_test

    driver        grxfsiz    hnpcapable  pools         spramdump

    enumspeed     gsnpsid    hprt0       power         srp

    gadget        guid       hptxfsiz    rd_reg_test   srpcapable

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