Hi folks,
here comes a straight forward HowTo build a custom KncMiner Firmware useable for the normal web upgrade process.
It worked for me, BUT IT MIGHT NOT WORK FOR YOU. I'M NOT RESPONSIBLE FOR ANY DAMAGE YOU MIGHT GONNA HAVE!!!If you are not familar with the u*inx shell commands & stuff, please don't even try it.
I will also not give any tutorials about how to use all these commands and what they are mean. It's up to you (RTFM).
OK let's start.
First step is to unpack an existing KncMiner firmware to have something to start/play with. I'm using still 0.98, so I will use it in this HowTo, but any other firmware will do it too.
I'm using > as the shell prompt and # as comment.
# install u-boot-tools and mkimage (only once)
# under ubuntu (and debian)
> sudo apt-get install u-boot-tools uboot-mkimage
# become root (it's necessary for cpio to create the device nodes)
> su - root
# create a base directory to work in
> mkdir knc
> cd knc
# download (or copy if already downloaded) the KncMiner firmware to be used
> wget http://www.kncminer.com/userfiles/file/kncminer-0.98.bin
# extract firmware into directory orig
> mkdir orig
> cd orig
> tar xfz ../kncminer-0.98.bin
> dd if=kncminer-0.98.u-boot of=initramfs.cpio.gz bs=64 skip=1
> gunzip initramfs.cpio.gz
# continue to work in another directory modified
> cd ..
> mkdir modified
> cd modified
> mkdir fs
> cd fs
> cpio -vidF ../../orig/initramfs.cpio
# DONE! Now you have all the files under fs/
# Feel free to make any modifications like:
# - replace cgminer with the lastest version
# - install bfgminer instead of cgminer
# - enable all 8 DC/DC's on 8DC/DC jupiters
# - tweak voltage and/or pll
# - install bertmod
# - install other sw (angstrom)
# - do whatever you like
# What I've done:
# - lastest cgminer 3.9.0 with special patches to feed my custom webinterface
# - enable all 8 DC/DC's on my october jupiter. They are running less than 30A each within spec.
# - pll mod to speedup my jupiter to around 650GH/s - WU:9150.
# replace firmware version string to be shown on the upgrade page
> vi www/pages/firmware_upgrade.html
# find "Current firmware revision" and edit it to whatever you like.
# Now it's time to pack the new modified firmware
# you are still in knc/modified/fs/
> find . | cpio -H newc -o > ../initramfs.cpio
> cd ..
> gzip initramfs.cpio
> mkimage -n 'KncMiner 0.98 Custom' -A arm -O linux -T ramdisk -C gzip -d initramfs.cpio.gz kncminer-0.98.u-boot
> tar cfz ../kncminer-0.98_modified.bin kncminer-0.98.u-boot ../orig/reboot.cgi ./orig/reboot.safe ./orig/runme.sh
# DONE! Your new and modified firmware knc/kncminer-0.98_modified.bin is ready to use.
# Use it as always via webinterface upgrade.
PLEASE consider to tip something if you use my HowTo and/or if you find it helpful: 1Btf3BqUegfe5iFdWsgfBf1Ew3YsAvsrLTComments are welcome.
Here are some screenshots of my own webinterface (ported from BTCMiner ;-).
You can switch pools by clicking the number.
Clicking the pool name opens the (configured) pool site.
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2FcRlc81g.jpg&t=665&c=xxko0kjFJhK8ow)