OpenWrt Forum Archive

Topic: Support for WRTP54G

The content of this topic has been archived on 19 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Has anybody used OpenWRT with the WRTP54G (vonage) which contains a VoIP ATA as well as the usual four port router/switch/wifi?

It'd be cool to support the phone port as well as the other ports.

Have you got any firmware file on your CD ? Currently there is either no source code nor any firmware available to download so that we can't extract the binary driver managing the phone port sad

Unfortunately, (or fortunately) I don't own one. I was thinking of buying one on eBay if it was supported.

vonage will supply ATA box and it is locked you can't do anything other than normal use, I know we all want to hack it, but all the SIP information is hidden,

do you have a 1 or more phone lines + vonage voip line ? ya
Ok the best way to do is, setup a Linux box CPU pentium 266 II or higher with 512 MB mem or higher
install asterisk - hmmm now you'll need FXO / FXS card more $$$ - no.
go buy couple of Intel 537 voice fax data modem don't bye 537EP intel chipsets modem OK..
hack the zaptel source code /usr/src/zaptel/wcfxo.c use google and find how to do it
now compile zaptel and asterisk - then install them, configure them

if you want to make this fullblown PBX then compile your kernel before the above stuff and make sure don't compile usb module into kernel with this mark *
compile as just a module <M> - why ? if you want music on hold you need to get real timing from mother board

plug your vonage ATA phone1 connection in to Linux-box's intel modem
plug your Land line in to Linux-box's 2nd intel modem

reboot now you have a PBX with Land lines and Voip Line

now goto your town and call home push * on the phone enter the number you want to dial, it will re_route via vonage
you can also set this call your voip line from anywhere then it will re_route via Land line cool ha ?
not only that ----voicemail / X-lite soft phone.

Google is the best school for this - Please read and save money on your phone calls

wj

(Last edited by wirelessjoe on 1 Jun 2005, 16:47)

MD3200 chipsets modems also known to work wit asterisk, but not anything else (no cheap solution)

One important point when you use an Intel V92 modem card that has not been purchased as the X100P card from Digium, but otherwise look identical to it, is that the electronic vendorID read from the card will be different. There are two ways to get around this:

1. If you are compiling Asterisk from source, edit the zaptel/wcfxo.c file as follows:

Existing code:
static struct pci_device_id wcfxo_pci_tbl[] __devinitdata = {
{ 0xe159, 0x0001, 0x8085, PCI_ANY_ID, 0, 0, (unsigned long) &wcx101p },
{ 0x1057, 0x5608, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wcx100$ };

Now change the wcfxo_pci_tbl[] in zaptel/wsfxo.c to:
static struct pci_device_id wcfxo_pci_tbl[] __devinitdata = {
{ 0xe159, 0x0001, 0x8085, PCI_ANY_ID, 0, 0, (unsigned long) &wcx101p },
{ 0xe159, 0x0001, 0x8086, PCI_ANY_ID, 0, 0, (unsigned long) &wcx101p },
{ 0x1057, 0x5608, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wcx100$ };

The added line in the middle will allow the wcfxo driver to work with off the shelf Intel v92 Winmodem cards as well as with the Digium X100P cards.


2. The other alternative is to make the same modification to the card that Digium did when they turned them into "genuine" X100P cards. Simply carefully remove R13 and R19 with a soldering iron. R13 & R19 are pull down resistors that affects the vendorID number that is read from the card. With these two resistors gone, you now have a card that will appear as a genuine Digium X100P card to the Asterisk software.

Cards purchased from vendors such as DigitNetworks will already have been modified this way, but then they charge quite a bit more than the US $5 - $15 that one can pick up these Intel Winmodem PCI cards for elsewhere. It is considerably cheaper when you modify the wcfxo driver source code, and/or remove the 2 resistors yourself.

credits to velvetfog

(Last edited by wirelessjoe on 1 Jun 2005, 17:04)

I was hoping to run Asterisk on the WRTP54G and use the phone port from Asterisk. Oh well.

Has any progress been made on this? I see on the main website that WRTP54G is supported for Openwrt.org, but does this mean all the features (Phone ATA etc) are going to work on this?

What needs to be done to help this happen?

Well, the source code is available but I think, there is still a lot of work to do to get it work out of the box by an openwrt firmware. If anyone has got a WRTP54G, it would be great for him to being submitted firmware and test whether it works or not smile

I'll see what I can do :-). I don't own one yet, but I might be able to aquire one for the right price, without the Vonage commitement.

Yes.  And this is latest vonage release of firmware:

http://www.linksysinfo.org/files/wrt-11 … 050624.img

Unfortunately, I haven't been able to mount the squashfs image to see what differences are from GPL source (including, of course, the almighty ssh password and ability to access the voice protected part of the web UI) released by linksys due to an old version of squashfs 1.0 plus lzma compression being used.  There is clearly an ssh daemon running ... sucks that we don't know the password though.

Hi there,

I'm interrested in this model too.
I'd like to get openwrt && asterisk to run on it, using wifi in client mode and asterisk to manage the 2 fxs port like i can do with a TDM400P for example smile (to get a wireless voip ATA that rox!)

I know the support of it in OpenWRT is still at the beginning but i may help getting it working smile

I saw its not yet distributed in europe, or at least hard to find.
I'll try to buy one somewhere, but i'd like to know if there is 2 versions like for the PAP2 and RT31P2, i mean a vonage locked one and a -NL which can be used with another asterisk ? or maybe it doesnt matter in this case ? i'm not so aware of this locking problem (dunno if its a software or hardware one)

Thanks already!

o/ OpenWRT \o

blop

Blop wrote:

Hi there,

I'm interrested in this model too.
I'd like to get openwrt && asterisk to run on it, using wifi in client mode and asterisk to manage the 2 fxs port like i can do with a TDM400P for example smile (to get a wireless voip ATA that rox!)
blop

Ah yes ... that is DEFINITELY the goal.

Blop wrote:

I know the support of it in OpenWRT is still at the beginning but i may help getting it working smile

I saw its not yet distributed in europe, or at least hard to find.
I'll try to buy one somewhere, but i'd like to know if there is 2 versions like for the PAP2 and RT31P2, i mean a vonage locked one and a -NL which can be used with another asterisk ? or maybe it doesnt matter in this case ? i'm not so aware of this locking problem (dunno if its a software or hardware one)

Haven't seen an unlocked version for this router though they *should* be out there, it actually shouldn't really matter since if you get locked one, it's a cince to flash with custom firmware if you choose to recompile your own from linksys provided GPL and ar7 toolchain.

Locked version will just come default with vonage firmware, but it's not like you cannot easily find vonage passwords for upgrade page to do flash upgrade of router. *hint*

user: user
pw: tivonpw

on http://192.168.15.1/update.html

with 192.168.15.1 being the router's standard fallback IP.

So if you can find a vonage promotion where you can score this router cheap.  DO IT.


Question for anyone that might have experience ... how to open this 3rd generation newskool linksys case without pemamently breaking it?  I see no screws anywhere!

Ydef wrote:

Unfortunately, I haven't been able to mount the squashfs image to see what differences are from GPL source (including, of course, the almighty ssh password and ability to access the voice protected part of the web UI) released by linksys due to an old version of squashfs 1.0 plus lzma compression being used.  There is clearly an ssh daemon running ... sucks that we don't know the password though.

Could you post the extracted squashfs image? Perhaps someone else can successfully find a way to crack it. Let me know if you need a place to host it.

Hey,

unpacking the squashfs_lzma v1.0 was easy. I just copied the fs/squashfs directory out of the wrtp54g GPL source into my OpenWrt kernel directory (along with the required includes), changed the fs name to "squashv1" and built a module out of it. I used that to extract the fs on a normal wrt54g. Here's a tarball with the contents for you to play with: http://openwrt.inf.fh-brs.de/~nbd/wrtp_fw.tar.gz

Have fun!

nbd

nbd wrote:

Hey,

unpacking the squashfs_lzma v1.0 was easy. I just copied the fs/squashfs directory out of the wrtp54g GPL source into my OpenWrt kernel directory (along with the required includes), changed the fs name to "squashv1" and built a module out of it. I used that to extract the fs on a normal wrt54g. Here's a tarball with the contents for you to play with: http://openwrt.inf.fh-brs.de/~nbd/wrtp_fw.tar.gz

Have fun!

nbd

NBD is The Man!!! 

smile
  Thanks for the gift of doublechecking my flawed attempt NBD!   I was convinced that vonage was not capable of mount any sort of serious closed firmware attempt (something i became certain of from conversations i had had with their purported senior technical scientist of firmware support) who denied the existence of ssh on these routers or any passwords that existed so i could access it and configure properly what they failed in three firmware upgrades to fix that would hose the wifi side.  Of course, as soon as i pointed out how poorly it reflected that the grand hoobab of vonage scientific thought didn't know what ssh was did the guy finally admit that, yes, he knew what the pw was and could access the router if he needed to in order to do maintenance on MY router (even though he was clueless as to how to maneuvre a shell), but furthermore that he could NOT tell me what it was since by doing so he could lose his job ... even though that was the only way for me to resolve the issues with their firmware that they've had 3 firmware upgrades to fix but hadn't.

  At that point, I knew they hadn't done a whole lot to try to prevent anyone from discovering the freely operating shell, even though they had tried so adamantly to convince me that the reason my firmware wasn't working correctly is because i must have tried to install a 3rd party firmware from linksysinfo that was rendering the the wireless capability on it to be useless. (yeah, go configure, he accuses me installing 3rd party firmware (that had yet to exist) despite my providing him the link to the vonage/linksys release of the firmware ... without ever having an inkling that if I had accomplished what he had accused me of, i certainly wouldn't be on the phone listening to him rant about how vonage didn't support ssh or a shell on this router. 

What i realized was that retail service resellers like vonage would never have anyone even remotely resembling a real engineer since they are merely resellers of the technology.  As a result, the technology must be necessarily dictated to them (in this case by linksys), which they must try to digest and repackage to sell  ... also meaning that any attempt to close or protect firmware images could not possibly have originated on their side.  Linksys would be loathe of themselves to make it harder to access to custom firmware they are specifically packaging  for vonage customers, since vonage chief scientists so thoroughly lack any understanding of the technology to begin with.  Explaining lzma compression to the most senior vonage engineer could be the proverbial ice floe that wrecks havoc upon  the titanic sized linksys trans-continental pan-indian support contingency and take their highly coveted strategic partnership off the table .... which i'm sure is not what they want.



    Y

Okay, here's output of a serial console i've setup if anyone's interested:

Connecting to /dev/ttyS0, speed 57600
Escape character: Ctrl-\ (ASCII 28, FS): enabled
Type the escape character followed by C to get back,
or followed by ? to see other options.
----------------------------------------------------
(c) Copyright 2002-2005 Texas Instruments, Inc. All Rights Reserved.

CPU revision is: 00018448
Primary instruction cache 16kb, linesize 16 bytes (4 ways)
Primary data cache 16kb, linesize 16 bytes (4 ways)
Number of TLB entries 16.
Linux version 2.4.17_mvl21-malta-mips_fp_le (myron@dhcp-2101-884) (gcc version 2.95.3 20010315 (release/Mont aVista)) #1 Thu Jun 23 18:49:32 CST 2005
Using the external phy with AUTO MDIX
Determined physical RAM map:
memory: 14000000 @ 00000000 (reserved)
memory: 00200000 @ 14000000 (reserved)
memory: 00e00000 @ 14200000 (usable)
On node 0 totalpages: 4096
zone(0): 4096 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line:
init_IRQ() vbus_freq = 62500000
, ipacep=0x000003e0calculating r4koff... 000c65d4(812500)
CPU frequency 162.50 MHz
Calibrating delay loop... 162.20 BogoMIPS
Freeing boot memory [0x14080000,0x001a0000]
Memory: 13824k/16384k available (1498k kernel code, 2560k reserved, 135k data, 60k init)
Dentry-cache hash table entries: 2048 (order: 2, 16384 bytes)
Inode-cache hash table entries: 1024 (order: 1, 8192 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 4096 (order: 2, 16384 bytes)
Checking for 'wait' instruction...  unavailable.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
TI Optimizations: Allocating TI-Cached Memory Pool.
Warning: Number of buffers is not configured.Setting default to 512
Using 512 Buffers for TI-Cached Memory Pool.
DEBUG: Using Hybrid Mode.
NSP Optimizations: Succesfully allocated TI-Cached Memory Pool.
Initializing RT netlink socket
DEBUG: Starting ksoftirqd with ALWAYS_SOFTIRQ:0x5 NON ALWAYS SOFTIRQ:0xfffffffa.
DEBUG: Starting ksoftirqd with priority:0 policy:0 nice:19.
Starting kswapd
Disabling the Out Of Memory Killer
devfs: v1.7 (20011216) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x1
pty: 32 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with no serial options enabled
ttyS00 at 0xa8610e00 (irq = 15) is a 16550A
Vlynq CONFIG_MIPS_AVALANCHE_VLYNQ_PORTS=2
Vlynq Device vlynq0 registered with minor no 63 as misc device. Result=0
Vlynq instance:0 Link UP
Vlynq Device vlynq1 registered with minor no 62 as misc device. Result=0
VLYNQ 1 : init failed
block: 64 slots per queue, batch=16
Cpmac driver is allocating buffer memory at init time.
@@@@ cpmac_dev_init(eth0 0 1)
Cpmac driver Disable TX complete interrupt setting threshold to 20.
DEBUG: Allocating 128 buffers and Service Max=64 for ethernet device:0.
avalanche_request_intr_pacing(27,2,2)
Debug: Configured the interrupt pacing for device eth1.
Success in registering irq 27 for Cpmac unit# eth1.
PPP generic driver version 2.4.1
avalanche flash device: 0x800000 at 0x10000000.
Physically mapped flash:0: Found 1 x16 devices at 0x0 in 16-bit mode
Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
Using buffer write method
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
Avalanche: Adding a root image (0xb0000), with size (0x320000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x000b0000-0x003d0000 : "root"
Avalanche:      linking partition root: root -> ../../mtdblock/0
Avalanche: Adding a RESERVED_PRIMARY_KERNEL image (0x30000), with size (0x80000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x00030000-0x000b0000 : "RESERVED_PRIMARY_KERNEL"
Avalanche:      linking partition RESERVED_PRIMARY_KERNEL: kernel -> ../../mtdblock/1
Avalanche: Adding a RESERVED_PRIMARY_ROOT_FS image (0xb0000), with size (0x320000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x000b0000-0x003d0000 : "RESERVED_PRIMARY_ROOT_FS"


Cpmac driver Disable TX complete interrupt setting threshold to 20.
DEBUG: Allocating 256 buffers and Service Max=128 for ethernet device:1.
avalanche_request_intr_pacing(41,3,2)
Debug: Configured the interrupt pacing for device eth0.
Success in registering irq 41 for Cpmac unit# eth0.
Cpmac driver is allocating buffer memory at init time.
@@@@ cpmac_dev_init(eth1 1 0)
Avalanche:      linking partition RESERVED_PRIMARY_ROOT_FS: root -> ../../mtdblock/2
devfs: devfs_do_symlink(root): could not append to parent, err: -17
Avalanche: Adding a RESERVED_PRIMARY_IMAGE image (0x20000), with size (0x3d0000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x00020000-0x003f0000 : "RESERVED_PRIMARY_IMAGE"
Avalanche:      linking partition RESERVED_PRIMARY_IMAGE: active_image -> ../../mtdblock/3
Avalanche: Adding a RESERVED_SECONDARY_IMAGE image (0x400000), with size (0x3d0000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x00400000-0x007d0000 : "RESERVED_SECONDARY_IMAGE"
Avalanche:      linking partition RESERVED_SECONDARY_IMAGE: inactive_image -> ../../mtdblock/4
Avalanche:      linking partition RESERVED_SECONDARY_IMAGE: inactive_image_char -> ../../mtd/4
Avalanche: Adding a RESERVED_PRIMARY_XML_CONFIG image (0x3f0000), with size (0x10000).Creating 1 MTD partitions on "Physically mapped flash:0":
0x003f0000-0x00400000 : "RESERVED_PRIMARY_XML_CONFIG"
Avalanche:      linking partition RESERVED_PRIMARY_XML_CONFIG: active_config -> ../../mtdblock/5
Avalanche:      linking partition RESERVED_PRIMARY_XML_CONFIG: active_config_char -> ../../mtd/5
Avalanche: Adding a RESERVED_SECONDARY_XML_CONFIG image (0x7d0000), with size (0x10000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x007d0000-0x007e0000 : "RESERVED_SECONDARY_XML_CONFIG"
Avalanche:      linking partition RESERVED_SECONDARY_XML_CONFIG: inactive_config -> ../../mtdblock/6
Avalanche:      linking partition RESERVED_SECONDARY_XML_CONFIG: inactive_config_char -> ../../mtd/6
Avalanche: Adding a RESERVED_BOOTLOADER image (0x0), with size (0x10000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x00000000-0x00010000 : "RESERVED_BOOTLOADER"
Avalanche:      linking partition RESERVED_BOOTLOADER: bootloader -> ../../mtdblock/7
Avalanche: Adding a cyt_private image (0x7f0000), with size (0x10000).
Creating 1 MTD partitions on "Physically mapped flash:0":
0x007f0000-0x00800000 : "cyt_private"
Avalanche:      linking partition cyt_private: cyt_private -> ../../mtdblock/8
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 1024 bind 1024)
Linux IP multicast router 0.06 plus PIM-SM
ip_conntrack version 2.0 (128 buckets, 1024 max) - 380 bytes per conntrack
DEBUG: Registering protocol 6 in the conntrack 0x943bd840
DEBUG: Registering protocol 17 in the conntrack 0x943bd598
DEBUG: Registering protocol 1 in the conntrack 0x943bd8ac
DEBUG: Registering protocol 47 in the conntrack 0x943bda7c
DEBUG: Registering protocol 47 in the NAT 0x943bdab0
DEBUG: Registering protocol 50 in the conntrack 0x943bdae8
DEBUG: Registering protocol 50 in the NAT 0x943bdb50
ip_tables: (c)2000 Netfilter core team
DEBUG: Registering protocol 6 in the NAT 0x943be5a4
DEBUG: Registering protocol 17 in the NAT 0x943be574
DEBUG: Registering protocol 1 in the NAT 0x943be5d4
netfilter PSD loaded - (c) astaro AG
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NET4: Ethernet Bridge 008 for NET4.0
Initializing the WAN Bridge.
Please set the MAC Address for the WAN Bridge.
Set the Environment variable 'wan_br_mac'.
MAC Address should be in the following format: xx.xx.xx.xx.xx.xx
VFS: Mounted root (squashfs filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 60k freed
serial console detected.  Disabling virtual terminals.
console=/dev/tts/0
init started:  BusyBox v0.61.pre (2005.06.23-10:52+0000) multi-call binary
Starting pid 9, console /dev/tts/0: '/etc/init.d/rcS'
Algorithmics/MIPS FPU Emulator v1.5
Waiting for enter to start '/bin/login' (pid 34, terminal /dev/tts/0)

Please press Enter to activate this console. Sep  8 12:00:03 cm_pc: tftpu service disabled.

Sep  8 12:00:03 cm_monitor: Monitor Starting
SYSTEM_POWER_ON
SIOCGIFFLAGS: No such device
resolver: configuration tree:
Sep  8 12:00:05 [001310A34628] cfgmgr(ap): AP Acquiring Lock
Sep  8 12:00:05 [001310A34628] cfgmgr(provision): Converting VOICE_XML2 to VOICE_XML
Doing BRCTL ...
addbr br0
Doing BRCTL ...
addbr br1
Sep  8 12:00:05 [001310A34628] cfgmgr(voice): start_voice_app_locked
Sep  8 12:00:05 [001310A34628] cfgmgr(eth0): ewan_start: using default mac address!
Sep  8 12:00:05 [001310A34628] cfgmgr(fdb): Firewall NAT service started
Sep  8 12:00:05 [001310A34628] cfgmgr(fwan-106): fwan_start[fwan-106]

fwan_start[fwan-106]
Sep  8 12:00:05 [001310A34628] cfgmgr(fwan-106): fwan_setting_priMTD do_write_buffer(): software timeout
v:100188a0
Sep  8 12:00:05 [001310A34628] cfgmgr(fwan-106): fwan_setting_priv-}fw_private:100189d0
Setting image flag GOOD...
Sep  8 12:00:05 [001310A34628] cfgmgr(ap): AP REPORT LOCK ACQUIRED
Sep  8 12:00:05 [001310A34628] cfgmgr(ap): wlan_handle_load_event - Acquired Lock
Sep  8 12:00:05 [001310A34628] cfgmgr(voice): cache EVT_CMD_VOICE_CONFIG: state: 1
Sep  8 12:00:06 [001310A34628] DEBUG: Registering protocol 47 in the NAT 0x943bdab0
Sep  8 12:00:06 [001310A34628] DEBUG: Registering protocol 50 in the conntrack 0x943bdae8
Sep  8 12:00:06 [001310A34628] DEBUG: Registering protocol 50 in the NAT 0x943bdb50
Sep  8 12:00:06 [001310A34628] ip_tables: (c)2000 Netfilter core team
Sep  8 12:00:06 [001310A34628] DEBUG: Registering protocol 6 in the NAT 0x943be5a4
Sep  8 12:00:06 [001310A34628] DEBUG: Registering protocol 17 in the NAT 0x943be574
Sep  8 12:00:06 [001310A34628] DEBUG: Registering protocol 1 in the NAT 0x943be5d4
Sep  8 12:00:06 [001310A34628] : netfilter PSD loaded - (c) astaro AG
Sep  8 12:00:06 [001310A34628] : Initializing the WAN Bridge.
Sep  8 12:00:06 [001310A34628] : Please set the MAC Address for the WAN Bridge.
Sep  8 12:00:06 [001310A34628] : Set the Environment variable 'wan_br_mac'.
Sep  8 12:00:06 [001310A34628] MAC Address should be in the following format: xx.xx.xx.xx.xx.xx
Sep  8 12:00:06 [001310A34628] VFS: Mounted root (squashfs filesystem) readonly.
Sep  8 12:00:06 [001310A34628] : Mounted devfs on /dev
Sep  8 12:00:06 [001310A34628] Freeing unused kernel memory: 60k freed
Sep  8 12:00:06 [001310A34628] cfgmgr(lanbridge0): Bridge Created: br0
Doing BRCTL ...
setfilter br0 0
Doing BRCTL ...
addif br0 eth1
Sep  8 12:00:06 [001310A34628] cfgmgr(lanbridge1): Bridge Created: br1
Sep  8 12:00:06 [001310A34628] cfgmgr(l



Question I have so far is, i *should* be able to hit enter at the prompt above and be able to interact with this console via commandline.  That has not happened yet unfortunately.  It scrolls by so fast i don't have much chance to do anything.  i've tried hitting enter repeatedly with no luck.

maybe i don't have my rx wire connected to the right spot.

anyone else with progress on this router please post.

thanks.

Hi Everyone,

I just got a unit of Linksys WRTP54G Wi-FI VoIP router. I have also downloaded a copy of wrtp54g_cyt_1_00_37_gpl.tgz Linksys WRTP54G source code. I certainly would like to get my hands dirty on compiling this source code. I extracted the source code in /usr/src/packages/BUILD directory and did a make setconfig, then chose option #1 to configure WRTP54G. However, the configuration spitted out some errors as shown here:

*-------------------------------------------*
*     -*  Cybertan Instruments Linux *-     *
*-------------------------------------------*
*  Please select from the following boards: *
[1] Linksys Product WRTP54G
[2] Linksys Product RTP300
Selection (1-2): >Board: 'Cybertan_WRTP54G'
make setoldconfig
make[1]: Entering directory `/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl'
make[2]: Entering directory `/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl'
/bin/sh tools/scripts/Configure -d tools/configs/config.in

...

make[3]: Entering directory `/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl'
ln -sf /usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl/.config src/kernel/linux-2.4.17_mvl21/.config
ln -sf /usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl/.config src/busybox/.config
ln -sf /usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl/.config src/uClibc/.config
ln -sf /usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl/.config src/cfgmgr/.config
ln: creating symbolic link `src/cfgmgr/.config' to `/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl/.config': No such file or directory
make[3]: *** [setup_links] Error 1
make[3]: Leaving directory `/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl'
make[2]: *** [oldconfig] Error 2
make[2]: Leaving directory `/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl'
make[1]: *** [setoldconfig] Error 2
make[1]: Leaving directory `/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl'
make: *** [setconfig] Error 2

Can anyone please help me out? BTW, what other additional software packages do I need to install besides all the development packages found on a SuSE-9.1Pro distro (that I am using)?

Thanks.

looks like you need a .config file at /usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl/usr/src/packages/BUILD/wrtp54g_cyt_1_00_37_050616_gpl/

like it says.

Hmm ... i did get the serial console working perfectly with the rate of 115200 set as getty inittab entry and console terminal application (i use gtkterm, or if i'm at text console, kermit is nice.  minicom imho is overkill.)   I added the serial pinouts to the ar7port section of docs.

but due to the inittab entry on the wrtp unit of:

::askfirst:-/bin/login

and no serial entry, I get a login prompt rather than a shell as I had hoped. 

The unit also uses pspboot as the bootloader (rather than adam2 which is what i had hoped for)  which unfortunately is far less documented.
The pspboot on this unit seems much less user friendly than the console log provided at http://openwrt.org/PSPBoot  using the WAG354g unit.
There isn't any (Hit Escape for Monitor) prompt  at all at startup that will kick you into a nice, friendly, menu driven pspboot console as far as i've been able to tell.  I've tried hitting escape an infinite amount of times.  The only thing that registers is control c, which will pause the startup and ask for a login and password.

According to the PSPBoot page, there's less than a one second window where one can tftp an image named upgrade_code.bin to it, but I haven't had any luck in hitting it.  Apparently on the WAG354 unit you can prolong that molecular window by hitting escape and going into the pspboot menu. With that not seeming possible on this unit (the PSPBoot version on this unit is 1.3.3.11 as opposed to the 1.2.22.17 on wag354 listing, perhaps explaining the difference?) the control c  action that kicks you into the login prompt actually disables the tftp server it seems:

Waiting for enter to start '/bin/login' (pid 34, terminal /dev/tts/0)

Please press Enter to activate this console.
Starting pid 34, console /dev/tts/0: '/bin/login'

BusyBox on (none) login: Sep  8 12:00:03 cm_pc: tftpu service disabled.

Sep  8 12:00:03 cm_monitor: Monitor Starting
SYSTEM_POWER_ON
SIOCGIFFLAGS: No such device
SIOCGIFFLAGS: No such device
SIOCGIFFLAGS: No such device
resolver: configuration tree:
Sep  8 12:00:05 Sep  8 12:00:05 [001310A34628] cfgmgr(ap): AP Acquiring Lock
Sep  8 12:00:05 [001310A34628] cfgmgr(provision): Converting VOICE_XML2 to VOICE_XML
[001310A34628] cfgmgr(ap): AP Acquiring Lock
Sep  8 12:00:05 [001310A34628] cfgmgr(provision): Converting VOICE_XML2 to VOICE_XML


So i see the options at this point being:

1. keep plugging away at trying to tftp my own image into that nano sized window
2. jtag nirvana

I'm going to try building a jtag cable for it and see if i can get at the firmware that way.

(Last edited by Ydef on 24 Aug 2005, 14:44)

Man, ydef... rock, rock on. I wish I had something substantial to contribute to your efforts, but I'm stuck using vonage for the immediate future and can't really afford to rip my router apart. I've been following your attempts with great interest though...

Question: why is it not possible to use the GPL source to compile firmware not configured for vonage and use the firmware update page to which we do have access to replace the image? If it's possible, has anyone tried?

Manning wrote:

Question: why is it not possible to use the GPL source to compile firmware not configured for vonage and use the firmware update page to which we do have access to replace the image? If it's possible, has anyone tried?

This should be possible ... yes.  However, I am unable to even get to that page  (I'm still using 1.00.37, perhaps it is buggy?)  I'd be interested to find out if any of you try to downgrade via the web interface method whether it works for you.

I've mapped the JTAG pinouts from the traces of J3 on this unit as follows:

1. TRST 2. GND
3. TDI 4. GND
5. TDO 6. GND
7. TMS 8. GND
9. TCK 10. GND
11. RST 12. NC
13. DINT 14. VIO voltage reference (3.3volt)

Common 14 pin pinout common for boards utilizing the MIPS EJTAG standard.

The parallel mapping for pins 1-12 follow the same model as the hairy dairy jtag/xilinx 3 clone paragon.  In otherwords, 100R ohm resistors on parallel pins 2,3,4 and 13 (TDI,TCK,TMS,TDO/  3,9,7,5 on the jtag side respectively).  What i'm not sure of at the moment is how 13 and 14 of the ejtag 14 pin paradigm map to on the parallel pinouts.  I don't think debug interrupt is even used, so i'm not sure how it maps.  The VIO Pin 14 i'm sure it can be deduced with a multimeter if need be.

Anyone have any ideas, suggestions, or even go so far as to provide a dump given this info? 

Y

(Last edited by Ydef on 30 Aug 2005, 12:24)

I haven't tried using the upgrade page to downgrade my firmware, but from what I've read on other forums, others have successfully.

So this procedure doesn't work for you?

1.) login to the router normally at 192.168.15.1
2.) Open 192.168.15.1/update.html
3.) Enter username: user, password: tivonpw
4.) You should now be presented with the firmware update page.

I've verified that this works with firmware versions 1.0.18, 1.0.37 and 1.0.43 (the newest). Note that you can't login as user until you've already logged in as admin (little 'a').

Has anyone figured out why the whole "cfgmgr" directory tree is missing from the Linksys tarball?

That appears to be the key to building from the sources, or at least part of it.