Author

Topic: Avalon ASIC users thread - page 143. (Read 438516 times)

-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
July 02, 2013, 09:54:28 AM
How long do I have to wait till "avalon-auto" finds the optimal frequency? Or after what time I can say thats the optimal freq now to set locked?


It will usually continue to fluctuate indefinitely but you'll find it hovering +/-2 MHz, and that value's about the optimal. It will of course go lower if it starts getting too hot. Most seem to fall into two camps, close to 350 or close to 365. I run mine slightly lower than 350 since it seems to end up rebooting the router eventually at the highest setting (not cgminer but the whole hardware which is a little disconcerting). This is why I was experimenting with a less aggressive firmware yesterday, but in this world maximum hashrate seems to be the only thing that matters for most people...

does --avalon auto require that default be left at 282?

reason being, hashrate the other day wasn't going up as fast as i expected so i gave it a boost by changing default to 325 which obviously immediately jacked up the MH/s.  everything seems ok since but should i not have done that and is it affecting the auto function?
Nope. Whatever you want as starting speed.
legendary
Activity: 1764
Merit: 1002
July 02, 2013, 09:19:46 AM
How long do I have to wait till "avalon-auto" finds the optimal frequency? Or after what time I can say thats the optimal freq now to set locked?


It will usually continue to fluctuate indefinitely but you'll find it hovering +/-2 MHz, and that value's about the optimal. It will of course go lower if it starts getting too hot. Most seem to fall into two camps, close to 350 or close to 365. I run mine slightly lower than 350 since it seems to end up rebooting the router eventually at the highest setting (not cgminer but the whole hardware which is a little disconcerting). This is why I was experimenting with a less aggressive firmware yesterday, but in this world maximum hashrate seems to be the only thing that matters for most people...

does --avalon auto require that default be left at 282?

reason being, hashrate the other day wasn't going up as fast as i expected so i gave it a boost by changing default to 325 which obviously immediately jacked up the MH/s.  everything seems ok since but should i not have done that and is it affecting the auto function?
sr. member
Activity: 266
Merit: 250
July 02, 2013, 06:13:55 AM
So, finally i build a functional firmware with my changes to cgminer in previous posts and a little backport from latest firmware. Currently using it, fan speed regulation works as expected. I guess, no one needs it now, but feel free to ask if you intending to replace fans to TFC1212DE or simular with inverted PWM behavior.
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
July 02, 2013, 01:59:38 AM
How long do I have to wait till "avalon-auto" finds the optimal frequency? Or after what time I can say thats the optimal freq now to set locked?


It will usually continue to fluctuate indefinitely but you'll find it hovering +/-2 MHz, and that value's about the optimal. It will of course go lower if it starts getting too hot. Most seem to fall into two camps, close to 350 or close to 365. I run mine slightly lower than 350 since it seems to end up rebooting the router eventually at the highest setting (not cgminer but the whole hardware which is a little disconcerting). This is why I was experimenting with a less aggressive firmware yesterday, but in this world maximum hashrate seems to be the only thing that matters for most people...
sr. member
Activity: 302
Merit: 252
July 02, 2013, 01:54:26 AM
How long do I have to wait till "avalon-auto" finds the optimal frequency? Or after what time I can say thats the optimal freq now to lock?

Also what do I have to put in the single frequency field when using --avalon-auto? Is that the start frequency?

legendary
Activity: 1246
Merit: 1002
July 01, 2013, 08:10:27 PM

I finally got altium viewer installed and looked at the board designs. The fuse definitely needs to be removed.

I thought maybe you could just remove the J1 jumper, but it looks like the usb-hub chip will still be overvolted unless the fuse is removed.


I installed Altium viewer, and I attempt to open Avalon_BP.PcbDoc or Avalon_BP.schDoc and I can't see that anything happens.  The example files all work.  I re-downloaded the files.  All is now good.

I am not "logged in."

-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
July 01, 2013, 07:34:27 PM
Slightly updated firmware:

http://ck.kolivas.org/apps/cgminer/avalon/20130702/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin

This rolls back to the previous hardware error target of <2% when using avalon-auto which is worth about 1.5GH more on average.

Is this hardware error target per module? If one module has 3% error, and the other 2 modules have 0% error, that would be fine.
Total
legendary
Activity: 3878
Merit: 1193
July 01, 2013, 07:33:31 PM
Slightly updated firmware:

http://ck.kolivas.org/apps/cgminer/avalon/20130702/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin

This rolls back to the previous hardware error target of <2% when using avalon-auto which is worth about 1.5GH more on average.

Is this hardware error target per module? If one module has 3% error, and the other 2 modules have 0% error, that would be fine.
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
July 01, 2013, 07:24:23 PM
Slightly updated firmware:

http://ck.kolivas.org/apps/cgminer/avalon/20130702-1/openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin

This rolls back to the previous hardware error target of <2% when using avalon-auto which is worth about 1.5GH more on average.

EDIT: Adds a check for maximum fanspeed before throttling speed at higher temps as well.
sr. member
Activity: 266
Merit: 250
July 01, 2013, 03:57:23 PM
Anyone tried to build avalon image from sources?
I've got this error in the end of process
Code:
make[2]: Entering directory `/home/build-image/avalon/luci/contrib/uci/uci.git/lua'
gcc -I..  -I/include -O2 -fPIC -c -o uci.o uci.c
uci.c:24:21: fatal error: lauxlib.h: No such file or directory
compilation terminated.
make[2]: *** [uci.o] Error 1
make[2]: Leaving directory `/home/build-image/avalon/luci/contrib/uci/uci.git/lua'
make[1]: *** [compile] Error 2
make[1]: Leaving directory `/home/build-image/avalon/luci/contrib/uci'
*** Compilation of contrib/uci failed!
make: *** [gccbuild] Error 1
make: Leaving directory `/home/build-image/avalon/luci'
But i found ready image openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin in /avalon/openwrt/bin/ar71xx
(not in avalon/bin/ as stated, probably because script is not exited correctly)
Should i just ignore this error and use it or something goes wrong?

ADD:

Seems that image only builds successfully on initial --clone option.
Found this, but it's not a solution. Seems that build script is not working "out of box"
If anyone already successfully build a working firmware, please share your experience.

ADD:

Fixed this errors by putting in makefiles "-I/home/build-image/avalon/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include/" where compiler can't find this file. Something is wrong with the path where make for luci starts. I feel this is not the right way to do this (better solution anyone?), but received .bin image file in result.
hero member
Activity: 871
Merit: 1000
July 01, 2013, 10:24:18 AM

Thanks, much appreciated hash donation!

You're welcome!

You are now No.1 on Ozcoin  Grin
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
July 01, 2013, 10:16:34 AM

Hello ckolivas

Great job!
Everything is going great.
I love the fix value for the fans speed!
Let my 5 Avalon for a few hours on your donation pool!

Many thanks

Greetings from Switzerland
Tinu

PS: What I see is, "memory usage" in the "process status" is at 119% Huh
Thanks, much appreciated hash donation!

Memory usage on linux looks like that often as it includes all sorts of cached data as well as what's actually in use. It's of no major significance.
hero member
Activity: 871
Merit: 1000
July 01, 2013, 09:35:09 AM

Hello ckolivas

Great job!
Everything is going great.
I love the fix value for the fans speed!
Let my 5 Avalon for a few hours on your donation pool!

Many thanks

Greetings from Switzerland
Tinu

PS: What I see is, "memory usage" in the "process status" is at 119% Huh
newbie
Activity: 3
Merit: 0
July 01, 2013, 06:28:03 AM
If any avalon users have managed to brick their wr703n and dont have serial access to it , I can offer an unbricking service for 0.50 btc or if they have blown it up somehow ... a new ready programmed modified wr703n with the additional memory for 1btc.. pm if interested ..Prices include p&p in the Uk  for overseas users , there will be additional nominal postage . Turnaround should be same day ... pm if interested


 
sr. member
Activity: 388
Merit: 250
July 01, 2013, 05:59:39 AM
tested again with the latest firmware
flash it without keep settings , restart , change root pass and change ip , restart power off 1min
try to hash for donation , stop start cgminer   power off 1 min
apply settings again 282 , cgminer stop , power off
0 hash rate
I think there must be something wrong with the fpga bord   in my av ver 1
went back to 519b
Regards
Thor
sr. member
Activity: 266
Merit: 250
July 01, 2013, 05:33:08 AM

New command line options:

--avalon-fan Set fanspeed percentage for avalon, single value or range (default: 20-100)
--avalon-freq Set frequency range for avalon-auto, single value or range


Well, i would finish soon code for custom fans to allow setting MIN/MAX_PWM value (currently hardcoded 0x20, 0xA0 values) and inverse pwm option behavior when 0x00 = full speed (im back to original solution when change in temp_rise(), temp_drop() functions is needed) would you also include this changes after i test them on my inverse PWM fans?
To allow avalon be more flexible with different type of fans - like this :
Code:
0x00 = 4320 RPM
0x20 = 3840 RPM
0x40 = 3120 .. 3000 RPM
0x80 = 1440 .. 1320 RPM
0x84 = 1200 .. 1080 RPM
0x88 = 960 .. 840 RPM
0x8A = 720 .. 600 RPM
0x8C = STOP , 0 RPM

ADD:

Edited fresh sources, now with --avalon-fan i think only one additional option is needed,
so i added options --avalon-invert-pwm and functions temp_rise_invert(), temp_drop_invert(), adjust_fan_invert()
also changed some places where DEFAULT_PWM_MIN/MAX constants appears.
I will post the changes once i test them on my setup.

ADD:

So it works as expected! I think im done here.
Now what i have done to the latest cgminer sources from git :

in cgminer.c , inserted @ LINE 1063
Code:
           OPT_WITHOUT_ARG("--avalon-invert-pwm",
                                    opt_set_bool, &opt_avalon_invert_pwm,
                                    "Enable avalon use with inverted PWM fans."),

in driver-avalon.h , inserted @ LINE 164
Code:
extern bool opt_avalon_invert_pwm;

in driver-avalon.c

inserted @ LINE 13
Code:
bool opt_avalon_invert_pwm;

changed in function avalon_init_task()
Code:
at->fan_pwm_data = (fan ? fan : AVALON_DEFAULT_FAN_MAX_PWM);
to
Code:
if (!opt_avalon_invert_pwm)
    at->fan_pwm_data = (fan ? fan : AVALON_DEFAULT_FAN_MAX_PWM);
else
    at->fan_pwm_data = (fan ? fan : 0);

changed in function avalon_detect_one()
Code:
info->fan_pwm = AVALON_DEFAULT_FAN_MIN_PWM;
to
Code:
if (!opt_avalon_invert_pwm)
    info->fan_pwm = AVALON_DEFAULT_FAN_MIN_PWM;
else
    info->fan_pwm = AVALON_DEFAULT_FAN_MAX_PWM - AVALON_DEFAULT_FAN_MIN_PWM;

changed in function avalon_update_temps()
Code:
adjust_fan(info);
to
Code:
if (!opt_avalon_invert_pwm)
        adjust_fan(info);
else
        adjust_fan_invert(info);

added function adjust_fan_invert()
Code:
static inline void adjust_fan_invert(struct avalon_info *info)
{
        int temp_new;

        temp_new = info->temp_sum / info->temp_history_count;
        
        if (temp_new > info->temp_old)
                temp_rise_invert(info, temp_new);
        else if (temp_new < info->temp_old)
                temp_drop_invert(info, temp_new);
        else {
                /* temp_new == info->temp_old */
                if (temp_new > opt_avalon_temp)
                        temp_rise_invert(info, temp_new);
                else if (temp_new < opt_avalon_temp - AVALON_TEMP_HYSTERESIS)
                        temp_drop_invert(info, temp_new);
        }
        info->temp_old = temp_new;
        if (info->temp_old <= opt_avalon_temp)
                info->optimal = true;
        else
                info->optimal = false;
}

added function temp_rise_invert()
Code:
static void temp_rise_invert(struct avalon_info *info, int temp)
{
        if (temp >= opt_avalon_temp + AVALON_TEMP_HYSTERESIS * 3) {
                info->fan_pwm = 0;
                return;
        }
        if (temp >= opt_avalon_temp + AVALON_TEMP_HYSTERESIS * 2)
                info->fan_pwm -= 10;
        else if (temp > opt_avalon_temp)
                info->fan_pwm -= 5;
        else if (temp >= opt_avalon_temp - AVALON_TEMP_HYSTERESIS)
                info->fan_pwm -= 1;
        else
                return;

        if (info->fan_pwm < (AVALON_PWM_MAX - opt_avalon_fan_max))
                info->fan_pwm = (AVALON_PWM_MAX - opt_avalon_fan_max);
}

added function temp_drop_invert()
Code:
static void temp_drop_invert(struct avalon_info *info, int temp)
{
        if (temp <= opt_avalon_temp - AVALON_TEMP_HYSTERESIS * 3) {
                info->fan_pwm = (AVALON_PWM_MAX - opt_avalon_fan_min);
                return;
        }
        if (temp <= opt_avalon_temp - AVALON_TEMP_HYSTERESIS * 2)
                info->fan_pwm += 10;
        else if (temp <= opt_avalon_temp - AVALON_TEMP_HYSTERESIS)
                info->fan_pwm += 5;
        else if (temp < opt_avalon_temp)
                info->fan_pwm += 1;

        if (info->fan_pwm > (AVALON_PWM_MAX - opt_avalon_fan_min))
                info->fan_pwm = (AVALON_PWM_MAX - opt_avalon_fan_min);
}


So, this change allow to use inverted PWM fans, and also correctly works with --avalon-fan options
ckolivas, please include this changes in future releases! (donation would be send)
fhh
legendary
Activity: 1206
Merit: 1000
July 01, 2013, 03:46:44 AM

New command line options:

--avalon-fan Set fanspeed percentage for avalon, single value or range (default: 20-100)
--avalon-freq Set frequency range for avalon-auto, single value or range


love it!

thanks a lot for this options, especially the fans
will try it later
sr. member
Activity: 302
Merit: 252
July 01, 2013, 03:30:29 AM
As I am a little frightend to flash it right after it arrives, could I instead disconnect the wr703 and use a pi to test the overclockin so I have a fallback with the original firmware?
You can, but the new firmware doesn't overclock, it just gives you the ability to overclock if you desire...
yea thanks, I am not frightend of the firmware itself but with my luck I will brick the wr703 while updating...
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
July 01, 2013, 03:29:10 AM
As I am a little frightend to flash it right after it arrives, could I instead disconnect the wr703 and use a pi to test the overclockin so I have a fallback with the original firmware?
You can, but the new firmware doesn't overclock, it just gives you the ability to overclock if you desire...
sr. member
Activity: 302
Merit: 252
July 01, 2013, 03:24:07 AM
As I am a little frightend to flash it right after it arrives, could I instead disconnect the wr703 and use a pi to test the overclockin so I have a fallback with the original firmware?
Jump to: