Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
zyxel_xs1930_series [2020/11/23 06:33] – bkoblitz | zyxel_xs1930_series [2022/11/15 15:48] (current) – Remove trailing space pmenzel | ||
---|---|---|---|
Line 6: | Line 6: | ||
| XS1930-10 | 8 | 2 | - | | | XS1930-10 | 8 | 2 | - | | ||
| XS1930-12HP | 10 | 2 | 8 | | | XS1930-12HP | 10 | 2 | 8 | | ||
+ | | XS1930-12F | 2 | 10 | - | | ||
===== Models ===== | ===== Models ===== | ||
Line 18: | Line 19: | ||
* 3-pin fan | * 3-pin fan | ||
- | The serial port is accessible via pins from from the outside on the right side of the device. Pins are front to back: GND, TX, RX, Vcc. | + | The serial port is accessible via pins from the outside on the right side of the device. Pins are front to back: GND, TX, RX, Vcc. |
- | Port settings are 115200 baud, 8n1, with 3.3 logic level. | + | Port settings are 115200 baud, 8n1, with 3.3V logic level. |
+ | |||
+ | If you are using a Raspberry Pi, ensure that the serial port is activated first, many guides list these steps, here is a decent guide: https:// | ||
+ | |||
+ | Once wired up, and the serial port is enabled test that this works. | ||
+ | |||
+ | $ setserial -g / | ||
+ | |||
+ | /dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4 | ||
+ | /dev/ttyS1, UART: 16550A, Port: 0x02f8, IRQ: 3 | ||
+ | /dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4 | ||
+ | /dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3 | ||
+ | |||
+ | It's likely /dev/ttyS0, use Linux' | ||
+ | |||
+ | $ cu -l /dev/ttyS0 -s 115200 | ||
+ | |||
+ | If done correctly, you will be presented with a login prompt, the login credentials for the web interface and this serial interface are the same. Test that the system is wired properly before restarting. | ||
=== Photos === | === Photos === | ||
Line 25: | Line 43: | ||
| Overview | {{: | | Overview | {{: | ||
| Main board | {{: | | Main board | {{: | ||
+ | | Serial port location | {{: | ||
+ | | Serial Port connected (raspi client) | {{: | ||
===== Firmware ===== | ===== Firmware ===== | ||
Line 355: | Line 375: | ||
</ | </ | ||
You can directly load RasCode_image.bin into a disassembler at memory location 0x80274000 for analysis (see above: 2: RasCode(RAMCODE), | You can directly load RasCode_image.bin into a disassembler at memory location 0x80274000 for analysis (see above: 2: RasCode(RAMCODE), | ||
+ | |||
+ | ===== OpenWrt ===== | ||
+ | A very initial boot of OpenWrt looks like this: | ||
+ | < | ||
+ | [ 0.000000] Calling smp_setup_processor_id | ||
+ | [ 0.000000] Calling boot_cpu_init | ||
+ | [ 0.000000] Linux version 5.4.70 (birger@AMDDesktop) (gcc version 8.4.0 (OpenWrt GCC 8.4.0 r14727-627da9a38c)) #0 Thu Oct 29 18:33:33 2020 | ||
+ | [ 0.000000] prom_init called | ||
+ | [ 0.000000] RTL838X model is 0 | ||
+ | [ 0.000000] RTL839X model is 0 | ||
+ | [ 0.000000] RTL93XX model is 93130001 | ||
+ | [ 0.000000] SoC Type: RTL9313 | ||
+ | [ 0.000000] Kernel command line: | ||
+ | [ 0.000000] printk: bootconsole [early0] enabled | ||
+ | [ 0.000000] CPU0 revision is: 0001a120 (MIPS interAptiv (multi)) | ||
+ | [ 0.000000] plat_mem_setup called | ||
+ | [ 0.000000] MIPS: machine is Zyxel XS1900-10 | ||
+ | [ 0.000000] Registering _machine_restart | ||
+ | [ 0.000000] NO PCI device found | ||
+ | [ 0.000000] Initrd not found or empty - disabling initrd | ||
+ | [ 0.000000] device_tree_init called | ||
+ | [ 0.000000] Using appended Device Tree. | ||
+ | [ 0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes. | ||
+ | [ 0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes | ||
+ | [ 0.000000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes. | ||
+ | [ 0.000000] Zone ranges: | ||
+ | [ 0.000000] | ||
+ | [ 0.000000] Movable zone start for each node | ||
+ | [ 0.000000] Early memory node ranges | ||
+ | [ 0.000000] | ||
+ | [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff] | ||
+ | [ 0.000000] On node 0 totalpages: 32768 | ||
+ | [ 0.000000] | ||
+ | [ 0.000000] | ||
+ | [ 0.000000] | ||
+ | [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 | ||
+ | [ 0.000000] pcpu-alloc: [0] 0 | ||
+ | [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 32480 | ||
+ | [ 0.000000] Kernel command line: console=ttyS0, | ||
+ | [ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes, linear) | ||
+ | [ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes, linear) | ||
+ | [ 0.000000] Writing ErrCtl register=00000000 | ||
+ | [ 0.000000] Readback ErrCtl register=00000000 | ||
+ | [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off | ||
+ | [ 0.000000] Memory: 114840K/ | ||
+ | [ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, | ||
+ | [ 0.000000] NR_IRQS: 64 | ||
+ | [ 0.000000] Found Interrupt controller: cpuintc (cpuintc) | ||
+ | [ 0.000000] ICU Memory: b8003000 | ||
+ | [ 0.000000] random: get_random_bytes called from start_kernel+0x398/ | ||
+ | [ 0.000000] CPU frequency from device tree: 700000000 | ||
+ | [ 0.000000] CPU Clock: 700 MHz | ||
+ | [ 0.000000] PLL control register: 0 | ||
+ | [ 0.000000] Found NS16550a: uart (uart@b8002000) | ||
+ | [ 0.000000] Using default baud rate: 38400 | ||
+ | b[ 0.000000] clocksource: | ||
+ | [ 0.000011] sched_clock: | ||
+ | [ 2.733736] printk: console [ttyS0] enabled | ||
+ | [ 2.733736] printk: console [ttyS0] enabled | ||
+ | [ 4.214661] printk: bootconsole [early0] disabled | ||
+ | [ 4.214661] printk: bootconsole [early0] disabled | ||
+ | [ 5.880845] Calibrating delay loop... 464.38 BogoMIPS (lpj=928768) | ||
+ | [ 5.918555] pid_max: default: 32768 minimum: 301 | ||
+ | [ 5.926097] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) | ||
+ | [ 5.937684] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) | ||
+ | [ 5.956103] clocksource: | ||
+ | [ 5.971604] futex hash table entries: 256 (order: -1, 3072 bytes, linear) | ||
+ | [ 5.982629] pinctrl core: initialized pinctrl subsystem | ||
+ | [ 5.991980] NET: Registered protocol family 16 | ||
+ | [ 5.999926] cpuidle: using governor ladder | ||
+ | [ 6.053678] workqueue: max_active 576 requested for napi_workq is out of range, clamping between 1 and 512 | ||
+ | [ 6.074570] clocksource: | ||
+ | [ 6.084551] NET: Registered protocol family 2 | ||
+ | [ 6.092686] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear) | ||
+ | [ 6.106015] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear) | ||
+ | [ 6.118152] TCP bind hash table entries: 1024 (order: 0, 4096 bytes, linear) | ||
+ | [ 6.129314] TCP: Hash tables configured (established 1024 bind 1024) | ||
+ | [ 6.139640] UDP hash table entries: 256 (order: 0, 4096 bytes, linear) | ||
+ | [ 6.150064] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear) | ||
+ | [ 6.161582] NET: Registered protocol family 1 | ||
+ | [ 6.623572] workingset: timestamp_bits=14 max_order=15 bucket_order=1 | ||
+ | [ 6.642136] squashfs: version 4.0 (2009/ | ||
+ | [ 6.651435] jffs2: version 2.2 (NAND) (SUMMARY) (ZLIB) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. | ||
+ | [ 6.701133] Probing RTL838X GPIOs | ||
+ | [ 6.706472] Unknown GPIO chip id (9313) | ||
+ | [ 6.763285] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled | ||
+ | [ 6.773669] serial8250: ttyS0 at MMIO 0x0 (irq = 0, base_baud = 12442400) is a 16550A | ||
+ | [ 6.787719] b8002100.uart: | ||
+ | [ 7.029159] brd: module loaded | ||
+ | [ 7.034875] Initializing rtl838x_nor_driver | ||
+ | [ 7.041589] SPI resource base is b8001200 | ||
+ | [ 7.047936] Address mode is 3 bytes | ||
+ | [ 7.053441] rtl838x_nor_init called | ||
+ | [ 7.060984] rtl838x-nor b8001200.spi: | ||
+ | [ 7.070668] 7 fixed-partitions partitions found on MTD device rtl838x_nor | ||
+ | [ 7.081412] Creating 7 MTD partitions on " | ||
+ | [ 7.089693] 0x000000000000-0x000000040000 : " | ||
+ | [ 7.099307] 0x000000040000-0x000000050000 : " | ||
+ | [ 7.109428] 0x000000050000-0x000000060000 : " | ||
+ | [ 7.119797] 0x000000060000-0x000000160000 : " | ||
+ | [ 7.129070] 0x000000160000-0x000000260000 : " | ||
+ | [ 7.138489] 0x000000260000-0x000000930000 : " | ||
+ | [ 7.168966] 0x000000930000-0x000001000000 : " | ||
+ | [ 7.179185] Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) | ||
+ | [ 7.196034] libphy: Fixed MDIO Bus: probed | ||
+ | [ 7.202776] Probing RTL838X switch device | ||
+ | [ 7.209210] Chip-Info: 0 | ||
+ | [ 7.213223] Chip version A | ||
+ | [ 7.217499] In rtl838x_mdio_probe | ||
+ | [ 7.222783] Found compatible MDIO node! | ||
+ | [ 7.228843] Deferring probe of mdio bus | ||
+ | [ 7.235606] Probing RTL838X eth device pdev: 87c6c200, dev: 87c6c210 | ||
+ | [ 7.267380] Found SoC ID: 9313: RTL9313, family 9310 | ||
+ | [ 7.275232] rtl8380_init_mac | ||
+ | [ 7.279842] rtl838x-eth bb00a300.ethernet (unnamed net_device) (uninitialized): | ||
+ | [ 7.296077] In rtl838x_set_mac_hw | ||
+ | [ 7.301315] Using MAC 0000d2270eff996a | ||
+ | [ 7.307244] Using MAC 0000d2270eff996a | ||
+ | [ 7.313159] rtl838x_mdio_init called | ||
+ | [ 7.319118] libphy: rtl839x-eth-mdio: | ||
+ | [ 7.706251] In rtl838x_validate | ||
+ | [ 7.711393] In rtl838x_validate | ||
+ | [ 7.716632] i2c /dev entries driver | ||
+ | [ 7.724338] NET: Registered protocol family 10 | ||
+ | [ 7.740036] Segment Routing with IPv6 | ||
+ | [ 7.746079] NET: Registered protocol family 17 | ||
+ | [ 7.753816] 8021q: 802.1Q VLAN Support v1.8 | ||
+ | [ 7.761510] Probing RTL838X switch device | ||
+ | [ 7.767996] Chip-Info: 0 | ||
+ | [ 7.772015] Chip version A | ||
+ | [ 7.776292] In rtl838x_mdio_probe | ||
+ | [ 7.781572] Found compatible MDIO node! | ||
+ | [ 7.891354] rtl838x-switch: | ||
+ | [ 7.927723] Freeing unused kernel memory: 8732K | ||
+ | [ 7.934917] This architecture does not have kernel memory protection. | ||
+ | [ 7.945087] Run /init as init process | ||
+ | [ 8.075879] init: Console is alive | ||
+ | [ 8.117882] kmodloader: loading kernel modules from / | ||
+ | [ 8.133249] kmodloader: done loading kernel modules from / | ||
+ | [ 8.159197] init: - preinit - | ||
+ | [ 8.475963] random: jshn: uninitialized urandom read (4 bytes read) | ||
+ | [ 8.573223] random: jshn: uninitialized urandom read (4 bytes read) | ||
+ | ls: / | ||
+ | [ 8.713165] random: jshn: uninitialized urandom read (4 bytes read) | ||
+ | Press the [f] key and hit [enter] to enter failsafe mode | ||
+ | Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level | ||
+ | |||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | Please press Enter to activate this console. | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | [ | ||
+ | |||
+ | |||
+ | |||
+ | BusyBox v1.31.1 () built-in shell (ash) | ||
+ | |||
+ | _______ | ||
+ | | ||
+ | | ||
+ | | ||
+ | |__| W I R E L E S S F R E E D O M | ||
+ | | ||
+ | | ||
+ | | ||
+ | === WARNING! ===================================== | ||
+ | There is no root password defined on this device! | ||
+ | Use the " | ||
+ | in order to prevent unauthorized SSH logins. | ||
+ | -------------------------------------------------- | ||
+ | root@OpenWrt:/# | ||
+ | system type : RTL9313 | ||
+ | machine | ||
+ | processor | ||
+ | cpu model : MIPS interAptiv (multi) V2.0 | ||
+ | BogoMIPS | ||
+ | wait instruction | ||
+ | microsecond timers | ||
+ | tlb_entries | ||
+ | extra interrupt vector | ||
+ | hardware watchpoint | ||
+ | isa : mips1 mips2 mips32r1 mips32r2 | ||
+ | ASEs implemented | ||
+ | Options implemented | ||
+ | shadow register sets : 1 | ||
+ | kscratch registers | ||
+ | package | ||
+ | core : 0 | ||
+ | VCED exceptions | ||
+ | VCEI exceptions | ||
+ | root@OpenWrt:/# | ||
+ | | ||
+ | 2: 0 MIPS | ||
+ | 3: 0 MIPS | ||
+ | 4: 0 MIPS | ||
+ | 5: 0 MIPS | ||
+ | 6: 0 MIPS | ||
+ | 7: 0 MIPS | ||
+ | ERR: 0 | ||
+ | |||
+ | </ |