Pages:
Author

Topic: Experimenting with Jalapeno firmware... - page 10. (Read 62632 times)

member
Activity: 104
Merit: 10
August 23, 2013, 11:51:41 AM
And here it is!

I used Atmel Studio to compile the firmware, but all flashing was done with the Raspberry Pi.
BOM:
One Raspberry Pi (with SD card and support devices, keyboard, mouse, etc)
One GPIO header ribbon cable
Six hookup wires
One JTAG 5 by 2 (10 pin) ribbon cable
One (or more) Bitforce SC devices

I used Luke-Jr's instructions at https://bitcointalksearch.org/topic/hacking-bitforce-sc-firmware-with-only-free-software-262558 and modified to suit the Raspberry Pi environment and using the GPIO pins.

Full details:
http://randomcontent.wolfnexus.net/RandomSite/reflashing-a-butterfly-labs-jalapeno-with-only-a-raspberry-pi/

Great job, Red_Wolf_2! Your add-on continues to make this thread one of the most interesting reads on this forum.
newbie
Activity: 20
Merit: 0
August 23, 2013, 10:09:24 AM
And here it is!

I used Atmel Studio to compile the firmware, but all flashing was done with the Raspberry Pi.
BOM:
One Raspberry Pi (with SD card and support devices, keyboard, mouse, etc)
One GPIO header ribbon cable
Six hookup wires
One JTAG 5 by 2 (10 pin) ribbon cable
One (or more) Bitforce SC devices

I used Luke-Jr's instructions at https://bitcointalksearch.org/topic/hacking-bitforce-sc-firmware-with-only-free-software-262558 and modified to suit the Raspberry Pi environment and using the GPIO pins.

Full details:
http://randomcontent.wolfnexus.net/RandomSite/reflashing-a-butterfly-labs-jalapeno-with-only-a-raspberry-pi/

Awesome! I didn't know you could use the gpio on the pi with urjtag! (I bought an ft2232h breakout board to use as a programmer)
You should post this over in Luke-Jr's thread too.
sr. member
Activity: 252
Merit: 250
August 23, 2013, 01:43:06 AM
And here it is!

I used Atmel Studio to compile the firmware, but all flashing was done with the Raspberry Pi.
BOM:
One Raspberry Pi (with SD card and support devices, keyboard, mouse, etc)
One GPIO header ribbon cable
Six hookup wires
One JTAG 5 by 2 (10 pin) ribbon cable
One (or more) Bitforce SC devices

I used Luke-Jr's instructions at https://bitcointalksearch.org/topic/hacking-bitforce-sc-firmware-with-only-free-software-262558 and modified to suit the Raspberry Pi environment and using the GPIO pins.

Full details:
http://randomcontent.wolfnexus.net/RandomSite/reflashing-a-butterfly-labs-jalapeno-with-only-a-raspberry-pi/
hero member
Activity: 588
Merit: 500
August 22, 2013, 04:30:11 PM
Confirmed it is possible to reflash a jalapeno using just a Raspberry Pi and some wire. Saves needing to get an AVR Dragon or other JTAG dongle, but does require some mucking around.
I'll publish details on how to do it later, I've just pulled an all-nighter trying to get things to work properly :-P

 Shocked great!!
sr. member
Activity: 252
Merit: 250
August 22, 2013, 02:59:52 PM
Confirmed it is possible to reflash a jalapeno using just a Raspberry Pi and some wire. Saves needing to get an AVR Dragon or other JTAG dongle, but does require some mucking around.
I'll publish details on how to do it later, I've just pulled an all-nighter trying to get things to work properly :-P
newbie
Activity: 7
Merit: 0
August 21, 2013, 02:58:57 PM
Don't want to remove your heatsink, use masking tape, and all that other stuff?  You don't have to, and you can get this done much faster, minimizing disassembly, and minimizing downtime.  Just use female to female wire jumper cables.

There is no need to remove the heatsink, or use clips, or use a jtag cable.  If you do not want to remove the heatsink and potentially damage the thermal pad, you can use individual wire jumper cables*, for example, the female-to-female ones in this kit - http://www.amazon.com/gp/product/B00BQA5BWU/ .

Look at the Jalapeno and the Dragon and identify pin 1 on each. All you have to do is connect a jumper from the Jaly JTAG to the corresponding Dragon JTAG, and repeat. Starting at the back pins of the jalapeno, connect Jaly pin 2 to Dragon pin 2, jaly pin 4 to dragon pin 4, and so on until all five rear pins are connected.  Then do the same for pins 1,3,5,7, and 9 which are in the front. If you start from the rear pins of the jaly jtag there is enough clearance to attach all pins without removing anything.  Visually double check everything, using the cable colors to make sure all the pins match. This solves the space issue you get trying to use jtag plugs, avoiding the need to bend jtag pins or disassemble much.

From there, proceed to flash using the original instructions. Take your own chances, but this worked for me.



*Another option which is slightly faster but a little riskier since you can't visually verify the cable connections as easily is to use a jtag cable that has a jtag plug on one end (connected to dragon) and female wire jumpers on the other end (connected to jaly).
donator
Activity: 164
Merit: 100
August 21, 2013, 09:18:29 AM
If I change the fan orientation while powered down, it will never get to 8.5 GH/s after powered. If I change the orientation while it's already hashing at 8.5 GH/s, it will soon start to slow down towards 7.7 GH/s (while temps and voltages drop too). I didn't notice any changes in the engine counts / clocks reported by the API, but should check that again... Currently the stats are: PROCESSOR 3: 15 engines @ 287 MHz PROCESSOR 7: 15 engines @ 281 MHz THEORETICAL MAX: 8520 MH/s ENGINES: 30 FREQUENCY: 274 MHz

(Yes, I have customized that output with preg_replace to cut the crap. BTW, what's FREQUENCY?)

I'm getting around 80C readings from the VRM area with a handheld IR meter. Any idea if that's good or bad?

The frequency is based on what you have set for your __ASIC_FREQUENCY_ACTUAL_INDEX in the std_def.h. So basically you have set the index to 7 i assume?

The stats report does not re-test the chips again. It is based on a memory in the jally that is written during the initial boot test. When the jally is booted up, it will run some tests to determine the frequency of the engines. Once the jally found the best frequency, it will write to a memory and "java API stats" merely just retrieve this info from the memory

Not sure about the temperature but my jallies never go above 50°C. I'm always trying to make the jallies cooler (next project is to find a heat sink for my jallies and do some customization to it) and the right rule of thumb is, the cooler the better.

You got a pair of good chips (i hardly can get 29 engines running on either jally...) *jealous* lol
sr. member
Activity: 658
Merit: 250
August 21, 2013, 05:59:24 AM
I finally flashed my Jalapeno, and it's now running at 8.5 GH/s (was 5.7). However, if I try to turn the fan around, so that it's blowing air to the heatsink instead of sucking from it, the hashing speed starts to drop, and settles at around 7.7 GH/s.

With the original fan orientation, it's running at 8.5 GH/s, 62C and 3.85V. If I turn the fan around, those numbers drop to 7.7 GH/s, 50C and 3.55V. Haven't tried closing the casing after doing the OC.
Did you turn the jallies off when u flip the fans? When you turn off the jally, it will test the engines again on both chips. At some times, you will have more engines running. I normally use CGMiner --api-listen and do a "java API stats" to look at how many engines are running... In theory, you will need 15 engines to be running on both chips at at least 280mhz to achieve 8.5GHz....

If I change the fan orientation while powered down, it will never get to 8.5 GH/s after powered. If I change the orientation while it's already hashing at 8.5 GH/s, it will soon start to slow down towards 7.7 GH/s (while temps and voltages drop too). I didn't notice any changes in the engine counts / clocks reported by the API, but should check that again... Currently the stats are: PROCESSOR 3: 15 engines @ 287 MHz PROCESSOR 7: 15 engines @ 281 MHz THEORETICAL MAX: 8520 MH/s ENGINES: 30 FREQUENCY: 274 MHz

(Yes, I have customized that output with preg_replace to cut the crap. BTW, what's FREQUENCY?)

I'm getting around 80C readings from the VRM area with a handheld IR meter. Any idea if that's good or bad?
donator
Activity: 164
Merit: 100
August 21, 2013, 02:53:35 AM
I finally flashed my Jalapeno, and it's now running at 8.5 GH/s (was 5.7). However, if I try to turn the fan around, so that it's blowing air to the heatsink instead of sucking from it, the hashing speed starts to drop, and settles at around 7.7 GH/s.

With the original fan orientation, it's running at 8.5 GH/s, 62C and 3.85V. If I turn the fan around, those numbers drop to 7.7 GH/s, 50C and 3.55V. Haven't tried closing the casing after doing the OC.
Did you turn the jallies off when u flip the fans? When you turn off the jally, it will test the engines again on both chips. At some times, you will have more engines running. I normally use CGMiner --api-listen and do a "java API stats" to look at how many engines are running... In theory, you will need 15 engines to be running on both chips at at least 280mhz to achieve 8.5GHz....
newbie
Activity: 21
Merit: 0
August 18, 2013, 03:10:54 PM
Well done for flashing the Jalapeno I got to do mine yet , but that is really weird about the orientation of the fan affecting the hash speed. I can't see how it would make a difference.....! You know what it must be , turning the fan the other way must add resistance to the fan which alters the voltage ! I wonder what speed you'd get if u briefly unplug the fan....
sr. member
Activity: 658
Merit: 250
August 18, 2013, 07:22:45 AM
I finally flashed my Jalapeno, and it's now running at 8.5 GH/s (was 5.7). However, if I try to turn the fan around, so that it's blowing air to the heatsink instead of sucking from it, the hashing speed starts to drop, and settles at around 7.7 GH/s.

With the original fan orientation, it's running at 8.5 GH/s, 62C and 3.85V. If I turn the fan around, those numbers drop to 7.7 GH/s, 50C and 3.55V. Haven't tried closing the casing after doing the OC.
legendary
Activity: 2912
Merit: 1060
August 18, 2013, 06:57:33 AM
Anyone know how to flash a little single?
What's your single temperature? My ls is 65
sr. member
Activity: 360
Merit: 250
August 18, 2013, 06:02:16 AM
I couldn't wait any longer and had to take the risk :-)

Just reflashed one of my singles with my first modified firmware.
Now I'm busy...
Kudos!! Please start a new thread with your results.

Thanks. I will do.

sr. member
Activity: 360
Merit: 250
August 18, 2013, 06:00:33 AM
I couldn't wait any longer and had to take the risk :-)

Just reflashed one of my singles with my first modified firmware.
Now I'm busy...

  are you getting good hashrate for flashing new firmware?


My singles already reported to have the newest, official firmware version 1.2.6.
So by flashing it with this (unmodified) version, you should not expect any over-all hashrate increase. 
There is a little surprise about the delivered firmware version.

I could get better over-all hashrate after modifying the firmware.

I will open a new threat about my experience. 
legendary
Activity: 1946
Merit: 1006
Bitcoin / Crypto mining Hardware.
August 15, 2013, 03:14:14 AM
I couldn't wait any longer and had to take the risk :-)

Just reflashed one of my singles with my first modified firmware.
Now I'm busy...
Kudos!! Please start a new thread with your results.
donator
Activity: 164
Merit: 100
August 15, 2013, 01:10:57 AM

I can't seem to find the area where you can hardcode the frequency to set number, IE my jallys get up to 266 and 274 on each one. I would like to get them up to like 280 and see what happens from there and tune as needed.

Thanks for all the rest of the info!

With reference to the firmware 1.2.6, ASIC_Engine.c line 1580, where you can see it is trying to set the frenquency. I tried changing the iFreqFactor to 350000000 but it gives me alot of HW error...
Note that it will not change the GetInfo details of the chips... because the details are calculated in another method...
Regards
newbie
Activity: 15
Merit: 0
August 14, 2013, 09:43:48 PM
Thanks Ashitank.

...

Thanks for pointing that out. Smiley

Another tip, if you want to hardcode all engines to be running (regardless it's functional or not) change __TOTAL_DIAGNOSTICS_RUN from 10 to 0. It will skip all tests on the engines. Beware of the high HW error rate.

Next thing I wanna try is to change DO_NOT_USE_ENGINE_ZERO and overclocking it to 350mhz on the frequency and see what will happen. Hopefully it won't brick  Grin

Last but not least to max out the fan speed (FAN_CONTROL_BYTE_REMAIN_FULL_SPEED) if the above is successful.
Tested comment out DO_NOT_USE_ENGINE_ZERO and the jally won't start up.
Attempted to change the frequency from 291 to 350 but it still falls back to 280+. So I went to look into the codes and found that there is a method that detects the frequency and write it back. So I hardcoded the frequency to 350MHz. Starts up and runs @ 9GH/s but has near to 50% HW errors. So it's a fail.

I guess that's all for me know until my new jallies are shipped.
Regards
EP

I can't seem to find the area where you can hardcode the frequency to set number, IE my jallys get up to 266 and 274 on each one. I would like to get them up to like 280 and see what happens from there and tune as needed.

Thanks for all the rest of the info!
legendary
Activity: 2912
Merit: 1060
August 14, 2013, 09:33:37 PM
My clips didn't work, they weren't u shaped but open.
soy
legendary
Activity: 1428
Merit: 1013
August 14, 2013, 07:03:24 PM
Worked flawlessly, did it on 2 units. Do be careful, they are smt

How did bending the pins go?  I'm really good at snapping them off.
Just a thought, using wirewrap to bring the pins out to another set of pins, once, and leaving it in place.  Wirewrap is nice because the original pins are unchanged, adjacent pins can be wrapped without fear of shorting if done properly.  The connector one brings the wires out to can be prepared in advance while your waiting for a programmer to arrive.  Once in place buzz out your work to make sure the pins correspond.  Maybe get a spare female connector to put in place when you're done so as not to leave the pins of the added connector exposed.  Someday you may want to remove the connector, just reverse the wirewrap tool and unwrap the wires.
how about this?

Nice.  The problem I've found with the grasp clips is that the clip bends and can be reshaped back only so many times before it snaps.
legendary
Activity: 1792
Merit: 1008
/dev/null
August 14, 2013, 06:15:31 PM
Worked flawlessly, did it on 2 units. Do be careful, they are smt

How did bending the pins go?  I'm really good at snapping them off.
Just a thought, using wirewrap to bring the pins out to another set of pins, once, and leaving it in place.  Wirewrap is nice because the original pins are unchanged, adjacent pins can be wrapped without fear of shorting if done properly.  The connector one brings the wires out to can be prepared in advance while your waiting for a programmer to arrive.  Once in place buzz out your work to make sure the pins correspond.  Maybe get a spare female connector to put in place when you're done so as not to leave the pins of the added connector exposed.  Someday you may want to remove the connector, just reverse the wirewrap tool and unwrap the wires.
how about this?
Pages:
Jump to: