That is correct. It now works smoothly on an Omega2+. Im looking to duplicate the console on the display upon boot up. Im following this instructions: https://docs.onion.io/omega2-docs/running-a-command-on-boot.html by appending the line sh > /dev/tty0 at the end of the rc.local file, but it seems not to work.
Anything I am doing wrong? (obviously Im not a software guy).
Posts made by Alfonso Blanco
-
RE: Omega Dash Display Part Number or Controller
-
RE: Omega Dash Display Part Number or Controller
Im flashing an Omega2 with OmegaDash fw. Is it supposed to work only if I do it with an Omega2+?
-
RE: Omega Dash as standalone computer
It would suffice if I could simply use the display to visualize the console and the keyboard to type commands in without needing any other device.
-
RE: Omega Dash Display Part Number or Controller
@Lazar-Demin I have just burnt the latest FW version of OmegaDash into my Omega2, but the system will keep rebooting in a loop.
This is what I get in the console:
Starting kernel ...
[ 0.000000] Linux version 4.14.81 (root@d7d1d9c1ebc3) (gcc version 7.3.0 (OpenWrt GCC 7.3.0 r0+7490-bddedc4e25)) #0 Fri Jun 4 20:35:27 2021
[ 0.000000] Board has DDR2
[ 0.000000] Analog PMU set to hw control
[ 0.000000] Digital PMU set to hw control
[ 0.000000] SoC Type: MediaTek MT7688 ver:1 eco:2
[ 0.000000] bootconsole [early0] enabled
[ 0.000000] CPU0 revision is: 00019655 (MIPS 24KEc)
[ 0.000000] MIPS: machine is Onion Omega2 Dash
[ 0.000000] Determined physical RAM map:
[ 0.000000] memory: 08000000 @ 00000000 (usable)
[ 0.000000] Initrd not found or empty - disabling initrd
[ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[ 0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000000000000-0x0000000007ffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x0000000007ffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff]
[ 0.000000] random: get_random_bytes called from start_kernel+0x8c/0x474 with crng_init=0
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 32512
[ 0.000000] Kernel command line: console=ttyS0,115200 rootfstype=squashfs,jffs2
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Writing ErrCtl register=0005dd1e
[ 0.000000] Readback ErrCtl register=0005dd1e
[ 0.000000] Memory: 124580K/131072K available (3712K kernel code, 207K rwdata, 924K rodata, 204K init, 205K bss, 6492K reserved, 0K cma-reserved)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS: 256
[ 0.000000] intc: using register map from devicetree
[ 0.000000] CPU Clock: 580MHz
[ 0.000000] timer_probe: no matching timers found
[ 0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 6590553264 ns
[ 0.000012] sched_clock: 32 bits at 290MHz, resolution 3ns, wraps every 7405115902ns
[ 0.007672] Console: colour dummy device 80x25
[ 0.011928] Calibrating delay loop... 385.84 BogoMIPS (lpj=1929216)
[ 0.073506] pid_max: default: 32768 minimum: 301
[ 0.078195] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.084540] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.098616] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.108109] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 0.114057] pinctrl core: initialized pinctrl subsystem
[ 0.119632] NET: Registered protocol family 16
[ 0.156234] mt7621_gpio 10000600.gpio: registering 32 gpios
[ 0.161882] mt7621_gpio 10000600.gpio: registering 32 gpios
[ 0.167403] mt7621_gpio 10000600.gpio: registering 32 gpios
[ 0.174027] i2c-mt7621 10000900.i2c: clock 100 kHz
[ 0.183568] clocksource: Switched to clocksource MIPS
[ 0.195446] NET: Registered protocol family 2
[ 0.200573] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.207320] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.213415] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.219697] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 0.225339] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 0.231625] NET: Registered protocol family 1
[ 0.250117] Crashlog allocated RAM at address 0x3f00000
[ 0.256725] workingset: timestamp_bits=30 max_order=15 bucket_order=0
[ 0.269002] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.274621] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.294598] io scheduler noop registered
[ 0.298329] io scheduler deadline registered (default)
[ 0.304487] Serial: 8250/16550 driver, 3 ports, IRQ sharing disabled
[ 0.311789] console [ttyS0] disabled
[ 0.315286] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 28, base_baud = 2500000) is a 16550A
[ 0.324002] console [ttyS0] enabled
[ 0.324002] console [ttyS0] enabled
[ 0.331002] bootconsole [early0] disabled
[ 0.331002] bootconsole [early0] disabled
[ 0.339814] 10000d00.uart1: ttyS1 at MMIO 0x10000d00 (irq = 29, base_baud = 2500000) is a 16550A
[ 0.349460] 10000e00.uart2: ttyS2 at MMIO 0x10000e00 (irq = 30, base_baud = 2500000) is a 16550A
[ 0.358998] cacheinfo: Failed to find cpu0 device node
[ 0.364253] cacheinfo: Unable to detect cache hierarchy for CPU 0
[ 0.371214] spi-mt7621 10000b00.spi: sys_freq: 193333333
[ 0.391265] m25p80 spi0.0: w25q128 (16384 Kbytes)
[ 0.396132] 5 fixed-partitions partitions found on MTD device spi0.0
[ 0.402574] Creating 5 MTD partitions on "spi0.0":
[ 0.407453] 0x000000000000-0x000000030000 : "u-boot"
[ 0.413431] 0x000000030000-0x000000040000 : "u-boot-env"
[ 0.419712] 0x000000040000-0x000000050000 : "factory"
[ 0.425738] 0x000000050000-0x000001f80000 : "firmware"
[ 0.430958] mtd: partition "firmware" extends beyond the end of device "spi0.0" -- size truncated to 0xfb0000
[ 0.477520] 2 uimage-fw partitions found on MTD device firmware
[ 0.483549] 0x000000050000-0x0000001db5cc : "kernel"
[ 0.489517] 0x0000001db5cc-0x000001000000 : "rootfs"
[ 0.495392] mtd: device 5 (rootfs) set to be root filesystem
[ 0.502601] 1 squashfs-split partitions found on MTD device rootfs
[ 0.508947] 0x000000a70000-0x000001000000 : "rootfs_data"
[ 0.515347] 0x000001f80000-0x000002000000 : "user"
[ 0.520210] mtd: partition "user" is out of reach -- disabled
[ 0.527939] libphy: Fixed MDIO Bus: probed
[ 0.543911] rt3050-esw 10110000.esw: link changed 0x00
[ 0.550780] mtk_soc_eth 10100000.ethernet eth0: mediatek frame engine at 0xb0100000, irq 5
[ 0.559465] i2c /dev entries driver
[ 0.564913] NET: Registered protocol family 10
[ 0.573851] Segment Routing with IPv6
[ 0.577686] NET: Registered protocol family 17
[ 0.582237] 8021q: 802.1Q VLAN Support v1.8
[ 0.594510] VFS: Mounted root (squashfs filesystem) readonly on device 31:5.
[ 0.602758] Freeing unused kernel memory: 204K
[ 0.607311] This architecture does not have kernel memory protection.
[ 1.117643] CPU 0 Unable to handle kernel paging request at virtual address 00000514, epc == 80389c54, ra == 8038b70c
[ 1.128445] Oops[#1]:
[ 1.130754] CPU: 0 PID: 1 Comm: init Not tainted 4.14.81 #0
[ 1.136404] task: 87c20000 task.stack: 87c24000
[ 1.140994] $ 0 : 00000000 fffffff8 00000000 0000004c
[ 1.146301] $ 4 : 00000510 87c25cb0 87c25cb4 87c25cec
[ 1.151606] $ 8 : 0000050c 80398acc ffffffff 6474e552
[ 1.156910] $12 : ffffffff 00000002 00000001 000000f8
[ 1.162213] $16 : 00000001 87c25cec 00000000 00000510
[ 1.167518] $20 : 00047d10 00000514 fffffffe 00000001
[ 1.172822] $24 : 00000000 77fc8a3c
[ 1.178127] $28 : 87c24000 87c25ca0 8048d060 8038b70c
[ 1.183433] Hi : 000000af
[ 1.186349] Lo : 000192ac
[ 1.189285] epc : 80389c54 radix_tree_load_root+0x0/0x48
[ 1.194851] ra : 8038b70c __radix_tree_lookup+0x4c/0xec
[ 1.200407] Status: 1100a403 KERNEL EXL IE
[ 1.204658] Cause : 00800008 (ExcCode 02)
[ 1.208718] BadVA : 00000514
[ 1.211635] PrId : 00019655 (MIPS 24KEc)
[ 1.215694] Modules linked in:
[ 1.218796] Process init (pid: 1, threadinfo=87c24000, task=87c20000, tls=00000000)
[ 1.226551] Stack : 00000000 804a0000 87c25cb4 87824884 878275f0 87827700 00000001 00047d10
[ 1.235039] 00000510 0000050c 804a50c8 00047d10 804a0000 8038b7c0 87c25cd8 87c25cd8
[ 1.243523] 87c25ce0 87c25ce0 81022a80 00000fff 00000001 80086c9c 87824888 87824884
[ 1.252007] 804a50c8 00000074 87dc9180 00000000 00000000 80087e24 0000001c 80094ba4
[ 1.260491] 00000000 878276d4 87dc9180 77fc8000 77fc8000 87dc9180 00000003 87cd8038
[ 1.268975] ...
[ 1.271457] Call Trace:
[ 1.273940] [<80389c54>] radix_tree_load_root+0x0/0x48
[ 1.279154] [<8038b70c>] __radix_tree_lookup+0x4c/0xec
[ 1.284367] [<8038b7c0>] radix_tree_lookup_slot+0x14/0x2c
[ 1.289865] [<80086c9c>] find_get_entry+0x2c/0x13c
[ 1.294730] [<80087e24>] pagecache_get_page+0x58/0x340
[ 1.299949] [<800c07b4>] lookup_swap_cache+0x50/0x114
[ 1.305075] [<800c0f08>] swap_readahead_detect+0x98/0x244
[ 1.310558] [<800b0d90>] do_swap_page+0x58/0x4d0
[ 1.315243] [<800b1ef0>] handle_mm_fault+0x9c0/0xa80
[ 1.320290] [<80015158>] __do_page_fault+0x288/0x4c4
[ 1.325335] [<8001ba6c>] tlb_do_page_fault_0+0x10c/0x114
[ 1.330718] Code: 8c820000 03e00008 00a21024 <8c820004> 24030001 30440003 1483000b aca20000 2403fffe
[ 1.340628]
[ 1.342159] ---[ end trace ebc0363d70f31b57 ]---
[ 1.348288] Kernel panic - not syncing: Fatal exception
[ 1.354679] Rebooting in 1 seconds..Any hint why?
-
Omega Dash as standalone computer
Hello,
I would find it great if Omega Dash could be used as an independent mini-computer (that is, without the need for another computer).Dash already comes with a display, but you still need a second computer to operate it. If only a USB keyboard could be "plugged-and-played", that would be sufficient. Is this possible anyhow?
Thanks in advance.
-
RE: Omega Dash Display Part Number or Controller
Thanks a lot!
Just one more thing: is it possible to burn OmegaDash's fw into an Omega2? I assume OmegaDash's fw already contains the interface to the display controller. It would be great to have it also in Omega2 without needing compilation. -
Omega Dash Display Part Number or Controller
Hello,
Im planning to use Omega Dash for one of my projects, but the display is not suitable for my purpose.
Does anyone know what controller is that display using?
Thanks in advance. -
IBIS models
Hello,
Could you provide the IBIS models for the USBs and Ethernet interfaces of Omega2? We are building our own shield and need to make sure the signal integrity is correct.
Thanks a lot. -
Send only address through I2C using Python
Hello,
Whereas the I2C Python functions have worked fine so far, I've come across a sensor that, in order to start the measurement, needs to receive a I2C frame with no data (just containing the slave address).
Does such a function exist in the OmegaExpansion package?
If not, is there a way to create it?
Thanks in advance,
Alfonso -
RE: libili9225 - Controlling a ILI9225 SPI display with your Omega2
Hello Maximilian,
Awesome! This is super useful.
Im trying do to kind of the same but for a ILI9341. It's essentially the same, but changing the commands codes.
What I've been trying to overcome (without success) is the malfunctioning of the SPIs MSB. I have had a peek at your code and it's mostly similar to mine. How did you overcome this issue?
-
RE: My Omega 2/2+ dock\new
@Valerio-Backslashnew Perfect reply. Those are exactly the same issues Im coming across.
-
RE: My Omega 2/2+ dock\new
Great work!
Just a comment, if I may. From what I know with Omega2 and Ethernet, the ETH_PWR signal should actually be disconnected (central taps of the magnetics just grounded through the 1u capacitor). Have you tested it as on the schematics? Did it work? -
RE: Help getting Ethernet configuration correct [resolved]
@ccs-hello Thanks for the replies, but sorry to insist. This is the Ethernet Expansion Dock schematic:
As you can see, TX+ and TX- are connected to the pair 3-6 on the cable. Rx+ and Rx- are connected to 1-2. This is what I dont get. Shouldn't it be the other way around? -
RE: Help getting Ethernet configuration correct [resolved]
@Jeff-Seese Not on the Ethernet shield from Onion: they connect omega2 pins Tx+ and Tx- to eth cable pins 3 and 6 and Rx+ and Rx- to 1 and 2.
-
RE: Help getting Ethernet configuration correct [resolved]
@ccs-hello Do you connect then directly Tx+ and Tx- to the pins with the same name on your Omega2 (same for Rx+ or Rx-) or you rather use a cross-over?
According to the Ethernet expansion dock schematic, it should be crossed-over, but my logic dictates me it should be straight (that is: TX+- on Omega2 to wires 1 and 2 on the eth cable, RX+- to wires 3 and 6 on the eth cable).I have made my own Ethernet expansion board on which I have placed an Ethernet switch, so that I can have more than 1 Phy. I have connected it straight there and it works perfectly. I must also mention that the switch is Auto-MDIX capable. Now I want to design a smaller version of my Ethernet expansion board (without the switch) and I really have doubt about how to connect the pins.
-
SPI time between transfers
Hello,
Ive somehow managed to send commands/data to my display through the SPI port (32776.1). Ive set the clock speed to 8 MHz and this is exactly what I get on my oscilloscope. Also the display receives the information and acts accordingly.
Problem: the pixel drawing on the display is extremely slow. To draw all the pixels on it, it takes ~1 minute. The time between 2 consecutive transfers seems to be fixed and ~240us. Clearly this is the problem. Does anyone have any idea about how to minimize this delay?
Note: my code is written in C and the delay corresponds to consecutive instructions (one line and the following). Im using an Omega2 with the latest firmware version (0.1.10 b160).
Thanks beforehand for the help.
Alfonso -
kmod-spi-gpio-custom package not installable
Hello,
As it seems the built-in SPI port on the Omega2 has so many deficiencies, it becomes unusable. The remaining option is a software SPI. Onion provides some libraries which should ease the task. Im using those and get to an executable file by means of cross compilation. However, when running, it, the package kmod-spi-gpio-custom is needed. When I try to install it through opkg, it gives me a dependency error. Apparently the package has been compiled for kernel 4.4.74, whereas the kernel included in the latest omega2 fw release is 4.4.46. Any idea on how to work around this?
Otherwise said: can anyone (including @administrators ) provide a working spi driver c code on Omega2? (I cant).
Thanks beforehand for the help,
Alfonso -
RE: Hard SPI with C code in Omega2
@luz Thats the thing. Even if I use different GPIOs, I never can create a different bus/deviceID interface. I always get an error upon spi registration: spi_gpio_custom fails. I have that package properly installed, though.
-
Hard SPI with C code in Omega2
Hello!
Is it possible to use the provided hard SPI (pins 6 to 9) in Omega2 with the C libraries? Or do I need to use other GPIOs?
So far, Ive not been able. I always get "Segmentation error". My shield connects the SPI lines to those 6 to 9 GPIOs. Otherwise I would have also tested it with other GPIOs.Anyone can shed a bit of light on the issue?
Thanks and Regards,
Alfonso -
RE: No connectivity on ethernet or port or Wi-Fi
Just an update: I can download .bin files by means of wget. That proves there is actually some sort of internet connection, but still ping or oupgrade dont work.