Fanless Aspire One

Discussion in 'Modding and Customization' started by obarriel, Jul 22, 2008.

  1. obarriel

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    I did open my AA1 for the first time, to see the fan. Unfortunately I didn't figure a way to have it open and working, to try "see" from where that noisy come.

    Well, I started writing a wiki page with some technical information about the fan and ideas to hack it, maybe make the fanless hack...

    I would like to hear suggestions and ideas. Fan is very easy to control, simple electronics piece of hardware :)

    IDEA: Can someone record with Audacity audio from internal mic, on a noisy AA1 but on a silent space? -- I hope to see an audio wave that should have almost the frequency of the noise... and that should be related to the problem... maybe PWM control signal of the fan.
     
    casainho, Aug 12, 2008
    #61
  2. obarriel

    rachel

    Joined:
    Aug 10, 2008
    Messages:
    80
    Likes Received:
    0
    Disassemble as far as the mainboard. Disconnect all the connectors that attach to the top and side, but not the one that connects to the underside. That's power. Turn it over, plug the mains lead back in, turn on with the exposed microswitch under where the power button usually sits. You can plug the internal display connector back in once you've turned the board over, but you'll only see the bios and you'll just put more wear and tear on the display connector and lead. You only want to do this to *hear* the fan, and prod at it, after all. :)

    (Alternative, don't unplug the display connector at all, but unplug the power connector on the underside, turn the board over, then plug it back in. The leads just aren't long enough to give enough clearance over the case bottom otherwise.)

    By 'working', of course, it only gets as far as the bios and moans that it can't find an OS. But the fan runs, for me anyway. If you *really* wanted to get it running an OS I guess you could netboot it or plug in a usb bootable (eg: ubuntu live) and external keyboard/mouse, even an ext monitor. I haven't tried this so I don't know if it goes into a sulk if its own display, keyboard, trackpad aren't connected.

    I'll be interested in seeing what comes up, that might be doable with my own *meagre* electronics skills :-D (I don't think I can devise a good solution but I hope to be able to follow clear instructions.)

    Hmm. I chose the sound-support option that disables the mic, on ubuntu... I may have a go at this tomorrow.
     
    rachel, Aug 13, 2008
    #62
  3. obarriel

    esaym

    Joined:
    Aug 7, 2008
    Messages:
    60
    Likes Received:
    0
    I wonder if the fan blades could be touching against the metal housing or something? I does look like a custom shroud. hmm

    Mine should be here on the 14th. Hopefully mine won't have this problem but I do have a good audio mic that I could record with. I am thinking that you could remove the fan from the board and attach it to 3 AA batteries in series, that would give you 4.5 volts then you could play with it all you wanted to see where the noise is coming from.
     
    esaym, Aug 13, 2008
    #63
  4. obarriel

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    Rachel would note that, I doughty that blades are touching on metal housing.

    In my daily work I have one digital oscilloscope and a DC power source. I am on holidays during next 10 days...

    I will first measure the signals using the oscilloscope - I will then understand If fan is sourced with a PWM signal and what speed it is rotating by measuring the "feed-back" wire.

    Reading on internet about PC fans, all looks like to say that the only way to control fan speed (that which have 3 wires) is with PWM source signal or varying the DC source voltage -- as PWM is much more simpler and cheap hardware, I am strong believe that this noisy is because of PWM.

    Unfortunately, I am trying to record with internal mic and using Audacity as root but seems I am recording nothing... -- I did record using this tools in past, but on another computers.
     
    casainho, Aug 13, 2008
    #64
  5. obarriel

    RuKK

    Joined:
    Aug 13, 2008
    Messages:
    2
    Likes Received:
    0
    Yo yo. First post and all that. Just wanted to say nice work rachel, way to go finding that vibration. Certainly confirmed my purchase of the 120gb/512/linux AA1. I'll join the hardware hacking as soon as I get it, hopefully NCIX will have them in stock on the 20th. Nothing gets to Canadia quickly.

    The first thing that occurs to me as far as taking care of the fan noise is adding rubber mounts to the fan with some strong glue that still has a little movement to it. Maybe a marine solution like 3M 5200 or even Sikaflex. That should dampen the whole thing royally eh.

    Second idea is adding a heatpipe cooling system. What makes the most heat in there? I would guess its the chipset, not that little Atom? But even so, it'd be reasonably easy to adapt a couple laptop coolers, mount them up and run the heatpipes through the chassis, maybe out the back end? I've gotta look at the whole setup before I can come up with any specifics, but this little thing looks fun to hack. I fix laptops for a living so I've got a stack of dead ones with assorted heatpipe coolers in them to play with. We'll get into this more, Ladys and Gentlemen!

    James
     
    RuKK, Aug 13, 2008
    #65
  6. obarriel

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    Someone told its colling system for Atom and VGA chipset.

    Someone tried to disconnect the fan but system did shutdown after a few time - I guess fan must return the "feed-back" signal of his rotation or system will assume an error...
     
    casainho, Aug 13, 2008
    #66
  7. obarriel

    RuKK

    Joined:
    Aug 13, 2008
    Messages:
    2
    Likes Received:
    0
    Sounds plausible. So we either need to emulate a signal, or just have a fan there. The other question is, if you put a big potentiometer in line with the VDC on the fan, how far can you turn the thing down without the auto protection kicking in? Maybe its a set RPM, maybe its just ANYTHING. Maybe we could turn the fan down to a couple hundred RPM and use auxillary heatpipes to take care of the cooling issue. This is all speculation, but we have no end of options. Somebody stick a pot on the fan and see what happens!
     
    RuKK, Aug 13, 2008
    #67
  8. obarriel

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    It's simple with a microcontroller to do that. We need to find 5 volts on main board to use for microcontroller.

    I think is not good idea to do something on that wires without first seeing on oscilloscope whats is there, how fan is sourced and what fan outputs as "feed-back" signal.

    Other idea: Open the AA1 and near the fan connector on the main board, try to find one IC that should be responsible to control (PWM??), turn on/off the fan. Fan is 5V and 0,6W, which means 120mA at is maximum speed... 120mA is a bit, I guess there is some IC to control the fan, would be nice to find it and read his datasheet, will give clues about the function of all fan system.

    Another thing intriguing me is that fan is always rotating at same speed, right? -- Is it rotating at his maximum speed? -- because I read on forums that if "feed-back" signal is not present, the main board system that controls fan can simple put it always at is maximum speed.

    Can someone tell If on original GNU/Linux the fan have the same behavior? Always at same speed, noisy?
     
    casainho, Aug 13, 2008
    #68
  9. obarriel

    Guest Guest

    I think the fan is controlled by the WPCE775x embedded controller located near the zif connector for the ssd. Look at this pic, the ic on the right hand side (there is "Winbond" written on it).

    The WPCE775x has 3 PMW outputs. The fan is controlled by the firmware itself wich is stored within the bios rom (don't know the address where exactly).

    Look at my other thread for more informations. Perhaps someone knows how to reverse the bios rom?

    It has at least two steps.. in the bios changelog i found some entry "1. Update new Fan table, change 49'C up to middle speed."
     
    Guest, Aug 13, 2008
    #69
  10. obarriel

    rachel

    Joined:
    Aug 10, 2008
    Messages:
    80
    Likes Received:
    0
    The metal plate leading between the fan and the vent covers the atom and, I believe, the gma950, yes.

    The atom does get quite hot. Sorry, that's an entirely subjective opinion, I don't have any instrumentation.

    (It would be something if the bios ACPI implementation exposed the thermal zone and fan control stuff, so it could be monitored and controlled in the OS. One can hope a future bios revision will do so.)

    I massively favour a heatpipe cooling system, if one can be devised. I'm all in favour of removing the only moving part it has. :)
     
    rachel, Aug 13, 2008
    #70
  11. obarriel

    rachel

    Joined:
    Aug 10, 2008
    Messages:
    80
    Likes Received:
    0
    Quite. It was my impression the atom doesn't get "that hot" but again that's all subjective. My earlier "frozen peas" test did last a bit longer than without, when the fan was disconnected, so there is at least some relation to temperature, I'd guess.

    Sounds good. :)
     
    rachel, Aug 13, 2008
    #71
  12. obarriel

    rachel

    Joined:
    Aug 10, 2008
    Messages:
    80
    Likes Received:
    0
    No, it does modulate; there is a relationship between activity and fan speed; it's just that it's still noisy as hell at its lowest setting.

    It doesn't modulate very *well* it seems: It's a bit rachet-like, it goes up but never comes down. Well, it's become a little more inclined to come down since putting the latest bios in but still, if it steps up above the minimum fan speed it tends to stay there.

    On the bios alone it does sit at the low speed for a little while then steps up. I'd guess the bios doesn't do any cpu throttling or sleeping. :)
     
    rachel, Aug 13, 2008
    #72
  13. obarriel

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    sc2k, can you please contribute in writing all this technical info on wiki page for fan hack?

    Nice findings yours!! -- I think we should gathering information about hardware and BIOS... - you said firmware that controls fan is also on BIOS code? are you sure?

    If we could alter the firmware, would be a dream!! because it's easy replaceable by any user and maybe there is a recover process for a bad BIOS - like USB disk BIOS default image.

    Rachel, can you please answer to everyone with just one message? - and contribute by writing on that wiki page fan hack?

    I did open again the AA1 and this time made some tests with fan. I need to use an USB keyboard and an external USB hard disk with GNU/Linux Ubuntu Live (GNU/Linux is also great for hacking/development) :)

    [​IMG]

    • System boots with fan unconnected but turns itself off after some time;[/*:1stublxs]
    • If fan is unconnected after boot, system turns itself off after some time - I was on GNU/Linux Ubuntu live session 1 time when this did happen and other I was waiting on BIOS menus;[/*:1stublxs]
    • The noise is from vibration of metal casing of fan, not any blades touching on metal case. I did put my fingers on metal case and noise was reduced, maybe because vibrations were passing to my fingers, body mass, acting as vibrations filter;[/*:1stublxs]
    • Or the fan make all that vibrations, noise, with original 5 volts dc source energy OR that vibrations are because of "bad" source energy to fan. On this fans, looks like the only way to control his speed is by altering the source energy with PWM, which is cheap and simple in hardware. I think that a lower (or higher) frequency of PWM signal is causing this audible vibrations.[/*:1stublxs]
     
    casainho, Aug 13, 2008
    #73
  14. obarriel

    bbkarn

    Joined:
    Aug 13, 2008
    Messages:
    18
    Likes Received:
    0
    I have just finished going through this thread, and now I am a little worried about fan noise. Is it really that bad?

    Anyway, for controlling fan speed in my desktop machine I use a zalman fan mate, which has a little knob allowing me to reduce voltage (?) and hence noise. Has anyone thought about trying something like this in the aspire one? Also do CPU temp monitoring things work with the Atom? I'd be interested to know what temperature it idles at with/without fan.
     
    bbkarn, Aug 13, 2008
    #74
  15. obarriel

    Guest Guest

    Not quite sure. At least some informations must be present in the bios rom.

    From the product brief of this controller:

    "Shared SPI BIOS flash memory"

    Combined with the fact, that in a bios update the temperature for middle speed was changed, there must be at least some kind of table in the ROM. And reading through the bios changelog (look at "EC:") we might have a good chance to find some interesing functions there but i'm not that familiar with bios disassembling..

    Another approach used in several kernel modules for fan controlling would be to access the registers directly (have a look at the acer_acpi module).
     
    Guest, Aug 13, 2008
    #75
  16. obarriel

    rachel

    Joined:
    Aug 10, 2008
    Messages:
    80
    Likes Received:
    0
    I was answering individual points in different messages. :p

    And I'm not confident enough of my findings to be posting them on the wiki tbh. :-}

    Ooh, my turn, on crappy-phonecam-o-vision:

    [​IMG]



    • I was actually starting to wonder if I was right to say that originally. The whine-noise doesn't go away *entirely* however much you damp down the case vibration.

      Having said that, the configuration shown in the picture is pretty quiet. The fan is running but much more quietly than before; the topside of the board resting on a magazine. At this volume I probably would have thought it acceptable. I'm thinking of sticking it inside a spare mini-itx case I have lying around...

      I think much of the problem is down to amplification by the *case*.

    Well, here's another observation for what it's worth: If you look closely at the configuration in the picture, you'll see I've completely blocked (with blu-tak again) the airflow from the fan where it goes over the heatsink tray. So the fan is running, but the chips aren't getting any benefit from it.

    And the fan isn't going any faster than its low setting, as one might expect if it was trying to compensate for too high a temperature.

    I haven't stressed the system yet; it's sitting idle quite happy with the cpu at mostly 800MHz. I'll stress it in a bit and see if it still copes.

    But I am starting to think again that fan behaviour is related to cpu *activity* not cpu *temperature*. Perhaps the bios doesn't give us an acpi thermal zone because there is in fact no decent temperature sensor?

    I tried an ad-hoc fanless heatsink by piling small coins in the heatsink tray. Fan behaviour wasn't affected, but again the system was stable, but still shut down soon after the fan was unplugged. But it was realising belatedly that the coins were blocking any airflow from the fan that made me try what I'm trying now.

    ...

    OK, stressing the CPU: Running system monitor and system monitor applet with fastest available refresh time and watching a youtube video is pretty much maxing out the CPU. Now watching BBC news streaming live (not hearing though; I think I figured out which was the internal sound connector, and I have no spare speakers). That's harder than I ever intend to drive it in normal use. Not least because, with the cpu going full-speed we're not quite getting full frame rate. It's not a super-fast computer, but we knew that, that's not what we bought it for. :)

    I've also covered the board with a booklet, to more closely (but not exactly) match the enclosed space inside the case.

    Fan picked up speed and it seems happy with having done that. It's still not getting any air *from* the fan over the heatsink of course...

    I'm beginning to think all we need to do is plug something into that fan socket that makes the bios think the fan's there...

    What I don't know, of course, is how close we are, or not, to the tolerance limits. The only way to know is to exceed them enough that it goes down hard. :-} But this isn't doing it.

    EDIT: It's still working fine, but I note that the booklet I covered it with is warm all the way through (42 thin pages plus cover), and on the side facing the heatsink is actually rather hot now.

    Entirely to be expected. I wonder if maybe the fan is there not so much for the CPU's sake as for the sake of our laps? Disabling the fan is going to make the underside hotter than it gets now. I don't know if there's a legal requirement to make sure that the outside/underside of these things can't get over a certain temperature for fear of skin-burns and fire-starting. That said, I can't imagine this getting hotter than my macbook and, before that, my (1GHz) powerbook, on the underside.

    So a heat-pipe arrangement would probably still be a good idea, but as a way of increasing our tolerances and making sure - as the fan presumably does - that the heat goes towards the side vent.
     
    rachel, Aug 13, 2008
    #76
  17. obarriel

    Davidcowling

    Joined:
    Jul 17, 2008
    Messages:
    387
    Likes Received:
    0
    Location:
    Gloucestershire, United Kingdom
    woah
     
    Davidcowling, Aug 13, 2008
    #77
  18. obarriel

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    I am reading more about SPI BIOS flash and this kind of controllers. I found a good page from OLPC.

    About acer_acpi, I would like to read more and find what we can get using that code... - I read in a message that this code as "ACPI-WMI" as added to kernels 2.6.25... can some one investigate it?

    We should work with Carlos on acer_acpi EC controller.

    Rachel, is always nice to understand If we can have a fanless AA1. I can for sure make a small system to act as this fan, to fool the system :)

    I had seen some EEPROM memory on board, can it be the SPI flash memory that holds the BIOS code?
     
    casainho, Aug 13, 2008
    #78
  19. obarriel

    rachel

    Joined:
    Aug 10, 2008
    Messages:
    80
    Likes Received:
    0
    hold yer horses... I just came back to it after another half hour or so, and it had crashed. It hadn't powered down the way it does if you unplug the fan (power light was still on, fan was still running); rather I had assumed it had just blanked (powersave) the screen until was hitting the keyboard trying to get its attention.

    It *may* have crashed for a software reason, or it may have crashed because the processor stopped. The latter may be more likely.

    TBH I'm still OK with this, as this was driving the cpu much harder and for much longer than I would in real life, but it shows we are near the limits I suppose.

    Now, let's see if it turns back on again...

    Yep.

    It's interesting therefore to note that if it goes down due to a thermal cutoff in the CPU itself (and that is a guess) it does go down hard; whereas if the bios decides to shut it off, not because it's actually too hot but just because the fan's not running, it powers-down in an orderly fashion.

    So again, the bios is presumably not acting on actual temperature data...
     
    rachel, Aug 13, 2008
    #79
  20. obarriel

    casainho

    Joined:
    Jul 21, 2008
    Messages:
    88
    Likes Received:
    0
    I did used acer_ec.pl script to see the values of registers and I clearly see that they change overtime. Would be nice If some register control the fan and If we can disable it or slow it :)

    For example, I will try first put the brightness lower and after higher and try to understand If there is some register that holds that information. I am using the following commands and that script to register various text files:
    sudo perl acer_ec.pl regs > dump_ec_registers-01.txt

    Does anyone knows how to use a kind of diff command just to highlight the differences between each files, values of inside that registers?

    Code:
     
      	00	01	02	03	04	05	06	07	|	08	09	0A	0B	0C	0D	0E	0F
      	__	__	__	__	__	__	__	__	|	__	__	__	__	__	__	__	__
    00 |	0	0	0	0	0	0	0	0	|	0	0	128	9	143	143	142	128	
    10 |	143	143	5	5	0	0	0	0	|	0	0	0	0	0	0	0	0	
    20 |	0	0	0	0	0	0	0	0	|	0	0	0	0	0	0	0	0	
    30 |	0	0	0	0	0	0	0	0	|	0	0	0	0	2	20	225	31	
    40 |	163	3	32	49	0	0	0	0	|	0	0	0	0	0	3	0	0	
    50 |	0	4	0	0	49	2	0	0	|	47	3	0	0	194	0	2	0	
    60 |	65	8	144	16	1	5	0	0	|	0	0	225	15	0	0	3	18	
    70 |	6	3	177	1	0	128	0	99	|	5	0	199	11	212	56	159	0	
    80 |	255	8	61	49	0	0	0	0	|	255	8	162	4	96	9	92	43	
    90 |	7	0	0	2	0	3	0	0	|	33	0	1	97	0	0	0	0	
    A0 |	0	0	0	0	0	0	0	0	|	0	0	0	0	0	0	0	0	
    B0 |	0	0	0	0	0	0	0	0	|	0	0	0	0	0	0	0	0	
    C0 |	0	0	0	0	0	0	0	0	|	0	0	0	0	0	7	48	49	
    D0 |	0	0	0	0	0	0	0	0	|	0	0	0	0	0	0	0	0	
    E0 |	0	0	30	35	30	49	44	127	|	0	0	0	0	0	0	0	0	
    F0 |	0	0	0	0	0	0	0	0	|	0	0	0	0	0	0	0	0
    
    EDIT: I got the register for controlling the display light :) -- It's register 0x51 :) -- I tested by changing the display light and reading the values, using the following code:
    Code:
    cas@cas-laptop:~$ sudo perl acer_ec.pl ?= 51
    REG[0x51] == 0x00
    cas@cas-laptop:~$ sudo perl acer_ec.pl ?= 51
    REG[0x51] == 0x02
    cas@cas-laptop:~$ sudo perl acer_ec.pl ?= 51
    REG[0x51] == 0x05
    cas@cas-laptop:~$ sudo perl acer_ec.pl ?= 51
    REG[0x51] == 0x09
    
    and doing sudo perl acer_ec.pl := 51 0 did put the display light to minimum :) -- so I now know how to read and control this registers... lets find If fan and others things are exposed on this registers...
     
    casainho, Aug 13, 2008
    #80
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.