Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
toh:olimex:rt5350f-olinuxino-evb [2016/02/26 01:30] – Page created lorenzotoh:olimex:rt5350f-olinuxino-evb [2019/04/10 16:16] – Move image to olimex namespace cinthetyk
Line 1: Line 1:
 +====== Olimex RT5350F-OLinuXino (EVB) ======
  
 +{{section>meta:infobox:432_warning#infobox_for_dataentries&noheader&nofooter&noeditbutton}}
 +
 +{{:media:rt5350f-olinuxino-evb-1.jpg?0x300|}}
 +{{:media:olimex:rt5350f-olinuxino-1.jpg?0x300|}}
 +
 +===== Overview =====
 +This device is an open source embedded MIPS Linux board built around a Ralink RT5350F SoC.
 +
 +The board is available in two versions:
 +  * RT5350F-OLinuXino: bare module only
 +  * RT5350F-OLinuXino-EVB: the module above, fitted on evaluation board with Ethernet and USB ports, GPIO breakout, a button and two relays
 +
 +There are plenty of goodies for hackers and makers, such as 24 available GPIOs, SPI, I2C, I2S, PCM, UART, JTAG and USB 2.0 HOST/Device.
 +
 +Being this design open source both in hardware and software, you can find the complete schematics here: [[https://github.com/OLIMEX/OLINUXINO/tree/master/HARDWARE/RT5350F]]
 +
 +Example uses of this design:
 +  * IoT devices: you can turn the board into an IoT node, i.e. disabling all routing and firewalling functions and using the Linux environment to run processes controlling sensors and actuating outputs
 +  * Design your own board around the RT5350F chip: since most of the difficult aspects are taken care of (RF design, VREG et al) you can focus on picking interface components (connectors, sensors, switches, whatever)
 +  * A cheap, reliable router to use in non mission critical industrial environments. The board has mounting holes and can be adapted to fit in a DIN rail enclosure, and you can for example use the relays to report network availability to a PLC, just like the bigger and more expensive Siemens/Hirschmann devices do.
 +
 +
 +===== Supported Versions =====
 +---- datatable ----
 +cols    : Brand, Model, Versions, Supported Current Rel, OEM device homepage URL_url, OWrt Forum Topic URL_url, Device Techdata_pageid
 +headers : Brand, Model, Version, Current Release, OEM Info, Forum Topic, Technical Data
 +align   : c,c,c,c,c,c,c
 +filter  : Model=RT5350F-OLinuXino-EVB
 +----
 +
 +
 +===== Hardware Highlights =====
 +---- datatable ----
 +cols    : Model, Versions, CPU, CPU MHz, Flash MB_mbflashs, RAM MB_mbram, WLAN Hardware, WLAN 2.4GHz, WLAN 5.0GHz, Ethernet 100M ports_, Ethernet Gbit ports_, Modem, USB ports_
 +header  : Model, Version,SoC,CPU MHz,Flash MB,RAM MB,WLAN Hardware,WLAN2.4,WLAN5.0,100M ports,Gbit ports,Modem,USB
 +align   : c,c,c,c,c,c,c,c,c,c,c,c,c
 +filter  : Model=RT5350F-OLinuXino-EVB
 +----
 +
 +
 +===== Installation =====
 +---- datatable ----
 +cols    : Model, Versions, Supported Current Rel, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url
 +headers : Model, Version, Current Release, Firmware OpenWrt Install, Firmware OpenWrt Upgrade, Firmware OEM Stock
 +align   : c,c,c
 +filter  : Model=RT5350F-OLinuXino-EVB
 +----
 +
 +-> [[docs:guide-user:installation:generic.flashing|Install OpenWrt (generic explanation)]]
 +
 +
 +As of February 2016 these boards still ship with the RC3 version of OpenWrt. There's no way to upgrade to the stable release via the LuCI interface due to a "supported format" error, so you'll have to perform the uBoot flashing using a TFTP server as described here: [[https://www.olimex.com/wiki/RT5350F-OLinuXino#Upload_prebuilt_OpenWRT_using_uboot]] (http://archive.is/Z7OmR).
 +
 +
 +   * Official builds: [[https://github.com/OLIMEX/OLINUXINO/tree/master/SOFTWARE/RT5350F/Prebuilt%20images]]
 +   * OpenWrt builds: [[https://downloads.openwrt.org/chaos_calmer/15.05/ramips/rt305x/]]
 +
 +Please notice that even via TFTP you need to flash the ''squashfs-sysupgrade.bin'' image instead of the ''initramfs-uImage.bin'', otherwise it won't find the root filesystem.
 +
 +
 +===== Hardware =====
 +
 +^ Architecture      | MIPS24KEc                                  |
 +^ System-On-Chip    | Ralink RT5350F                             |
 +^ CPU Speed         | 360 MHz                                    |
 +^ Flash size        | 8MiB SPI NAND                              |
 +^ RAM               | 32MiB Hynix SDRAM                          |
 +^ Ethernet switch   | Yes, 5x10/100 on-SoC                       |
 +^ Wireless          | 2.4 GHz 802.11b/g/                       |
 +^ USB               | No                                         |
 +^ Serial            | yes, 57600 8N1, no hardware flow control   |
 +^ Bootloader        | uBoot                                      |
 +
 +Measured power draw at 5VDC is ~130mA with wireless off and ~200mA with wireless enabled. Closing a relay adds ~50mA.
 +
 +Please notice that Olimex has taken care of the overheating problems that affect RT5350F chips by using an external 1.2V regulator instead of the integrated one, so the chip runs cool enough.
 +
 +==== Pictures ====
 +
 +
 +==== UEXT ====
 +
 +{{:media:olimex_uext.png?300|}}
 +
 +===== GPIOs =====
 +
 +Figure out their names this way:
 +
 +<code>
 +root@OpenWrt:/# cat /sys/kernel/debug/gpio 
 +GPIOs 0-21, platform/10000600.gpio, 10000600.gpio:
 + gpio-0   (button              ) in  hi    
 + gpio-12  (gpio12              ) out lo    
 + gpio-14  (gpio14              ) out lo    
 +
 +GPIOs 22-27, platform/10000660.gpio, 10000660.gpio:
 +</code>
 +
 +Button is active low (always pulled up), but the driver takes care of this and presents us with the correct state anyway, so an example like this works fine (triggers the relay on button press):
 +
 +<code>
 + while true; do cat /sys/class/gpio/button/value > /sys/class/gpio/gpio12/value ; done
 +</code>
 +
 +===== Bootlog =====
 +<WRAP bootlog>
 +<nowiki>U-Boot 1.1.3 (Apr 20 2015 - 13:25:55)
 +
 +Board: RT5350F-OLinuXino DRAM:  32 MB
 +relocate_code Pointer at: 81fb4000
 +******************************
 +Software System Reset Occurred
 +******************************
 +spi_wait_nsec: 42 
 +spi device id: 1c 30 17 1c 30 (30171c30)
 +find flash: EN25Q64
 +raspi_read: from:30000 len:1000 
 +.*** Warning - bad CRC, using default environment
 +
 +============================================================= 
 +RT5350F-OLinuXino UBoot Version: 4.0.0.0
 +--------------------------------------------------------------
 +ASIC 5350_MP (Port5<->None)
 +DRAM_CONF_FROM: Boot-Strapping 
 +DRAM_TYPE: SDRAM 
 +DRAM_SIZE: 256 Mbits
 +DRAM_WIDTH: 16 bits
 +DRAM_TOTAL_WIDTH: 16 bits
 +TOTAL_MEMORY_SIZE: 32 MBytes
 +Flash component: SPI Flash
 +Date:Apr 20 2015  Time:13:25:55
 +============================================ 
 +icache: sets:256, ways:4, linesz:32 ,total:32768
 +dcache: sets:128, ways:4, linesz:32 ,total:16384 
 +
 + ##### The CPU freq = 360 MHZ #### 
 + estimate memory size =32 Mbytes
 +
 +Please choose the operation: 
 +   1: Load system code to SDRAM via TFTP. 
 +   2: Load system code then write to Flash via TFTP. 
 +   3: Boot system code via Flash (default).
 +   4: Entr boot command line interface.
 +   7: Load Boot Loader code then write to Flash via Serial. 
 +   9: Load Boot Loader code then write to Flash via TFTP. 
 + 
 +   
 +3: System Boot system code via Flash.
 +## Booting image at bc050000 ...
 +raspi_read: from:50000 len:40 
 +.   Image Name:   MIPS OpenWrt Linux-3.18.20
 +   Created:      2015-09-04  17:37:26 UTC
 +   Image Type:   MIPS Linux Kernel Image (lzma compressed)
 +   Data Size:    3154511 Bytes =  3 MB
 +   Load Address: 80000000
 +   Entry Point:  80000000
 +raspi_read: from:50040 len:30224f 
 +.................................................   Verifying Checksum ... OK
 +   Uncompressing Kernel Image ... OK
 +No initrd
 +## Transferring control to Linux (at address 80000000) ...
 +## Giving linux memsize in MB, 32
 +
 +Starting kernel ...
 +
 +[    0.000000] Linux version 3.18.20 (buildbot@builder1) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r46450) ) #2 Fri Sep 4 19:34:39 CEST 2015
 +[    0.000000] SoC Type: Ralink RT5350 id:1 rev:3
 +[    0.000000] bootconsole [early0] enabled
 +[    0.000000] CPU0 revision is: 0001964c (MIPS 24KEc)
 +[    0.000000] MIPS: machine is RT5350F-OLINUXINO
 +[    0.000000] Determined physical RAM map:
 +[    0.000000]  memory: 02000000 @ 00000000 (usable)
 +[    0.000000] Initrd not found or empty - disabling initrd
 +[    0.000000] Zone ranges:
 +[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
 +[    0.000000] Movable zone start for each node
 +[    0.000000] Early memory node ranges
 +[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
 +[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
 +[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
 +[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
 +[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
 +[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
 +[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
 +[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
 +[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
 +[    0.000000] Writing ErrCtl register=00043020
 +[    0.000000] Readback ErrCtl register=00043020
 +[    0.000000] Memory: 27028K/32768K available (2543K kernel code, 120K rwdata, 312K rodata, 2200K init, 186K bss, 5740K reserved)
 +[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
 +[    0.000000] NR_IRQS:256
 +[    0.000000] CPU Clock: 360MHz
 +[    0.000000] systick: running - mult: 214748, shift: 32
 +[    0.010000] Calibrating delay loop... 239.61 BogoMIPS (lpj=1198080)
 +[    0.080000] pid_max: default: 32768 minimum: 301
 +[    0.090000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.100000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.110000] pinctrl core: initialized pinctrl subsystem
 +[    0.120000] NET: Registered protocol family 16
 +[    0.130000] rt2880-pinmux pinctrl: invalid group "rgmii" for function "gpio"
 +[    0.140000] rt2880-pinmux pinctrl: invalid group "mdio" for function "gpio"
 +[    0.150000] rt2880_gpio 10000600.gpio: registering 22 gpios
 +[    0.160000] rt2880_gpio 10000600.gpio: registering 22 irq handlers
 +[    0.170000] rt2880_gpio 10000660.gpio: registering 6 gpios
 +[    0.180000] rt2880_gpio 10000660.gpio: registering 6 irq handlers
 +[    0.190000] Switched to clocksource systick
 +[    0.200000] NET: Registered protocol family 2
 +[    0.210000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.220000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
 +[    0.230000] TCP: Hash tables configured (established 1024 bind 1024)
 +[    0.250000] TCP: reno registered
 +[    0.250000] UDP hash table entries: 256 (order: 0, 4096 bytes)
 +[    0.260000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
 +[    0.280000] NET: Registered protocol family 1
 +[    4.930000] rt-timer 10000100.timer: maximum frequency is 7324Hz
 +[    4.950000] futex hash table entries: 256 (order: -1, 3072 bytes)
 +[    4.970000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
 +[    4.980000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
 +[    5.010000] msgmni has been set to 52
 +[    5.010000] io scheduler noop registered
 +[    5.020000] io scheduler deadline registered (default)
 +[    5.030000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[147]
 +[    5.050000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[161]
 +[    5.060000] gpio-export gpio_export: 3 gpio(s) exported
 +[    5.070000] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
 +[    5.090000] console [ttyS0] disabled
 +[    5.100000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a 16550A
 +[    5.110000] console [ttyS0] enabled
 +[    5.110000] console [ttyS0] enabled
 +[    5.130000] bootconsole [early0] disabled
 +[    5.130000] bootconsole [early0] disabled
 +[    5.190000] m25p80 spi32766.0: found en25q64, expected s25fl064k
 +[    5.200000] m25p80 spi32766.0: en25q64 (8192 Kbytes)
 +[    5.210000] 4 ofpart partitions found on MTD device spi32766.0
 +[    5.230000] Creating 4 MTD partitions on "spi32766.0":
 +[    5.240000] 0x000000000000-0x000000030000 : "u-boot"
 +[    5.250000] 0x000000030000-0x000000040000 : "u-boot-env"
 +[    5.260000] 0x000000040000-0x000000050000 : "factory"
 +[    5.270000] 0x000000050000-0x000000400000 : "firmware"
 +[    5.330000] ralink_soc_eth 10100000.ethernet: generated random MAC address d6:24:4b:b7:38:b1
 +[    5.350000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5
 +[    5.370000] rt2880_wdt 10000120.watchdog: Initialized
 +[    5.380000] TCP: cubic registered
 +[    5.380000] NET: Registered protocol family 17
 +[    5.390000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
 +[    5.420000] Bridge firewalling registered
 +[    5.430000] 8021q: 802.1Q VLAN Support v1.8
 +[    5.460000] Freeing unused kernel memory: 2200K (802ea000 - 80510000)
 +[    5.500000] init: Console is alive
 +[    5.510000] init: - watchdog -
 +[    5.560000] usbcore: registered new interface driver usbfs
 +[    5.580000] usbcore: registered new interface driver hub
 +[    5.590000] usbcore: registered new device driver usb
 +[    6.520000] init: - preinit -
 +[    6.700000] rt305x-esw 10110000.esw: link changed 0x00
 +[    6.790000] random: procd urandom read with 10 bits of entropy available
 +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
 +[    8.280000] rt305x-esw 10110000.esw: link changed 0x10
 +[   10.150000] procd: - early -
 +[   10.150000] procd: - watchdog -
 +[   10.800000] procd: - ubus -
 +[   11.810000] procd: - init -
 +Please press Enter to activate this console.
 +[   13.060000] NET: Registered protocol family 10
 +[   13.080000] ip6_tables: (C) 2000-2006 Netfilter Core Team
 +[   13.120000] Loading modules backported from Linux version master-2015-03-09-0-g141f155
 +[   13.140000] Backport generated by backports.git backports-20150129-0-gdd4a670
 +[   13.160000] ip_tables: (C) 2000-2006 Netfilter Core Team
 +[   13.180000] nf_conntrack version 0.5.0 (456 buckets, 1824 max)
 +[   13.260000] xt_time: kernel timezone is -0000
 +[   13.300000] cfg80211: Calling CRDA to update world regulatory domain
 +[   13.330000] cfg80211: World regulatory domain updated:
 +[   13.340000] cfg80211:  DFS Master region: unset
 +[   13.350000] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
 +[   13.370000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
 +[   13.380000] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
 +[   13.400000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
 +[   13.410000] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
 +[   13.430000] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
 +[   13.450000] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
 +[   13.460000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
 +[   13.480000] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
 +[   13.590000] PPP generic driver version 2.4.2
 +[   13.600000] NET: Registered protocol family 24
 +[   13.670000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5350, rev 0500 detected
 +[   13.690000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 5350 detected
 +[   18.010000] rt305x-esw 10110000.esw: link changed 0x00
 +[   19.620000] rt305x-esw 10110000.esw: link changed 0x10
 +[   24.610000] device eth0.1 entered promiscuous mode
 +[   24.620000] device eth0 entered promiscuous mode
 +[   24.670000] br-lan: port 1(eth0.1) entered forwarding state
 +[   24.680000] br-lan: port 1(eth0.1) entered forwarding state
 +[   26.680000] br-lan: port 1(eth0.1) entered forwarding state
 +[   80.270000] random: nonblocking pool is initialized
 +
 +
 +
 +BusyBox v1.23.2 (2015-07-25 04:17:43 CEST) built-in shell (ash)
 +
 +  _______                     ________        __
 +       |.-----.-----.-----.|  |  |  |.----.|  |_
 +     ||  _  |  -__|     ||  |  |  ||   _||   _|
 + |_______||   __|_____|__|__||________||__|  |____|
 +          |__| W I R E L E S S   F R E E D O M
 + -----------------------------------------------------
 + CHAOS CALMER (15.05, r46767)
 + -----------------------------------------------------
 +  * 1 1/2 oz Gin            Shake with a glassful
 +  * 1/4 oz Triple Sec       of broken ice and pour
 +  * 3/4 oz Lime Juice       unstrained into a goblet.
 +  * 1 1/2 oz Orange Juice
 +  * 1 tsp. Grenadine Syrup
 + -----------------------------------------------------
 +root@OpenWrt:/#</nowiki>
 +</WRAP>\\
 +
 +===== Tags =====
 +[[meta:tags|How to add tags]]
 +{{tag>ramips rt5350 devboard FastEthernet 1NIC 1WNIC no_switch USB 802.11bgn InternalAntenna 32RAM 8Flash MIPS MIPS32 24Kc}}
  • Last modified: 2024/02/12 08:58
  • by 127.0.0.1