ROS image on Raspberry Pi 4?

Hello all,

I’ve just got my Raspberry Pi 4 in the mail and I would love to run the Ubiquity ROS image. Do any of y’all have an idea when your ROS image will support the Pi4, or any actions I can take to advance progress there?

Thanks!

We have a goal to support the Pi 4 but it is far too early to comment on a date as we have not even gotten our Pi 4 units yet.

I have my first PI4, it needs heat sinks and a fan so badly it is not funny. Other than that
I am in love with sbc’s once more, more power here than my laptop, woot, woot!!
There are no ROS images out, yet, but I am watching and hoping for one soon.:nerd_face:

I am still waiting on my Pi4s to arrive :frowning_face:

If someone has both an Pi3 and Pi4, and is willing to do some testing, it would be greatly appreciated, and help the image come out faster.

I’ve got my pi4 and a pi3. How can I help?

Me too.:grinning:
I did notice a problem that turned out to be : " As detailed by Tyler Ward, the Raspberry Pi 4 has a non-compliant USB-C charging port and doesn’t work with as many chargers as it should. Thanks to the open nature of Raspberry Pi (even the schematics are online!), Ward was able to discover that Raspberry Pi just didn’t design its USB-C port correctly. Two “CC” pins on a USB-C port are supposed to each get their own 5.1K ohms resistor, but Raspberry Pi came up with its own circuit design that allows them to share a single resistor. This is not a compliant design and breaks compatibility with some of the more powerful USB-C chargers out there." so some little things too look out for is a board revision with a spec-compliant charging port should be out sometime in the “next few months.”

If you would like to help out can you follow the instructions on Raspberry Pi image on Pi 3 A+?

But replace 20190215 with 20190620.

Basically you will boot into a Pi3, upgrade the kernel and firmware and then try to boot into a Pi4.
There are likely going to be issues with Wifi, but first we want to be able to boot :slight_smile:

Thanks

1 Like

Okay great! I may be able to get to that this weekend. I will report back if I can get anything working. :slight_smile:

I made the instructions a little bit easier. I pushed a new kernel and firmware to our testing apt repo, so you will not have to build it yourself.

On a Pi 3+, edit /etc/apt/sources.list.d/ubiquity-latest.list to have the following

deb https://packages.ubiquityrobotics.com/ubuntu/ubiquity xenial main

deb https://packages.ubiquityrobotics.com/ubuntu/ubiquity-testing xenial pi

Note how the pi component is now from ubiquity-testing.

Now you can run sudo apt update; sudo apt upgrade to update your packages.
Make sure that apt policy raspberrypi-kernel shows 1.20190620-1 as the installed version.

Now put your SD card into your Pi 4 and let me know what happens :slight_smile:

1 Like

we would like ros melodic on a RPI4 image, please.

thank you.

Okay! I did this last night. I wasn’t totally clear but it sounded like I didn’t need to do anything on the other page. I flashed a fresh instance of the latest image on https://downloads.ubiquityrobotics.com/pi.html, booted it on a Pi3B+ and got it on my wifi, replaced the contents of the apt sources file you mentioned with the two lines you shared, did apt update (which took 16 min!) and apt upgrade, and then confirmed that the apt policy shows that value as the installed version.

Then I shut down the Pi3B+, placed the SD card in the PI4, and powered on the Pi4. It did not appear on my network. I suppose I should hook it up to ethernet and see if its alive? I am getting micro HDMI adapters in the mail next week. I will try ethernet and see if I can get it online.

EDIT: Hey it boots and comes up on ethernet! Do you know how I can check out why wifi might not work? The command “ip a” shows only loopback and ethernet. No wifi.

I do see some things I can try on this page, but I’ll wait for your reply before trying stuff:

One thing I noticed is that my /boot/cmdline.txt is different from the one on that page. I can also compare my /boot directory to one on my normal pi4 sd card, but that is raspbian not ubuntu so I’m not sure if they should be the same anyway.

I also got this configuration to boot on my PI-4, congratulations! You rock.:grinning:
You may be the very first to have a usable image. (Note. the only thing not running is the WIFI.)

1 Like

Awesome! Yeah I suppose I can use this at work now if I just stick a wifi dongle in there until we get wifi working. I’m glad it worked for you too!

Awesome! Wifi not working was an expected outcome, it usually takes some extra tweaking to get wifi to work.

Can one of you post the entire output of dmesg? I suspect it is a missing firmware file, but I am not sure.

Thanks so much for your testing! My Pi’s will not be arriving until at least August 20th, so you are really helping speed up Pi 4 support.

Sure! Expand this thing below to get the dmesg output.

Expand this
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.19.50-v7l+ (dom@buildbot) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)) #895 SMP Thu Jun 20 16:03:42 BST 2019
[    0.000000] CPU: ARMv7 Processor [410fd083] revision 3 (ARMv7), cr=30c5383d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] OF: fdt: Machine model: Raspberry Pi 4 Model B Rev 1.1
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] cma: Reserved 64 MiB at 0x0000000034000000
[    0.000000] On node 0 totalpages: 491520
[    0.000000]   DMA zone: 1728 pages used for memmap
[    0.000000]   DMA zone: 0 pages reserved
[    0.000000]   DMA zone: 196608 pages, LIFO batch:63
[    0.000000]   HighMem zone: 294912 pages, LIFO batch:63
[    0.000000] random: get_random_bytes called from start_kernel+0xc0/0x4e8 with crng_init=0
[    0.000000] percpu: Embedded 17 pages/cpu s39488 r8192 d21952 u69632
[    0.000000] pcpu-alloc: s39488 r8192 d21952 u69632 alloc=17*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 489792
[    0.000000] Kernel command line: 8250.nr_uarts=1 cma=64M bcm2708_fb.fbwidth=0 bcm2708_fb.fbheight=0 bcm2708_fb.fbswap=1 smsc95xx.macaddr=DC:A6:32:02:8B:12 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 1866168K/1966080K available (8192K kernel code, 658K rwdata, 2344K rodata, 2048K init, 850K bss, 34376K reserved, 65536K cma-reserved, 1114112K highmem)
[    0.000000] Virtual kernel memory layout:
                   vector  : 0xffff0000 - 0xffff1000   (   4 kB)
                   fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
                   vmalloc : 0xf0800000 - 0xff800000   ( 240 MB)
                   lowmem  : 0xc0000000 - 0xf0000000   ( 768 MB)
                   pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
                   modules : 0xbf000000 - 0xbfe00000   (  14 MB)
                     .text : 0x(ptrval) - 0x(ptrval)   (10208 kB)
                     .init : 0x(ptrval) - 0x(ptrval)   (2048 kB)
                     .data : 0x(ptrval) - 0x(ptrval)   ( 659 kB)
                      .bss : 0x(ptrval) - 0x(ptrval)   ( 851 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 28034 entries in 83 pages
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] arch_timer: cp15 timer(s) running at 54.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xc743ce346, max_idle_ns: 440795203123 ns
[    0.000005] sched_clock: 56 bits at 54MHz, resolution 18ns, wraps every 4398046511102ns
[    0.000017] Switching to timer-based delay loop, resolution 18ns
[    0.000242] Console: colour dummy device 80x30
[    0.000265] console [tty1] enabled
[    0.000310] Calibrating delay loop (skipped), value calculated using timer frequency.. 108.00 BogoMIPS (lpj=540000)
[    0.000331] pid_max: default: 32768 minimum: 301
[    0.000592] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000610] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.001362] CPU: Testing write buffer coherency: ok
[    0.001766] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.002394] Setting up static identity map for 0x200000 - 0x20003c
[    0.002550] rcu: Hierarchical SRCU implementation.
[    0.003401] smp: Bringing up secondary CPUs ...
[    0.004286] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.005301] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[    0.006270] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[    0.006403] smp: Brought up 1 node, 4 CPUs
[    0.006416] SMP: Total of 4 processors activated (432.00 BogoMIPS).
[    0.006425] CPU: All CPU(s) started in HYP mode.
[    0.006434] CPU: Virtualization extensions available.
[    0.007197] devtmpfs: initialized
[    0.017346] VFP support v0.3: implementor 41 architecture 3 part 40 variant 8 rev 0
[    0.017559] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.017580] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.019642] pinctrl core: initialized pinctrl subsystem
[    0.020480] NET: Registered protocol family 16
[    0.022671] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.024007] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.024018] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.024209] Serial: AMBA PL011 UART driver
[    0.027387] bcm2835-mbox fe00b880.mailbox: mailbox enabled
[    0.063236] bcm2835-dma fe007000.dma: DMA legacy API manager at (ptrval), dmachans=0x1
[    0.065099] vgaarb: loaded
[    0.065467] SCSI subsystem initialized
[    0.065653] usbcore: registered new interface driver usbfs
[    0.065703] usbcore: registered new interface driver hub
[    0.065805] usbcore: registered new device driver usb
[    0.080367] raspberrypi-firmware soc:firmware: Attached to firmware from 2019-06-20 16:06, variant start_x
[    0.090097] raspberrypi-firmware soc:firmware: Firmware hash is 407b1da8fa3d1a7108cb1d250f5064a3420d2b7d
[    0.101647] clocksource: Switched to clocksource arch_sys_counter
[    0.178508] VFS: Disk quotas dquot_6.6.0
[    0.178582] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.178728] FS-Cache: Loaded
[    0.178906] CacheFiles: Loaded
[    0.188187] NET: Registered protocol family 2
[    0.188821] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes)
[    0.188846] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[    0.188912] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    0.188982] TCP: Hash tables configured (established 8192 bind 8192)
[    0.189103] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    0.189131] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    0.189431] NET: Registered protocol family 1
[    0.189947] RPC: Registered named UNIX socket transport module.
[    0.189956] RPC: Registered udp transport module.
[    0.189966] RPC: Registered tcp transport module.
[    0.189975] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.189989] PCI: CLS 0 bytes, default 64
[    0.192992] Initialise system trusted keyrings
[    0.193164] workingset: timestamp_bits=14 max_order=19 bucket_order=5
[    0.201884] FS-Cache: Netfs 'nfs' registered for caching
[    0.202365] NFS: Registering the id_resolver key type
[    0.202391] Key type id_resolver registered
[    0.202401] Key type id_legacy registered
[    0.202419] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.204633] Key type asymmetric registered
[    0.204644] Asymmetric key parser 'x509' registered
[    0.204753] bounce: pool size: 64 pages
[    0.204796] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 250)
[    0.204954] io scheduler noop registered
[    0.204965] io scheduler deadline registered (default)
[    0.205115] io scheduler cfq registered
[    0.205126] io scheduler mq-deadline registered (default)
[    0.205136] io scheduler kyber registered
[    0.208027] brcm-pcie fd500000.pcie: could not get clock
[    0.208084] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges:
[    0.208120] brcm-pcie fd500000.pcie:   MEM 0x600000000..0x603ffffff -> 0xf8000000
[    0.271687] brcm-pcie fd500000.pcie: link up, 5.0 Gbps x1 (!SSC)
[    0.271933] brcm-pcie fd500000.pcie: PCI host bridge to bus 0000:00
[    0.271948] pci_bus 0000:00: root bus resource [bus 00-01]
[    0.271965] pci_bus 0000:00: root bus resource [mem 0x600000000-0x603ffffff] (bus address [0xf8000000-0xfbffffff])
[    0.272006] pci 0000:00:00.0: [14e4:2711] type 01 class 0x060400
[    0.272141] pci 0000:00:00.0: PME# supported from D0 D3hot
[    0.274874] PCI: bus0: Fast back to back transfers disabled
[    0.274891] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    0.275046] pci 0000:01:00.0: [1106:3483] type 00 class 0x0c0330
[    0.275106] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00000fff 64bit]
[    0.275274] pci 0000:01:00.0: PME# supported from D0 D3cold
[    0.277903] PCI: bus1: Fast back to back transfers disabled
[    0.277919] pci_bus 0000:01: busn_res: [bus 01] end is updated to 01
[    0.277964] pci 0000:00:00.0: BAR 8: assigned [mem 0x600000000-0x6000fffff]
[    0.277982] pci 0000:01:00.0: BAR 0: assigned [mem 0x600000000-0x600000fff 64bit]
[    0.278012] pci 0000:00:00.0: PCI bridge to [bus 01]
[    0.278029] pci 0000:00:00.0:   bridge window [mem 0x600000000-0x6000fffff]
[    0.278084] pci 0000:00:00.0: enabling device (0140 -> 0142)
[    0.278107] pci 0000:01:00.0: enabling device (0140 -> 0142)
[    0.278472] bcm2708_fb soc:fb: Unable to determine number of FB's. Assuming 1
[    0.278503] bcm2708_fb soc:fb: FB found 1 display(s)
[    0.278812] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001
[    0.278844] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22)
[    0.278899] bcm2708_fb soc:fb: probe failed, err -22
[    0.278934] bcm2708_fb: probe of soc:fb failed with error -22
[    0.280412] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[    0.282486] iproc-rng200 fe104000.rng: hwrng registered
[    0.282697] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000 mem_size:0x40000000(1024 MiB)
[    0.283194] vc-sm: Videocore shared memory driver
[    0.283580] gpiomem-bcm2835 fe200000.gpiomem: Initialised: Registers at 0xfe200000
[    0.293534] brd: module loaded
[    0.303031] loop: module loaded
[    0.303749] Loading iSCSI transport class v2.0-870.
[    0.305384] libphy: Fixed MDIO Bus: probed
[    0.305807] bcmgenet fd580000.genet: failed to get enet clock
[    0.305822] bcmgenet fd580000.genet: GENET 5.0 EPHY: 0x0000
[    0.305838] bcmgenet fd580000.genet: failed to get enet-wol clock
[    0.305854] bcmgenet fd580000.genet: failed to get enet-eee clock
[    0.306101] unimac-mdio unimac-mdio.-19: DMA mask not set
[    0.331674] libphy: bcmgenet MII bus: probed
[    0.372178] unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus at 0x(ptrval)
[    0.373033] usbcore: registered new interface driver r8152
[    0.373092] usbcore: registered new interface driver lan78xx
[    0.373143] usbcore: registered new interface driver smsc95xx
[    0.373403] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    0.373433] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 1
[    0.374946] xhci_hcd 0000:01:00.0: hcc params 0x002841eb hci version 0x100 quirks 0x0000000000000890
[    0.375095] genirq: irq_chip Brcm_MSI did not update eff. affinity mask of irq 55
[    0.375707] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 4.19
[    0.375720] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.375732] usb usb1: Product: xHCI Host Controller
[    0.375743] usb usb1: Manufacturer: Linux 4.19.50-v7l+ xhci-hcd
[    0.375754] usb usb1: SerialNumber: 0000:01:00.0
[    0.376253] hub 1-0:1.0: USB hub found
[    0.376305] hub 1-0:1.0: 1 port detected
[    0.376735] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    0.376756] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2
[    0.376774] xhci_hcd 0000:01:00.0: Host supports USB 3.0  SuperSpeed
[    0.377110] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 4.19
[    0.377123] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.377135] usb usb2: Product: xHCI Host Controller
[    0.377146] usb usb2: Manufacturer: Linux 4.19.50-v7l+ xhci-hcd
[    0.377157] usb usb2: SerialNumber: 0000:01:00.0
[    0.377641] hub 2-0:1.0: USB hub found
[    0.377700] hub 2-0:1.0: 4 ports detected
[    0.378779] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    0.404356] dwc_otg fe980000.usb: base=(ptrval)
[    0.604650] Core Release: 2.80a
[    0.604663] Setting default values for core params
[    0.604690] Finished setting default values for core params
[    0.805006] Using Buffer DMA mode
[    0.805015] Periodic Transfer Interrupt Enhancement - disabled
[    0.805024] Multiprocessor Interrupt Enhancement - disabled
[    0.805035] OTG VER PARAM: 0, OTG VER FLAG: 0
[    0.805057] Dedicated Tx FIFOs mode
[    0.805304] WARN::dwc_otg_hcd_init:1045: FIQ DMA bounce buffers: virt = f0993000 dma = 0x00000000f4070000 len=9024
[    0.805327] FIQ FSM acceleration enabled for :
               Non-periodic Split Transactions
               Periodic Split Transactions
               High-Speed Isochronous Endpoints
               Interrupt/Control Split Transaction hack enabled
[    0.805339] dwc_otg: Microframe scheduler enabled
[    0.805396] WARN::hcd_init_fiq:457: FIQ on core 1
[    0.805413] WARN::hcd_init_fiq:458: FIQ ASM at c07add50 length 36
[    0.805429] WARN::hcd_init_fiq:497: MPHI regs_base at f0810200
[    0.805463] dwc_otg fe980000.usb: DWC OTG Controller
[    0.805493] dwc_otg fe980000.usb: new USB bus registered, assigned bus number 3
[    0.805524] dwc_otg fe980000.usb: irq 38, io mem 0x00000000
[    0.805575] Init: Port Power? op_state=1
[    0.805585] Init: Power Port (0)
[    0.805842] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 4.19
[    0.805856] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.805868] usb usb3: Product: DWC OTG Controller
[    0.805879] usb usb3: Manufacturer: Linux 4.19.50-v7l+ dwc_otg_hcd
[    0.805890] usb usb3: SerialNumber: fe980000.usb
[    0.806394] hub 3-0:1.0: USB hub found
[    0.806444] hub 3-0:1.0: 1 port detected
[    0.807012] dwc_otg: FIQ enabled
[    0.807021] dwc_otg: NAK holdoff enabled
[    0.807030] dwc_otg: FIQ split-transaction FSM enabled
[    0.807043] Module dwc_common_port init
[    0.807253] usbcore: registered new interface driver uas
[    0.807363] usbcore: registered new interface driver usb-storage
[    0.807530] mousedev: PS/2 mouse device common for all mice
[    0.808699] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer
[    0.808904] bcm2835-cpufreq: min=600000 max=1500000
[    0.809509] sdhci: Secure Digital Host Controller Interface driver
[    0.809518] sdhci: Copyright(c) Pierre Ossman
[    0.809904] mmc-bcm2835 fe300000.mmcnr: could not get clk, deferring probe
[    0.810285] sdhci-pltfm: SDHCI platform and OF driver helper
[    0.813509] ledtrig-cpu: registered to indicate activity on CPUs
[    0.813649] hidraw: raw HID events driver (C) Jiri Kosina
[    0.813781] usbcore: registered new interface driver usbhid
[    0.813789] usbhid: USB HID core driver
[    0.814663] vchiq: vchiq_init_state: slot_zero = (ptrval), is_master = 0
[    0.816240] [vc_sm_connected_init]: start
[    0.826185] [vc_sm_connected_init]: end - returning 0
[    0.827123] bcm2835_vc_sm_cma_probe: Videocore shared memory driver
[    0.827137] [vc_sm_connected_init]: start
[    0.827470] [vc_sm_connected_init]: installed successfully
[    0.827780] Initializing XFRM netlink socket
[    0.827807] NET: Registered protocol family 17
[    0.827899] Key type dns_resolver registered
[    0.828234] Registering SWP/SWPB emulation handler
[    0.828835] registered taskstats version 1
[    0.828851] Loading compiled-in X.509 certificates
[    0.836388] uart-pl011 fe201000.serial: cts_event_workaround enabled
[    0.836463] fe201000.serial: ttyAMA0 at MMIO 0xfe201000 (irq = 33, base_baud = 0) is a PL011 rev2
[    0.839821] fe215040.serial: ttyS0 at MMIO 0x0 (irq = 35, base_baud = 31250000) is a 16550
[    0.840251] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
[    0.840729] brcmstb_thermal fd5d2200.thermal: registered AVS TMON of-sensor driver
[    0.841334] mmc-bcm2835 fe300000.mmcnr: mmc_debug:0 mmc_debug2:0
[    0.841346] mmc-bcm2835 fe300000.mmcnr: DMA channel allocated
[    0.861689] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[    0.867382] sdhci-iproc fe340000.emmc2: Linked as a consumer to regulator.1
[    0.885680] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[    0.887303] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    0.888924] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    0.891828] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[    0.893444] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    0.899080] mmc0: SDHCI controller on fe340000.emmc2 [fe340000.emmc2] using ADMA
[    0.901359] of_cfs_init
[    0.901437] of_cfs_init: OK
[    0.902132] Waiting for root device /dev/mmcblk0p2...
[    0.947158] random: fast init done
[    1.002429] mmc0: new ultra high speed DDR50 SDHC card at address 5048
[    1.002499] mmc1: new high speed SDIO card at address 0001
[    1.003933] mmcblk0: mmc0:5048 SD16G 14.5 GiB
[    1.005486]  mmcblk0: p1 p2
[    1.024541] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem
[    1.024552] EXT4-fs (mmcblk0p2): write access will be enabled during recovery
[    1.052857] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, bcdDevice= 4.20
[    1.052896] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    1.052909] usb 1-1: Product: USB2.0 Hub
[    1.054426] hub 1-1:1.0: USB hub found
[    1.054689] hub 1-1:1.0: 4 ports detected
[    2.010421] EXT4-fs (mmcblk0p2): recovery complete
[    2.478120] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    2.478167] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[    2.478279] devtmpfs: mounted
[    2.484751] Freeing unused kernel memory: 2048K
[    2.484992] Run /sbin/init as init process
[    2.726277] systemd[1]: System time before build time, advancing clock.
[    2.828253] NET: Registered protocol family 10
[    2.829476] Segment Routing with IPv6
[    2.843447] random: systemd: uninitialized urandom read (16 bytes read)
[    2.845485] random: systemd: uninitialized urandom read (16 bytes read)
[    2.851719] systemd[1]: systemd 229 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN)
[    2.852352] systemd[1]: Detected architecture arm.
[    2.853660] systemd[1]: Set hostname to <rospi>.
[    2.897916] random: systemd-cryptse: uninitialized urandom read (16 bytes read)
[    3.324828] systemd[1]: Listening on udev Control Socket.
[    3.325415] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    3.325496] systemd[1]: Reached target User and Group Name Lookups.
[    3.325563] systemd[1]: Reached target Remote File Systems (Pre).
[    3.325628] systemd[1]: Reached target Remote File Systems.
[    3.325694] systemd[1]: Reached target Swap.
[    3.325901] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    3.467595] media: Linux media interface: v0.10
[    3.487047] videodev: Linux video capture interface: v2.00
[    3.522165] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[    3.533266] bcm2835_v4l2: module is from the staging directory, the quality is unknown, you have been warned.
[    3.869658] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    3.939314] systemd-journald[118]: Received request to flush runtime journal from PID 1
[    4.172779] i2c /dev entries driver
[    4.372063] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[    4.393695] bcm2835_audio soc:audio: card created with 8 channels
[    4.499098] input: pwr_button as /devices/platform/pwr_button/input/input0
[    4.499418] input: pifi_button as /devices/platform/pifi_button/input/input1
[    4.516228] argon-mem feb00000.hevc-decoder: argon-hevcmem initialised: Registers at 0xfeb00000 length 0x0000ffff
[    4.516401] argon-mem feb10000.argon-local-intc: argon-intcmem initialised: Registers at 0xfeb10000 length 0x00000fff
[    4.517829] argon-mem feb20000.h264-decoder: argon-h264mem initialised: Registers at 0xfeb20000 length 0x0000ffff
[    4.518014] argon-mem feb30000.vp9-decoder: argon-vp9mem initialised: Registers at 0xfeb30000 length 0x0000ffff
[    4.564523] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned.
[    4.572225] bcm2835-codec bcm2835-codec: Device registered as /dev/video10
[    4.572235] bcm2835-codec bcm2835-codec: Loaded V4L2 decode
[    4.577192] bcm2835-codec bcm2835-codec: Device registered as /dev/video11
[    4.577201] bcm2835-codec bcm2835-codec: Loaded V4L2 encode
[    4.584302] bcm2835-codec bcm2835-codec: Device registered as /dev/video12
[    4.584310] bcm2835-codec bcm2835-codec: Loaded V4L2 isp
[    4.719317] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    4.770516] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    4.795430] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    4.795439] cfg80211: failed to load regulatory.db
[    4.815714] brcmfmac: F1 signature read @0x18000000=0x15264345
[    4.819880] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[    4.820279] usbcore: registered new interface driver brcmfmac
[    4.820964] rtc-ds1307: probe of 1-006f failed with error -121
[    5.706900] random: crng init done
[    5.706910] random: 7 urandom warning(s) missed due to ratelimiting
[    5.942452] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
[    5.972166] bcmgenet fd580000.genet: configuring instance for external RGMII (no delay)
[    5.972589] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[    6.951688] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
[    7.031786] bcmgenet fd580000.genet eth0: Link is Down
[    7.473310] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[   10.151919] bcmgenet fd580000.genet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[   10.151962] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   28.235431] uart-pl011 fe201000.serial: no DMA platform data
[   31.018358] Bluetooth: Core ver 2.22
[   31.018405] NET: Registered protocol family 31
[   31.018410] Bluetooth: HCI device and connection manager initialized
[   31.018420] Bluetooth: HCI socket layer initialized
[   31.018428] Bluetooth: L2CAP socket layer initialized
[   31.018447] Bluetooth: SCO socket layer initialized
[   31.029718] Bluetooth: HCI UART driver ver 2.3
[   31.029725] Bluetooth: HCI UART protocol H4 registered
[   31.029765] Bluetooth: HCI UART protocol Three-wire (H5) registered
[   31.029894] Bluetooth: HCI UART protocol Broadcom registered
[   31.113614] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   31.113620] Bluetooth: BNEP filters: protocol multicast
[   31.113632] Bluetooth: BNEP socket layer initialized
1 Like

I tried that Raspberry Pi 4 Ubuntu 18.04.2 install guide but the Pi 4 never makes it pass initial boot up. It gets stuck after the SSH messages and gets stuck for several hours till indefinitely.

Regarding this Ubiquity Robotics image on Pi 4, are you guys saying I also need to purchase a Pi 3 B+, install the image on that board for initial boot up and move the SD card over to the Pi 4? like a transplant?? :thinking::thinking::thinking:

Ubiquity Robotics hasn’t tested that guide, nor do we endorse it in any way. If it works we would love to know, as it would be helpful in getting our image working.

The ‘transplant’ as you call it is a temporary measure to update the kernel while we sort out Pi 4 support. When we start to offer Pi 4 support, you will just be able to simply download the latest image and get it to work. Right now with the ‘transplant’ method everything seems to work except wifi, which I am still working on.

Can you verify my step by step instructions on how you got this to work? I’m still a bit cloudy on the process with the Pi 3 side of things and the updating two lines part.

Let me see if I get this straight:

  1. Download latest XZ image from: https://downloads.ubiquityrobotics.com/pi.html which is currently “06-19” at the moment
  2. Unzip the XZ image into IMG using 7zip
  3. Etch the IMG file onto formatted SD Card
  4. Insert SD Card into a Raspberry Pi 3 board to do initial boot up
  5. On Pi 3 modify a file using: sudo nano /etc/apt/sources.list.d/ubiquity-latest.list by appending the following:

deb …packages.ubiquityrobotics.com/ubuntu/ubiquity xenial main
deb …packages.ubiquityrobotics.com/ubuntu/ubiquity-testing xenial pi

sudo apt-get update
sudo apt-get upgrade
sudo apt-cache policy raspberrypi-kernel -> Verify that it says “1.20190620-1”
7) Insert SD card into Raspberry Pi 4