Openwrt and Livebox (howto)
Friday, November 20, 2009 1:22:42 PM
Openwrt and LIVEBOX, openwrt forum
This is an old howto, please use the link above.
This is a schema of our target SoC BCM6348

This is how I connected the serial port to a cellphone data cable.

Livebox Pin-out: 1 data in (3V) 2 data out (3V) 3 button "2" input 4 button "1" input 5 +5V 6 ground Parameters: 115200 baud, 8 databits, no parity, 1 stopbit(I needed to plug the phone because this crap cable does not transmit if the phone is not plugged, probably you don't will need to do this with your cable)
First we need access via telnet because we will need to change the Redboot loader with another one that let us to break into the command line while the Livebox boots.
This is the redboot that we will flash to mtd0:
redboot.20040719 from my.opera server
redboot.20040719 from andyp webpage
Check these files and be sure the file is not corrupted, it is very important, you can make a brick with an improper Redboot loader.
Telnet you livebox load (wget) the redboot file and flash it (cross fingers):
# fcp -v redboot.20040719 /dev/mtd0 Erasing blocks: 3/3 (100%) Writing data: 192k/192k (100%) Verifying data: 192k/192k (100%) # # reboot Sending SIGTERM to adsld and pppd.
Another thing you will need of course is a GNU-Linux environment. I use kubuntu karmic-koala. And a tftp server installed. You can install it simply with:
sudo apt-get install atftp
The directory where atftp works serving files is in my system located at /var/lib/tftpboot. That is where you will put yor openwrt image. Make it writeable:
sudo chmod ugo+rwx /var/lib/tftpboot
Be sure you use an ip that the Redboot of your livebox will understand, default is 10.7.58.114, you can make a virtual interface in your pc with this ip:
sudo ifconfig eth0:10 10.7.58.114
Once you have flashed the new Redboot check that you can break into it, conect the serial port, start CuteCom and press Ctrl+C while the livebox boots up, you must see the redboot command line. Review the config
fconfig -l -n
You can change the ip of redboot, if you need to do so, this is an example:
fconfig bootp_my_ip 10.7.58.1 fconfig bootp_server_ip 10.7.58.114
Before start building the OpenWrt image for livebox you will need some stuff:
svn gcc g++ binutils patch make automake gettext pkg-config unzip bzip2 flex bison libz-dev quilt gawk flex libghc6-zlib-dev...
Make a directory somewhere called "kamikaze" and open a terminal there. Enter this comand
svn -r r18708 co svn://svn.openwrt.org/openwrt/trunk/
Put the ruff's kernel patch 046-cramfs_endianness.patch to enable cramfs endiannes in:
/trunk/target/linux/brcm63xx/patches-2.6.30
Open another terminal in trunk subdirectory and enter the command:
make menuconfig
Then search in the menus the following stuff and check it.
┌────────────────────────── Target System ───────────────────────────┐ │ Use the arrow keys to navigate this window or press the hotkey of │ │ the item you wish to select followed by the <SPACE BAR>. Press │ │ <?> for additional information about this option. │ │ ┌───────────────────^(-)─────────────────────────────────────────┐ │ │ │ ( ) Atheros AR231x/AR5312 │ │ │ │ ( ) Atheros AR71xx/AR7240/AR913x │ │ │ │ ( ) Atmel AVR32 │ │ │ │ (X) Broadcom BCM63xx │ │ │ │ ( ) Broadcom BCM947xx/953xx │ │ │ │ ( ) Broadcom BCM947xx/953xx [2.4] │ │ │ └───────────────────v(+)─────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────┤ │ <Select> < Help > │ └────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────── Target Images ──────────────────────────┐ │ ┌───────────────────────────────────────────────────────────────────── │ │ │ [ ] ramdisk (NEW) │ │ │ │ [ ] jffs2 │ │ │ │ [*] squashfs (NEW) │ │ │ │ [*] tgz │ │ │ │ [ ] cpiogz (NEW) │ │ │ │ [ ] ext2 (NEW) │ │ │ └─v(+)───────────────────────────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └────────────────────────────────────────────────────────────────────────┘
disable the switch, livebox doesn't have one
┌───────────────────────────────── Other modules ────────────────────────────┐ │ ┌─^(-)───────────────────────────────────────────────────────────────────┐ │ │ │ < > kmod-ledtrig-netdev.............................. LED NETDEV Trigge│ │ │ │ < > kmod-mmc........................................ MMC/SD Card Suppor│ │ │ │ < > kmod-mmc-over-gpio.................... MMC/SD card over GPIO suppor│ │ │ │ <*> kmod-pcmcia-core............................ PCMCIA/CardBus support│ │ │ │ <*> kmod-pcmcia-bcm63xx.............. Broadcom BCM63xx PCMCIA support│ │ │ │ < > kmod-pcmcia-serial.................. Serial devices support (NEW)│ │ │ │ < > kmod-pcmcia-yenta...................... yenta socket driver (NEW)│ │ │ │ < > kmod-pcspkr...................................... PC speaker suppor│ │ │ │ < > kmod-softdog............................... Software watchdog drive│ │ │ │ < > kmod-switch.......................................... Switch driver│ │ │ │ < > kmod-textsearch.............Textsearch support is selected if neede│ │ │ └────────────────────────────────────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └────────────────────────────────────────────────────────────────────────────┘
Select modules that you need for usb. Note that bcm6348 has usb 1.1 then it uses OHCI drivers
┌───────────────────────────── USB Support ──────────────────────────────┐ │ ┌────────────────────────────────────────────────────────────────────┐ │ │ │ <*> kmod-usb-core................................... Support for US│ │ │ │ < > kmod-usb-acm................ Support for modems/isdn controll│ │ │ │ < > kmod-usb-atm......................... Support for ATM on USB │ │ │ │ <*> kmod-usb-audio.................... Support for USB audio devi│ │ │ │ < > kmod-usb-cm109......................... Support for CM109 dev│ │ │ │ < > kmod-usb-hid................ Support for USB Human Input Devi│ │ │ │ < > kmod-usb-net...... Kernel modules for USB-to-Ethernet convert│ │ │ │ <*> kmod-usb-ohci...................... Support for OHCI controll│ │ │ │ < > kmod-usb-phidget............................. USB Phidget Dri│ │ │ │ < > kmod-usb-printer........................... Support for print│ │ │ │ < > kmod-usb-serial............ Support for USB-to-Serial convert│ │ │ │ <*> kmod-usb-storage............................ USB Storage supp│ │ │ │ < > kmod-usb-uhci...................... Support for UHCI controll│ │ │ │ < > kmod-usb-video.................... Support for USB video devi│ │ │ │ < > kmod-usb-yealink......................... USB Yealink VOIP ph│ │ │ │ < > kmod-usb2.......................... Support for USB2 controll│ │ │ └────────────────────────────────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └────────────────────────────────────────────────────────────────────────┘
Exit and save, next do:
make kernel_menuconfig
┌────────────────────────────── CPU support ───────────────────────────────┐ │ ┌──────────────────────────────────────────────────────────────────────┐ │ │ │ [ ] support 6338 CPU │ │ │ │ [ ] support 6345 CPU │ │ │ │ [*] support 6348 CPU │ │ │ │ [ ] support 6358 CPU │ │ │ │ │ │ │ └──────────────────────────────────────────────────────────────────────┘ │ ├──────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └──────────────────────────────────────────────────────────────────────────┘
┌────────────────────────── Board support ───────────────────────────┐ │ ┌────────────────────────────────────────────────────────────────┐ │ │ │ ( ) Generic Broadcom 963xx boards │ │ │ │ (X) Inventel Livebox(es) boards │ │ │ │ │ │ │ └────────────────────────────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────┤ │ <Select> < Help > │ └────────────────────────────────────────────────────────────────────┘
[*] Force read-only for RedBoot system images
┌──────────────────── Memory Technology Device (MTD) support ────────────────┐ │ ┌────────────────────────────────────────────────────────────────────────┐ │ │ │ --- Memory Technology Device (MTD) support │ │ │ │ [ ] Debugging │ │ │ │ <*> MTD concatenating support │ │ │ │ [*] MTD partitioning support │ │ │ │ < > MTD tests support │ │ │ │ [*] Automatically set 'rootfs' partition to be root filesystem │ │ │ │ [*] Automatically split 'rootfs' partition for squashfs │ │ │ │ <*> RedBoot partition table parsing │ │ │ │ (-1) Location of RedBoot partition table │ │ │ │ [*] Include unallocated flash regions │ │ │ │ [ ] Force read-only for RedBoot system images │ │ │ │ [*] Command line partition table parsing │ │ │ │ < > TI AR7 partitioning support │ │ │ │ *** User Modules And Translation Layers *** │ │ │ │ <*> Direct char device access to MTD devices │ │ │ │ -*- Common interface to block layer for MTD 'translation layers │ │ │ │ <*> Caching block device access to MTD devices │ │ │ │ < > FTL (Flash Translation Layer) support │ │ │ │ < > NFTL (NAND Flash Translation Layer) support │ │ │ │ < > INFTL (Inverse NAND Flash Translation Layer) support │ │ │ │ < > Resident Flash Disk (Flash Translation Layer) support │ │ │ │ < > NAND SSFDC (SmartMedia) read only translation layer │ │ │ │ < > Log panic/oops to an MTD buffer │ │ │ │ RAM/ROM/Flash chip drivers ---> │ │ │ │ Mapping drivers for chip access ---> │ │ │ │ Self-contained MTD device drivers ---> │ │ │ │ < > NAND Device Support ---> │ │ │ │ < > OneNAND Device Support ---> │ │ │ │ LPDDR flash memory drivers ---> │ │ │ │ UBI - Unsorted block images ---> │ │ │ └────────────────────────────────────────────────────────────────────────┘ │ ├────────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └────────────────────────────────────────────────────────────────────────────┘
┌────────────────────── RAM/ROM/Flash chip drivers ───────────────────────┐ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ <*> Detect flash chips by Common Flash Interface (CFI) probe │ │ │ │ <*> Detect non-CFI AMD/JEDEC-compatible flash chips │ │ │ │ [*] Flash chip driver advanced configuration options │ │ │ │ Flash cmd/query data swapping (NO) ---> │ │ │ │ [*] Specific CFI Flash geometry selection │ │ │ │ [*] Support 8-bit buswidth │ │ │ │ [*] Support 16-bit buswidth │ │ │ │ [ ] Support 32-bit buswidth │ │ │ │ [ ] Support 64-bit buswidth │ │ │ │ [ ] Support 128-bit buswidth │ │ │ │ [ ] Support 256-bit buswidth │ │ │ │ [*] Support 1-chip flash interleave │ │ │ │ [ ] Support 2-chip flash interleave │ │ │ │ [ ] Support 4-chip flash interleave │ │ │ │ [ ] Support 8-chip flash interleave │ │ │ │ [ ] Protection Registers aka one-time programmable (OTP) bits │ │ │ │ < > Support for Intel/Sharp flash chips │ │ │ │ <*> Support for AMD/Fujitsu/Spansion flash chips │ │ │ │ <*> Support for ST (Advanced Architecture) flash chips │ │ │ │ < > Support for RAM chips in bus mapping │ │ │ │ <*> Support for ROM chips in bus mapping │ │ │ │ < > Support for absent chips in bus mapping │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ ├─────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └─────────────────────────────────────────────────────────────────────────┘
This is the most important:
┌────────────────────── Mapping drivers for chip access ───────────────────┐ │ ┌──────────────────────────────────────────────────────────────────────┐ │ │ │ [*] Support non-linear mappings of flash chips │ │ │ │ <*> Flash device in physical memory map │ │ │ │ [*] Physmap compat support │ │ │ │ (0x1e400000) Physical start address of flash mapping │ │ │ │ (0x00800000) Physical length of flash mapping │ │ │ │ (2) Bank width in octets (NEW) │ │ │ │ < > BCM963xx Flash device │ │ │ │ < > PCI MTD driver │ │ │ │ < > NOR flash on Intel Vermilion Range Expansion Bus CS0 │ │ │ │ < > Map driver for platform device RAM (mtd-ram) │ │ │ └──────────────────────────────────────────────────────────────────────┘ │ ├──────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └──────────────────────────────────────────────────────────────────────────┘
here we will enable usb for our board
┌───────────────────────────────── USB support ─────────────────────────────┐ │ ┌───────────────────────────────────────────────────────────────────────┐ │ │ │ --- USB support │ │ │ │ <*> Support for Host-side USB │ │ │ │ [ ] USB verbose debug messages │ │ │ │ [ ] USB announce new devices │ │ │ │ *** Miscellaneous USB options *** │ │ │ │ [*] USB device filesystem │ │ │ │ [ ] USB device class-devices (DEPRECATED) │ │ │ │ [ ] Dynamic USB minor allocation │ │ │ │ [ ] Rely on OTG Targeted Peripherals List │ │ │ │ [ ] Disable external hubs │ │ │ │ < > USB Monitor │ │ │ │ < > Enable Wireless USB extensions (EXPERIMENTAL) │ │ │ │ < > Support WUSB Cable Based Association (CBA) │ │ │ │ *** USB Host Controller Drivers *** │ │ │ │ < > Cypress C67x00 HCD support │ │ │ │ < > EHCI HCD (USB 2.0) support (NEW) │ │ │ │ < > OXU210HP HCD support │ │ │ │ < > ISP116X HCD support │ │ │ │ < > ISP 1760 HCD support │ │ │ │ <*> OHCI HCD support │ │ │ │ [ ] OHCI support for Broadcom SSB OHCI core │ │ │ │ < > UHCI HCD (most Intel and VIA) support (NEW) │ │ │ │ < > SL811HS HCD support │ │ │ │ < > R8A66597 HCD support │ │ │ └────v(+)───────────────────────────────────────────────────────────────┘ │ ├───────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > │ └───────────────────────────────────────────────────────────────────────────┘
Kernel hacking, this is very important too
┌───────────────────── Default kernel command string ─────────────────────────────────────┐ │ Please enter a string value. Use the <TAB> key to move from the input │ │ field to the buttons below it. │ │ ┌─────────────────────────────────────────────────────────────────────────────────────┐ │ │ │root=/dev/mtdblock1 rootfstype=cramfs,squashfs init=/etc/preinit console=ttyS0,115200│ │ │ └─────────────────────────────────────────────────────────────────────────────────────┘ │ │ │ ├─────────────────────────────────────────────────────────────────────────────────────────┤ │ < Ok > < Help > │ └─────────────────────────────────────────────────────────────────────────────────────────┘
now exit and save changes, and make the world
dani@NEXUS:/media/ext4/kamikaze/trunk$ make V=99
Next step is to convert our stuff into a cramfs image to flash the Livebox
Download the ruff's script to your kamikaze directory, mkcramfs binary, etccramfs and network (edit this to your preferences). Change permisions of these files (chmod ugo+rwx file). Make the cramfs image.
dani@NEXUS:/media/ext4/kamikaze$ ./kamk.sh
We will get openwrt.cramfs image ready to flash. This is mine http://files.myopera.com/danitool/linux/openwrt.cramfs (use it only for testing purpose)
put openwrt.cramfs into the atftp server directory /var/lib/tftpboot. Plug an ethernet cable from your computer to the yellow port in the livebox.
Open cutecom and flash it
Plug your serial interface to the livebox, an power on the livebox, push control+c to break into redboot
First check your partition table. This is mine:
RedBoot> fis list Name FLASH addr Mem addr Length Entry point RedBoot 0xBE400000 0xBE400000 0x00030000 0x00000000 user_fs 0xBE430000 0xBE430000 0x00720000 0x80545FB0 jffs_system 0xBEB50000 0xBEB50000 0x000A0000 0x80545FB0 FIS directory 0xBEBF0000 0xBEBF0000 0x0000F000 0x00000000 RedBoot config 0xBEBFF000 0xBEBFF000 0x00001000 0x00000000
As you see I have jffs_system with flash adress=0xBEB50000 and length=0x000A0000. Then:
erase jffs_system
fis erase -f 0xBEB50000 -l 0x000A0000
load openwrt.cramfs
load -r -v -b 0x80800000 openwrt.cramfs
flash openwr.cramfs
fis create -b 0x80800000 user_fs

Reboot your device, and telnet it in your computer
telnet 10.7.58.1
This is my log
Linux version 2.6.30.9 (dani@NEXUS) (collect2: ld returned 1 exit status) #17 Thu Nov 19 21:18:34 CET 2009
Detected Broadcom 0x6348 CPU revision b0
CPU frequency is 256000000 Hz
16MB of RAM installed
registering 37 GPIOs
console [early0] enabled
CPU revision is: 00029107 (Broadcom BCM6348)
board_livebox: board name: Livebox
Determined physical RAM map:
memory: 01000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
Normal 0x00000000 -> 0x00001000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00001000
On node 0 totalpages: 4096
free_area_init_node: node 0, pgdat 80283910, node_mem_map 802e7000
Normal zone: 32 pages used for memmap
Normal zone: 0 pages reserved
Normal zone: 4064 pages, LIFO batch:0
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 4064
Kernel command line: root=/dev/mtdblock1 rootfstype=cramfs,squashfs init=/etc/preinit console=ttyS0,115200
Primary instruction cache 16kB, VIPT, 2-way, linesize 16 bytes.
Primary data cache 8kB, 2-way, VIPT, no aliases, linesize 16 bytes
NR_IRQS:128
PID hash table entries: 64 (order: 6, 256 bytes)
Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 13268k/16384k available (2088k kernel code, 3116k reserved, 428k data, 124k init, 0k highmem)
Calibrating delay loop... 252.41 BogoMIPS (lpj=504832)
Mount-cache hash table entries: 512
net_namespace: 332 bytes
NET: Registered protocol family 16
registering PCI controller with io_map_base unset
bio: create slab <bio-0> at 0
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
pci 0000:00:01.0: reg 10 32bit mmio: [0x000000-0x001fff]
Switched to high resolution mode on CPU 0
PCI: Enabling device 0000:00:01.0 (0000 -> 0002)
PCI: Setting latency timer of device 0000:00:01.0 to 64
ssb: Sonics Silicon Backplane found on PCI device 0000:00:01.0
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 512 (order: 0, 4096 bytes)
TCP bind hash table entries: 512 (order: -1, 2048 bytes)
TCP: Hash tables configured (established 512 bind 512)
TCP reno registered
NET: Registered protocol family 1
audit: initializing netlink socket (disabled)
type=2000 audit(0.650:1): initialized
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
msgmni has been set to 25
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler deadline registered (default)
bcm63xx_uart.0: ttyS0 at MMIO 0xfffe0300 (irq = 10) is a bcm63xx_uart
console handover: boot [early0] -> real [ttyS0]
bcm63xx_enet MII bus: probed
physmap platform flash device: 00800000 at 1e400000
physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
Searching for RedBoot partition table in physmap-flash.0 at offset 0x7f0000
5 RedBoot partitions found on MTD device physmap-flash.0
Creating 5 MTD partitions on "physmap-flash.0":
0x000000000000-0x000000030000 : "RedBoot"
0x000000030000-0x000000750000 : "user_fs"
0x000000750000-0x0000007f0000 : "jffs_system"
0x0000007f0000-0x0000007ff000 : "FIS directory"
0x0000007ff000-0x000000800000 : "RedBoot config"
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
bcm63xx_ohci bcm63xx_ohci.0: BCM63XX integrated OHCI controller
bcm63xx_ohci bcm63xx_ohci.0: new USB bus registered, assigned bus number 1
bcm63xx_ohci bcm63xx_ohci.0: irq 20, io mem 0xfffe1b00
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
bcm63xx_wdt started, timer margin: 30 sec
TCP westwood registered
NET: Registered protocol family 17
VFS: Mounted root (cramfs filesystem) readonly on device 31:1.
Freeing unused kernel memory: 124k freed
Please be patient, while OpenWrt loads ...
mini_fo: using base directory: /jffs/etc-ro
mini_fo: using storage directory: /jffs/etc
bcm63xx_enet bcm63xx_enet.0: attached PHY at address 1 [Broadcom BCM63XX (1)]
device eth0 entered promiscuous mode
eth0: link UP - 100/full - flow control off
br-lan: port 1(eth0) entering forwarding state
eth1: link forced UP - 100/full - flow control off/off
cfg80211: Calling CRDA to update world regulatory domain
SCSI subsystem initialized
b43-phy0: Broadcom 4318 WLAN found (core revision 9)
phy0: Selected rate control algorithm 'minstrel'
Registered led device: b43-phy0::tx
Registered led device: b43-phy0::rx
Registered led device: b43-phy0::radio
Broadcom 43xx driver loaded [ Features: PL, Firmware-ID: FW13 ]
Driver 'sd' needs updating - please use bus_type methods
usbcore: registered new interface driver snd-usb-audio
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
b43 ssb0:0: firmware: requesting b43/ucode5.fw
b43 ssb0:0: firmware: requesting b43/pcm5.fw
b43 ssb0:0: firmware: requesting b43/b0g0initvals5.fw
b43 ssb0:0: firmware: requesting b43/b0g0bsinitvals5.fw
b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)
BusyBox v1.14.4 (2009-11-17 12:55:07 CET) built-in shell (ash)
Enter 'help' for a
list of built-in commands.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
KAMIKAZE (bleeding edge, r18440) ------------------
* 10 oz Vodka Shake well with ice and strain
* 10 oz Triple sec mixture into 10 shot glasses.
* 10 oz lime juice Salute!
---------------------------------------------------
root@OpenWrt:/#
You can probe this steps if you are sure enough. I hope this howto will be outdated soon, and developers from Openwrt will make images ready to flash in a easier way.
Be care, and of course don't blow me if you make a brick.
enjoy
(danitool)
external links: andyp website
dbzoo
darkfader
kamikaze latest trunk br63xx
pinouts
An easier way to flash without serial connection, but more dangerous:
You can flash the built image of Kamikaze without serial, simply in your telnet command line with the old original firmware working you can do this:
fcp -v openwrt.cramfs /dev/mtd1
I didn't try this yet, and i don't know if it is possible with original redboot. Maybe less dangerous because if it doesn't work, always you will be able to load the original firmware again using the button 1.
I'm sure that is possible with the old redboot but if you do not have serial access you can make a brick with a wrong openwrt.cramfs (a simple error in network configuration in the image is catastrofic). The button 1 to load firmwares will not work, openwrt.cramfs needs to be encrypted, and an original firmware will not load neither.
As always be care
Regards.








« Previous 1 2 3
Unregistered user # Saturday, February 12, 2011 2:57:45 PM
danitool # Saturday, February 26, 2011 4:36:20 PM
Un par de apuntes acerca del rendimiento:
- Timer: si lo bajamos nos dará un ligero aumento de rendimiento ya que causa menos interrupciones, aunque la respuesta si queremos ejecutar otra tarea aumentará. En general reducir el timer en las opciones del kernel hasta 100MHz aumentará el rendimiento aunque a primera impresión parezca que no, ya que el tiempo de respuesta aumenta cuando queremos interactuar con el dispositivo. Digamos que bajando el timer el procesador se centra más en realizar una sola tarea, por lo que gana en rendimiento al no estar continuamente creando interrupciones en el procesador para ver si existen otras tareas pendientes.
- Netfilter modules: estos son los módulos principalmente de iptables. En cuanto a rendimiento el impacto es terrorífico. Una vez que se cargan los módulos del kernel que usa iptables, el rendimiento baja, usemos o no usemos iptables. Aunque no estemos transfiriendo ningún paquete por NAT o ruta alguna, en transferencia directa, los modulos de iptables machacan el rendimiento. Por defecto Openwrt carga todos lo módulos de iptables que hemos compilado. Por ello si no vamos a usar Iptables recomiendo deshabilitar iptables en la compilación así como todos los netfilter modules. O bien "por si acaso" queremos compilar iptables, además de que luci nos arrastra el paquete queramos o no, una solución mejor será hacer esto:
insisto en descargar los módulos ipt, ya que la ganancia de rendimiento en una transferencia es brutal, o bien, aunque nuestras transferencias tengan baja velocidad, el consumo de cpu no se elevará tanto, dejando cpu libre para otros procesos si es que los tenemos.
Aunque Luci no cargará más rápido, ya que los datos que transfiere por red son mínimos, por lo que este no parece ser el problema de la interfaz web. Mi última compilación con luci: http://files.myopera.com/danitool/livebox/openwrt25727.cramfs (ip de acceso 192.168.1.1)
Todo depende como siempre, y finalmente, de las necesidades de cada uno.
Unregistered user # Monday, February 28, 2011 6:57:20 PM
Unregistered user # Sunday, March 6, 2011 8:45:09 PM
danitool # Sunday, March 6, 2011 9:07:37 PM
Este es el particionado que de momento estoy usando para el livebox.
Bien es cierto que sería más correcto para openwrt usar rootfs_data, en lugar de jffs_system, pero aumentando el tamaño de partición, y ajustando las otras particiones al tamaño mínimo posible para poder instalar paquetes. El trabajo que queda por hacer, y más correcto todavía sería usar la primera partición sólo para el kernel, en formato cramfs, una segunda para los archivos de sistema (o sea la raíz) en formato squashfs (mayor compresión), y una tercera para las configuraciones y paquetes (rootfs_data sin formato especial alguno, jffs2). Para hacer un trabajo completo en este sentido estoy intentando crear imágenes que se puedan flashear mediante luci, o más propiamente con el comando sysupgrade. Sysupgrade en teoría nos recrearía las particiones automáticamente ajustándolas para tener el mayor tamaño posible en la partición escribible para poder instalar paquetes. Aunque me resulta muy complicado saber como funciona, he abierto un hilo en el foro, pero sin respuesta alguna:
https://forum.openwrt.org/viewtopic.php?id=28849
Unregistered user # Sunday, March 6, 2011 9:39:01 PM
danitool # Sunday, March 6, 2011 9:43:07 PM
Unregistered user # Monday, March 21, 2011 6:11:12 PM
Unregistered user # Wednesday, April 20, 2011 4:43:46 PM
danitool # Thursday, April 21, 2011 8:55:03 PM
http://files.myopera.com/danitool/livebox/openwrt26748.zip
con el boot script tal y como se detalla en el último tutorial de esta forma
Los comandos para flashear están dentro del zip.
He probado a montar un pendrive con sistema de archivos FAT, lo monta perfectamente sin problema alguno. Si no te funciona con tu pendrive quizás sea problema del propio pendrive, o quizás te hagan falta los usb-storage-extras.
make kernel_menuconfig también me funciona perfectamente en mi sistema. Revisa que tengas todas las utilidades necesarias para compilar, en especial quilt ya que normalmente quilt no se indica en ningún sitio que sea necesario para compilar openwrt, pero realmente yo lo necesito, sin quilt también obtengo errores en esa fase. Aunque si el error es del propio parche del livebox, descárgalo de nuevo ya que lo he actualizado para el kernel 2.6.37 que han incorporado no hace mucho.
En cuanto a los leds, es cierto, no funcionan. Lo revisaré.
Unregistered user # Thursday, September 1, 2011 1:30:57 PM
ALoALoGeNo # Saturday, December 31, 2011 11:19:30 AM
Bien pues empezamos el tema esq lleva dos antenas "mini" dos alambrillos conectados a la minipci wifi por fos cables con conector UFL, bien pues el tema seria desconectar los dos cablecitos y anular las antenas "onboard" y ponerle dos pigtails UFL a RP-SMA bueno para q lo veais os pongo un link y ya buscais vosotros mejores precios yo cuando los compre me costaron 9€ cada uno, http://www.ciudadwireless.com/pigtail_rp-sma_bulkhead_-cuerpo_hembra_macho--p-614.html
Poniendo eso en el router, tendriamos la posibilidad de poner unas antenitas externas en nuestra livebox, la verdad nose como viene configurado por defecto pq en el config no pone nada, pero las opciones serian estas:
Modo Diversity:
Usa las dos antenas (para recibir y transmitir)
option 'diversity' '1'
1 on 0 off
Ahora bien, si usasemos las antenas internas recordar q tenemos 2 o las externas con el pigtail y demas, tambien podriamos decirle q use la antena 0 "main" para recibir y la antena 1 "aux" para transmitir eso lo hariamos asi..:
option 'txantenna' '1'
option 'rxantenna' '0'
Con eso tambien agilizaremos el trafico de la wifi.
Hasta ahi el modo diversity ON (1), ahora vamos con el modo diversity OFF (0), este es el caso q ami me interesa pq tengo una antena en un mastil y quiero q el router use la externa solo, no la interna, y la externa porq aki dentro ya tengo otro router q da servicio wifi, asiq quiero anular la antena interna "main" y dejar solo la externa "aux",
de este modo cuando haga un escaneo de redes el router mostrara las q entran por la antena externa.
Conclusion, si ponemos una sola antena externa y no configuramos esto el router no mostrara las redes q le entran por la antena externa sino q hara un MIX de los AP q lleguen mejor y yasta, diferencias en mi caso?, pues antes solo veia 4 redes dos de mi casa y dos de los vecinos del bloke, ahora veo unos 17, y porsupuesto el ap de mi cuñado al q quiero conectar para hechar unas partis en LAN
Bueno espero no haber metido mucho royo y q a alguien le sea de ayuda esto.. aki pego mi /etc/config/wireless para q veais como lo he puesto.
Weno pues como podeis ver modo diversity off para q solo use la antena q yo quiero q es la "AUX" envia y recive por la antena AUX tambien, una cosa, cuando el modo diversity esta en 0 las opciones rx y tx antena no se usan.
Ahi entra el parametro option 'antenna' '1' q es con el q elijes la antena q quieras.
Bien y sin mas rollo espero haberme explicado bien y q sirva de ayuda o inspiracion a alguien para modear su livebox
Porsupuesto gracias a danitool por sus relases y su curre
Posteo de nuevo q salio un ladrillo y la config no se veia, a ver si asi habiendo logineado se ve mas decente si eso luego borra el comentario anterior dani, sorry bye
danitool # Saturday, December 31, 2011 11:46:08 AM
Decir que de las dos salidas de antena que llevan la mayoría de adaptadores 11b/g, solo se usa una, la que obtiene mejor señal (en teoría), y esa es para transmitir y recibir, en ningún caso se usa una para transmitir y la otra para recibir en el mismo lapso de tiempo. Por tanto dos antenas solo será útil en entornos "dispersos" donde la señal rebota y hace extraños, donde se conmuta de una antena a otra para cojer la mejor señal posible, por ejemplo con nuestro portátil conectándose al wifi en el interior de nuestra casa. En enlaces a larga distancia en exteriores donde la señal seguramente tendrá siempre la misma dirección, con una antena externa es suficiente, poner dos antenas en este caso resultaría inútil seguramente.
El uso de dos antenas para transmitir datos al mismo por tiempo y en ambas a la vez se conseguirá con radios wifi 11b/g/n aunque para ello tendríamos que tener una infraestructura 11b/g/n, con esta tecnología presente en todos los puntos de acceso/clientes de nuestra red.
ALoALoGeNo # Sunday, January 1, 2012 9:57:05 AM
Feliz Año a tod@s
Unregistered user # Friday, January 20, 2012 6:14:19 PM
Unregistered user # Friday, January 27, 2012 2:03:19 AM
danitool # Tuesday, January 31, 2012 2:56:47 PM
O bien puedes obtener los paquetes si los hay para este kernel, o compilarlos tu mismo fijándote en la revisión que ha de ser 29366, o una que use el mismo kernel.