User Tools

Site Tools


wrtu54g-tm:status

This is an old revision of the document!


Project Status

I've upgraded to latest v2.4 kernel, made a new rootfs with buildroot, created scripts to enable ip masquerading and start a pppd session with my 3G cellular phone (using ttyACM0, wish CDC Ethernet worked).

I've gotten Debian etch installed over NFS. lenny won't work – FATAL: Kernel too old. heh. debootstrap kept failing with etch on some packages for lame reasons and I eventually went through it manually. NOTE getty did not produce a login: prompt on ttyS0 !!! /dev/console has no job control (CTRL-C doesn't work, ick), sooooo oddly enough the reason was getty would hang after printing /etc/issue. Fixed with adding -i option to getty. Weird, huh? Disable the rest of the console's and you're good. :)

Please remember, I am working at a crawl because I have no previous knowledge of: MIPS, interrupts, bus's, kernel's, memory, etc. :) But I manually inputted all the adm8668 changes from supplied GPL kernel into latest v2.4, learning a bit on the way. Really messes things up when you forget to define CONFIG_NONCOHERENT_IO :) Sooo I think I know all the area's that'll need to be changed. Just not how, yet …

If anyone cares to help, request features, donate, or just shoot the shit, email me at neutronscott at this websites domain … I also accept friend requests on facebook or twitter, same username. I'm so lonely :\

Linux-2.4 work

Basically a diff from the Linksys supplied GPL tarball, but their kernel had some other patches in it. I manually patched the latest v2.4, the flash/mtd stuff seemed require special handling (guess it's been reworked some) and this is what came out of “diff -Nwru” enjoy! :) adm8668-v24.diff.gz I grab the kernel from ftp://ftp.linux-mips.org/ not mainline. I am unsure if that matters…

Sept 14th, 2010

err, 15th now. it's 2:30am. i spent all night getting intimate with my bootloader. we dare not replace it, and it doesn't do lzma compression. brcm-2.4 has an lzma-loader. their loader has a loader which loads the loader….. we don't need _that_ loader ;) hah. sooooo, a 4k (smaller but padded to 4k) loader prepended to our kernel will save us 180kB+ depending on kernel size. yay! was it worth a wasted day? ehh, maybe… adds to boot time a little bit.. but it was fun :) my openwrt root (without wifi module) is 1.0MB, jffs2 is 6.1MB.. can we get anymore space…? nope. probably not. now… onward to rebuilding the kernel from scratch! then i'll release it into the wild, and since it's openwrt and not my own invention, hopefully i won't have to support it! j/k. i love emails. :)

# ls -l linux.bin* [just kernels]
-rwxr-xr-x 1 root root 726356 2010-09-15 02:18 linux.bin.gz
-rwxr-xr-x 1 root root 537262 2010-09-15 02:30 linux.bin.lzma
# ls -l vmlinuz* [rootfs and padding for alignment]
-rw-r--r-- 1 root root 1589248 2010-09-15 02:30 vmlinuz.lzma
-rw-r--r-- 1 root root 1785792 2010-09-15 02:48 vmlinuz.gz

Overall that's 191.94kB saved with this build… More saved when kernel had IPv6 included. Percentage wise lzma is 89% the size of gzip. =\

Sept 13th, 2010

I built OpenWRT for brcm-2.4 and recompiled my kernel a bit and everything seems okay… Just need to put our wifi module in there and maybe change some scripts…… :)

Sep 6th, 2010

Tightened up the flash layout (clobbers the tmobile certificate, oh well, revert method to follow later), compiled the FPU emulator back in, switched all non-essentials to loadable modules, removed iperf (it has a large libc++ dependency ick) and renamed it “neutronscott tight” :) firmware is just under 3MB leaving 4.2MB to jffs partition! on a sad note, my last flash_eraseall may have found a couple bad blocks… i need to chillax and start using tftp and nfs booting again, why the hell did i stop? :(

Sep 5th, 2010

I deleted old entries awhile back. This page is like a messy blog, a wiki is not the format for a blog. Old entries need to roll off. heh. So I'm proud of my new firmware. I'll be using it and working on it for better OpenWRT compat with brcm-2.4, and made a nice clean firmware page!

Sep 4th, 2010

I don't get it. Bring the thing home and it just wants to keep kernel oops somewhere in the IP stack. I dunno wtf.

edit: when looking for normal rt61 driver for 2.4, rt61cvs-final from the rt2x00 project is what's left… well, it sucked. WEP always killed me, and WPA wasn't all that either. i went with the official Ralink driver. things been going well since! :) check the download page, and remember – proceed with caution!

Sep 3rd, 2010

Has it been that long? woah. mini_fo finally works with the latest 2.4 using some patches from the openwrt project's now obsolete brcm-2.4 branch. I will be testing it a bit first to make sure it won't leave people without access, and posting it to the new section firmware page.

Jul 31st, 2010

OK. Got a quick inject of some goodies that should hold some people off for awhile, haha. I regress. :( I got mjproxy and dropbear inside the official binary build of v1.00.21. that's all I changed (well i slipped in a small program to allow tethering with my blackberry, see Tether BlackBerry Bold 9700 in Linux). During startup it will source /nv/rc.custom so to start mjproxy you will want to put your entry in there. Do something like this

echo "mjproxy 0.0.0.0 9876 1.2.3.4 5120 password" >/nv/rc.custom
rawaccess -s

Then it'll run that on start-up, or anything else you want to put on there. dropbear's rsa key is saved in /nv/ too, neat huh? The root passwd is “mjproxy” and default firewall should keep dropbear inaccessible over WAN port. That's about it, hope it helps. Maybe I should add wget so the start-up script can snag files into /tmp during start-up eh? a tftpd server is running (by default!) on port 65069, tho my tftp client won't allow me to use that port, so just run tftpd again. files goto /tmp.

wrtu54g-v1.00.21-mjproxy.bin

If you're interested in tethering, sorry, but no ttyACM drivers included, it'll only work with blackberry because my daemon communicates directly using libusb-0.1. I do it like this:

iptables -F
iptables -t nat -F
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
bb &
/root/tmobile.sh

It'd probably setup the rules better for me if I set my connection type to PPPoE but I'm okay with flushing out their rules.

Jul 29th, 2010

well, another roadblock. i don't want to go on without mini_fo. Once I saw it in OpenWRT I had to have it, makes everything so much easier, and it just isn't working for me… ls lists no files, tho you can access them… tried to vi a text file and got an error writing (i used /tmp/sto for storage), BUT if i place a file in there, the newer version shows when accessed … ugh! i quit again for now.

why did i ever bother? the cricket 3g modem i wanted to share with this device isn't even stable in linux, and i ended up getting a cable modem at that location anyway. :P

Jul 24th, 2010

Didn't take tooo much time to get mini-fo to compile. Wonder if it works? hah. Added this to top of makefile.

CROSS_COMPILE=mipsel-linux-
CFLAGS  = -G 0 -mno-abicalls -fno-pic -pipe -mlong-calls -mips32 -mtune=mips32
KERNELVERSION=2.4
KERNEL_SRC = /root/linux-2.4.37.9

Linux-2.6 porting log

I do most of my work during free time, while on travel at work… I have too many kids at home to do much there, so I'm working at a snails pace, and I am just a hobbiest…

October 9th, 2010

Long time, no 2.6. I reformatted my development machine (on accident) and started fresh with what I had posted on my webserver and jumped back into 2.6 kernel a bit. I found the 3 lines that were keeping LAN ports from working… I guessing it was checking the link status, and turning it off. I removed those lines and it seems good. I'll put it into openwrt build system shortly and see how things work as a whole. Hopefully, all but USB is good to go now! :)

July 24th, 2010

This really is a special device.. I tried using my firmware for UMA on my Blackberry Bold 9700 while on an island with no cellular service. It wouldn't stay connected and I am unsure why. I reflashed virgin firmware and it's been good. I think the best approach would be to create a hybrid stock/openwrt thing anyway. It's just time and motivation and know-how. Where is the source used to build brcm-2.4? Doesn't seem to be in openwrt trunk, must have been ditched. I will eventually begin by adding some patches to 2.4 to use lzma kernel, squashfs-lzma rootfs, and mini-fo filesystems..

July 5th, 2010

Too much work, not enough interest anymore.. I've lost my steam. Wifi at the hotel works fine on my windows laptop, but my development machine (iBook G4 running Ubuntu) doesn't like it. I swear it's that direct probe patch in the ieee80211. Its multiple APs using same SSID, maybe that could be it too? Either way, totally gay and unmotivating. Can't nail down the wifi in AP problem. could be hostapd, could be compat-wireless… shrug. wish someone with knowledge would pick this project up…

So I tried using compiled-in wifi driver, and I tried using the hostapd from my buildroot image, and still cannot get AP mode working. Thus, it must be an openwrt kernel patch that's messing it up, right …?

June 30th, 2010

Also thanks to Valentin M, OpenWRT is running on our router, forreal! I've never messed much with openwrt, tho it seems they ditched the 'nvram' command for an overlay filesystem. I like it. I'd post a binary, but … already broke someones stuff once by posting a broke binary… heh. I'd really like to have LEDs and 'reboot' working before making releases ya know? Also some files that were used as the base still need edited or removed… Time to get back to kernel work, but just not feeling it so much this trip.. ugh.

I am uncertain of OpenWRT policies. What's normal in a default image? I'll probably post one before the weekend.. It's soo tiny with lzma compression. I'd also like to get lzma-loader compiled for our board, that would cut ~2MB off the kernel size!

So before I post binary: edit base-files, include hostapd, test test and test again without serial, lzma-loader, and hopefully LEDs/reboot, and maybe trim some fat.

June 25th, 2010

Thanks to Valentin M., who tested not only the binary but the source, I have made a few fixes to “0.1b” and now have 0.2 ready. OK, THIS time things should work out-of-the-box :) The ChangeLog:

udhcpc script is now included in the filesystem.
hostapd is started before adding wlan0 to bridge
dropbear will now just create its key in jffs

I was going to make it not rely on having a jffs partition, but it seems as tho for now it will. so there.

EDIT: PLEASE TEST ONLY IF YOU HAVE, OR PLAN TO SOON HAVE SERIAL ACCESS TO ROUTER!!

Wifi WEP password is deadc0ffee. root passwd is toor. EDIT: Firmware obsolete. Download link removed (7/sep/2010)

Latest source mess: 25jun2010.diff

June 2nd, 2010

I think 2.6 PREEMPT is very responsive. I like it. I just wish USB worked again. Btw, good idea: wire unused phone jack as rj11←→serial and use standard DB9 or DB25 to rj11 on other end :) Wonder how well USB would work on that, just to keep from making unsightly penetrations.

Linux-2.6 porting status

section done? status
inital serial output 100% aka 'console'. works.
PROM 20%? hardcoded kernel cmdline for now. will see how u-boot does it later.
interrupts 100% kept 0-15, moved MIPS CPU IRQs above us (timer=23)
real serial driver 90% used bcm63xx as base. only missing unneeded stuff… setting options/baud
NOR FLASH driver 100% static map. need to re-do as dynamic as openwrt does.
pci 100% yep. works now.
wireless 100% it works. just gotta use right utilities i guess i'm stooopid. ;)
ethernet 100% ghetto rig. hey, i learn by example. their example was ghetto…
ethernet switch ? openwrt has adm6996F driver. need to try it out.
usb 50% senses plug/unplug but cannot enumerate. Shrug
wrtu54g-tm/status.1286663542.txt.gz · Last modified: 2023/11/04 22:29 (external edit)

Except where otherwise noted, content on this wiki is licensed under the following license: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki