UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    VoLTE Implementation For Google Pixel 3a/3a XL

    Scheduled Pinned Locked Moved Google Pixel 3a/3a XL
    volte
    155 Posts 14 Posters 22.1k Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      This topic has been deleted. Only users with topic management privileges can see it.
      • A Offline
        atarilinux @Eric H
        last edited by

        @Eric-H

        Thanks! I was looking at that one when I was messing with the runner. Good to know we are on the right track with thinking something was going on with that part!

        1 Reply Last reply Reply Quote 0
        • Eric HE Offline
          Eric H @atarilinux
          last edited by

          @atarilinux
          https://lucaweiss.eu/post/2023-03-30-retrofit-dynamic-partition/

          • Ubuntu Touch for Xiaomi POCO X3 NFC Telegram group
          • Ubuntu Touch installation guide for Xiaomi POCO X3 NFC / X3
          A 1 Reply Last reply Reply Quote 1
          • A Offline
            atarilinux @Eric H
            last edited by

            @Eric-H

            Thanks! This is a great post! Very helpful!

            1 Reply Last reply Reply Quote 0
            • A Offline
              atarilinux
              last edited by

              I added Sudo to the Apt statements in .gitlab-ci.yml. I also added systempart=/dev/mapper/system to the deviceinfo file.

              For this part,
              https://lucaweiss.eu/post/2023-03-30-retrofit-dynamic-partition/

              I'm trying to figure out where to add this on github. The code on github is referencing a number of other githubs by "clone." I'm trying to untangle it to get a since of what happens when and where. I want to make sure I'm not missing anything.

              1 Reply Last reply Reply Quote 0
              • J Offline
                JayH @atarilinux
                last edited by

                @atarilinux said in VoLTE Implementation For Google Pixel 3a/3a XL:

                @Eric-H

                What you have stated above is correct to the best of my knowledge. Here is the other part from the QA call:

                *Source Material - Not Image
                *Information on image build process, but not how to install it
                *Built on top of latest Android 12.1 version for the Google Pixel 3a, but build not completed

                So....it looks like we need to:

                1. Finish the build (This part is the least specific. Finish what? This is the main issue due to it not being specific. Maybe it is only the retro-fitted partition issue? A lot of data may need to be checked to see what is complete. Here is the bottleneck in completing development.)
                  ...snip...

                I think this, at the very least, is what you're running into. For one thing, the LLVMgold library isn't referenced correctly by the build system. I was able to correct that but my make skills are simplistic and old and rusty. Am currently looking at a problem with the device tree.

                A 1 Reply Last reply Reply Quote 0
                • A Offline
                  atarilinux @JayH
                  last edited by

                  @JayH

                  Yes, that is where I am stuck. I need to know what exactly is missing to complete the build. It's my first port, and I'm new to this. The port does reference other code via clone statements, so I have to look at that too. There are no comments that I am finding that tells me what does what. It will take me a while to figure out what each thing does and what goes where and when. I'm comparing other ports and reading some documentation, but it will be slow going on my own unfortunately.

                  1 Reply Last reply Reply Quote 0
                  • M Offline
                    mr_growl
                    last edited by

                    Don't suppose anyone has the vendor blobs for android 12.1/lineage 19.1 extracted already? I'm trying a build myself and it's at the point where it wants them but I've been struggling a bit to extract them from the payload image I have. Checked the muppet but they don't have 19.1 .

                    A J 2 Replies Last reply Reply Quote 0
                    • A Offline
                      atarilinux @mr_growl
                      last edited by

                      @mr_growl

                      Sounds like a good idea! Keep us posted how the build goes and if you need anything! I did find this online during my research. Would this help?

                      https://github.com/propgsp/Android-Tools

                      1 Reply Last reply Reply Quote 0
                      • J Offline
                        JayH @mr_growl
                        last edited by

                        @mr_growl I would think since the vendor blobs are device specific that they wouldn't change from OS-to-OS ??

                        M 1 Reply Last reply Reply Quote 0
                        • M Offline
                          mr_growl @JayH
                          last edited by

                          @JayH I was presuming they'd be specific to the kernel they were built for. But I'm new to that πŸ™‚

                          @atarilinux Thanks for the link. I'll give those a try next time I'm working at it (been too busy lately)

                          A 1 Reply Last reply Reply Quote 0
                          • A Offline
                            atarilinux @mr_growl
                            last edited by

                            @mr_growl

                            I completely understand. It has been hectic this way too. I hope I can get some more time to look at this soon! I hope what I sent can be of some use.

                            1 Reply Last reply Reply Quote 0
                            • A Offline
                              atarilinux
                              last edited by

                              @JayH @mr_growl

                              I also found this UBPorts video from 6 years ago. It shows how to build a port. Some things probably have changed a bit since then, but it should assist in providing a visual for the Porting Documentation.

                              https://m.youtube.com/watch?v=nShXVDXM50A

                              1 Reply Last reply Reply Quote 2
                              • M Offline
                                mr_growl
                                last edited by mr_growl

                                I had a go with doing a build this weekend and it seems to have built something (I have a boot.img, rootfs.img and system.img).

                                So now trying to sort out the phone to get it ready to try flashing. I checked my /data partition and it is mounted from dm-4 and is not ext4 (instructions say /data should not be encrypted and should be ext4). So just trying to sort that out. Any advice on setting up the partitions in preparation to flash would be appreciated πŸ™‚

                                arubislanderA 1 Reply Last reply Reply Quote 0
                                • arubislanderA Offline
                                  arubislander @mr_growl
                                  last edited by

                                  @mr_growl As I understand it, just that /data should be ext4. There is no need for repartitioning if the correct stock ROM was installed beforehand.

                                  πŸ‡¦πŸ‡Ό πŸ‡³πŸ‡± πŸ‡ΊπŸ‡Έ πŸ‡ͺπŸ‡Έ
                                  Happily running Ubuntu Touch
                                  JingPad (24.04-1.x daily)
                                  OnePlus Nord N10 5G (24.04-2.x daily)
                                  PinePhone OG (20.04)
                                  Meizu Pro 5 (16.04 DEV)
                                  Google Pixel 3a

                                  M 1 Reply Last reply Reply Quote 0
                                  • M Offline
                                    mr_growl @arubislander
                                    last edited by

                                    @arubislander Thanks! I flashed android 12.1 to it, so I'll just try reformatting that partition as ext4.

                                    1 Reply Last reply Reply Quote 0
                                    • A Offline
                                      atarilinux
                                      last edited by

                                      @mr_growl

                                      That's great news! Keep us posted how everything goes! Fingers crossed everything works correctly!

                                      1 Reply Last reply Reply Quote 0
                                      • M Offline
                                        mr_growl
                                        last edited by

                                        Did first attempt at flashing. This is on pixel 3a XL:

                                        1. flash last stock firmware (android 12.1)
                                        2. install twrp
                                        3. boot into twrp and open terminal
                                        4. umount /dev/block/dm-4 (which was mounted to /data and /sdcard)
                                        5. mke2fs -t ext4 /dev/block/dm-4
                                        6. mount /dev/block/dm-4 /data
                                        7. mount /dev/block/dm-4/sdcard
                                        8. boot into bootloader
                                        9. flasboot flash boot boot.img
                                        10. attempt to reboot into recovery

                                        At this point the device wouldn't boot into recovery. So I'm flashing twrp back on to it.

                                        Any thoughts?

                                        Here's the repo I'm using: https://gitlab.com/mr-growl/ubports-ubuntu-touch-google-bonito-volte
                                        I'm building in a ubuntu server 20.04 vm. I modified the deviceinfo from atarilinux's version slightly which got it building properly for me.

                                        ikozI 1 Reply Last reply Reply Quote 0
                                        • M Offline
                                          mr_growl
                                          last edited by

                                          While I was re-flashing twrp a thought occurred. With TWRP on the pixel 3a (compared to the nexus 5 and 4 which I used to use) I have to boot it using "fastboot boot twrp.img" and then use the "flash current twrp" option (taken from the lineage install instructions)... on the older phones it was "fastboot flash recovery twrp.img". Which makes me think this twrp might be writing to the same place as boot.img when I do the "fastboot flash boot boot.img". Any thoughts on that?

                                          1 Reply Last reply Reply Quote 0
                                          • ikozI Offline
                                            ikoz @mr_growl
                                            last edited by ikoz

                                            @mr_growl Why don't you formtat through the built it in option in TWRP or even better via fastboot: fastboot format:ext4 userdata? (the partition name may differ)

                                            Also, when the block device shows up as dm-something it is encrypted.

                                            May the source be with you

                                            M 1 Reply Last reply Reply Quote 0
                                            • M Offline
                                              mr_growl @ikoz
                                              last edited by

                                              @ikoz Thanks! I'll give that a go (I'm still new to a lot of this).

                                              I was thinking it was encrypted. Seems to me that encryption is on by default in android 12 / lineage 19.1 and there isn't an option to disable it in the interface. Not sure what to do from this point.

                                              ikozI 1 Reply Last reply Reply Quote 0
                                              • First post
                                                Last post