| 06-23-2020, 04:44 AM | #2751 |
|
Second Lieutenant
![]()
94
Rep 289
Posts |
Yes that is what i also suspect. And then they will do what carlinkit did to me a year ago, release a new unit and tell me i can upgrade to a new version for more money.
Last edited by xDHC; 06-23-2020 at 04:49 AM.. |
|
Appreciate
0
|
| 06-23-2020, 04:54 AM | #2752 | |
|
New Member
16
Rep 24
Posts |
Quote:
I also found your post with the reference to the official ISPBoot packer. Wouldnt we able to use this tool to pack the modified images? https://f30.bimmerpost.com/forums/sh...19&postcount=4 edit: I tested the tool and it indeed breaks because the signature differs (the bimmertech file signature is "Gemini_ISP_image". After modifying that in the source the tool continues but fails with a strange error: sh: 1: Syntax error: "(" unexpected Last edited by Laurens0619; 06-23-2020 at 06:47 AM.. |
|
|
Appreciate
0
|
| 06-23-2020, 05:16 AM | #2753 | |
|
Private
![]() 9
Rep 82
Posts |
Quote:
https://www.facebook.com/Carlinkit/p...34710657643619 |
|
|
Appreciate
0
|
| 06-23-2020, 05:19 AM | #2754 | |
|
Second Lieutenant
![]()
94
Rep 289
Posts |
Quote:
|
|
|
Appreciate
0
|
| 06-23-2020, 07:57 AM | #2755 | ||
|
Second Lieutenant
![]()
56
Rep 256
Posts |
Quote:
Quote:
2) magically the fix will appear on more recently purchased one yeah certainly a possibility, since there isn't another "obvious" update to justify a new unit. the original mmi's were for adding rear/front cams, then there was the ones to add in apple tv/firesticks/screen mirroring, then wired carplay/aa, then wired carplay/aa widescreen, then wireless carplay/aa....next probably your idea, or "Super High Definitions Resolutions to Effect of Auto Android System Function" |
||
|
Appreciate
0
|
| 06-23-2020, 09:53 AM | #2756 | ||
|
Matusov
14
Rep 43
Posts |
Quote:
Quote:
I can also confirm that 20.06.02 works on Carlinkit. Absolutely no lag and the most responsive version. I did notice that this one does not have Menu to Cancel Reverse button. But the work-around is to use the actual physical reverse camera button to go back to Carlinkit. One question I have is in AA google maps when I select to free move around the map, I can't actually move the cursor only zoom works. Any ideas? |
||
|
Appreciate
0
|
| 06-23-2020, 11:13 AM | #2759 | |
|
Major
![]()
439
Rep 1,219
Posts |
Quote:
Also, I am a newbie to linux but also thought that using the official packing tool to re-pack a modified bin may be the best approach. Can you give me some pointers on how to run the tool? Last edited by muniz_ri; 06-23-2020 at 11:21 AM.. |
|
|
Appreciate
0
|
| 06-23-2020, 03:57 PM | #2760 |
|
Private First Class
![]()
95
Rep 172
Posts
Drives: 2015 328i
Join Date: Mar 2018
Location: Germany
|
Installed the module on my HU_ENTRYNAV 6.5" and it just worked. Audio, mic and maps - pretty much all I needed.
![]() |
|
Appreciate
0
|
| 06-23-2020, 04:13 PM | #2761 |
|
Second Lieutenant
![]()
857
Rep 280
Posts |
I managed to extract the .bin using the official script and repack it again.
In the isp.c only the signature needs to be changed: (thx Laurens0619 ) Code:
const u08 file_header_signature[] = "Gemini_ISP_image"; That will split each partition into multiple files: TFTP0000.BIN contains the flash script for that single partition and any subsequent file (TFTP00xx.BIN) will be a 2MB chunk of that partition. I wrote a script that will extract and merge each partition back into a single file: Code:
#!/bin/bash
PARTITIONS="uboot2 env env_redund ecos kernel rootfs spsdk spapp nvm pq logo tcon iop_car runtime_cfg vi isp_logo vendordata pat_logo version_info vd_restore anm_logo";
mkdir partitions;
for part in $PARTITIONS; do
echo $part;
./isp_gemini extract4tftpupdate ISPBOOOT.BIN $part $part
rm partitions/$part;
rm $part/TFTP0000.BIN;
cat $part/TFTP* > partitions/$part;
rm -rf $part;
echo "";
done;
Only problem now are uboot and xboot partitions. It will only extract 'uboot2', so we are missing 'xboot1', 'xboot2', 'uboot0' and 'uboot1'. They are not extracted because according to the comments in the isp.c script they are never flashed to the unit. But you still need it for the file, of course. uboot1 and uboot2 are identical, so they can just be copied. The other boot partitions can be extracted from the original .bin file using dd. Once you finally have all the partitions back together, this is the partition table and repack command: Code:
./isp_gemini pack_image ISPBOOOT.BIN \
xboot0 uboot0 \
xboot1 0x100000 \
uboot1 0x100000 \
uboot2 0x100000 \
env 0x80000 \
env_redund 0x80000 \
ecos 0x800000 \
kernel 0x600000 \
rootfs 0x5A0000 \
spsdk 0x34E0000 \
spapp 0x1400000 \
nvm 0x1000000 \
pq 0x20000 \
logo 0x200000 \
tcon 0x20000 \
iop_car 0x200000 \
runtime_cfg 0x100000 \
vi 0x20000 \
isp_logo 0x500000 \
vendordata 0x40000 \
pat_logo 0xD00000 \
version_info 0x20000 \
vd_restore 0x40000 \
anm_logo 0x600000
Why almost? While the flashing script at the end is mostly the same and even all the md5 checksums perfectly match, the NAND flash commands are different. The original .bin has them like this: Code:
nand write.bblk $isp_ram_addr $isp_nand_addr 0x8800 Code:
bblk write bblk $isp_ram_addr $isp_nand_addr 0x8800 Thoughts? |
|
Appreciate
4
|
| 06-23-2020, 04:47 PM | #2762 | |
|
Captain
![]() ![]() ![]() ![]()
623
Rep 843
Posts |
Quote:
![]() |
|
|
Appreciate
0
|
| 06-23-2020, 04:50 PM | #2763 |
|
Major
![]()
439
Rep 1,219
Posts |
Awesome. Have you attempted to flash the modified bin?
|
|
Appreciate
0
|
| 06-23-2020, 04:56 PM | #2764 |
|
New Member
16
Rep 24
Posts |
Great development
![]() I noticed they recently committed the file, maybe you can use the previous version of the file? Im on my phone so hard to analyse the code for the broken parts https://github.com/sunplus-plus1/isp...3a9721851d5300 https://github.com/sunplus-plus1/isp...ools/isp/isp.c Last edited by Laurens0619; 06-23-2020 at 05:04 PM.. |
|
Appreciate
1
x-m4n146.50 |
| 06-23-2020, 04:57 PM | #2765 | |
|
New Member
14
Rep 28
Posts |
Quote:
Look at line 1408 of isp.c My other concern is that they use a different type of SQUASHFS files system or a modified one. Their file system is not able to be mounted in my linux box. I can extract it, but not mount it. After I extracte it, make the changes and rebuild the file I can mount it without issues. |
|
|
Appreciate
1
x-m4n146.50 |
| 06-23-2020, 05:17 PM | #2766 | |
|
Second Lieutenant
![]()
857
Rep 280
Posts |
Awesome!!! Thank you. I searched the file for the string before but no idea how I missed that.
Unfortunately I am not much of a C developer and not very deep in the compiling topic. Code:
...(file_header_extract4update.partition_info[i].flags & FLAGS_BCH1K60) ? "bblk write bblk" : "nand write", ... So probably that flag needs some adjustment: Code:
#define FLAGS_BCH1K60 (1 << 0) // partitions r/w by "nand read.bblk" and "nand write.bblk". Found this: https://stackoverflow.com/questions/...-something-1-0 I need an explanation for that explanation Totally out of my depth here.Quote:
It works in my Ubuntu VM. |
|
|
Appreciate
2
x-m4n146.50 touchmynappa58.50 |
| 06-23-2020, 05:28 PM | #2767 |
|
New Member
16
Rep 24
Posts |
I was reading the rest of the repo and see the uboot (assume the thing that kicks off when usb drive is detected with firmware) being referenced a lot:
# How to use TFTP ISP to do partial update # Execute "isp extract4tftpupdate" command to extract partial content from ISPBOOOT.BIN to produce # TFTP BIN files. Please modify the partition name in the "isp extract4tftpupdate" instruction. You # can update up to two partitions at the same time. For default, we will update uboot and kernel # partitions. After TFTP BIN files are produced, let your board go into uboot and then execute the # following uboot command. # => run update_tftp # It will update these partitions on the main storage of your board. On an android phone you will go to fastboot (is that the same?) when holding some buttons. Did anyone connected a usb keyboard and holded some buttons during boot? Edit: I dont think its the same board but vendors often apply same logic for different boards. Maybe the dip switches can be used to boot into uboot? https://sunplus-tibbo.atlassian.net/...vices+of+Plus1 Last edited by Laurens0619; 06-23-2020 at 05:38 PM.. |
|
Appreciate
2
x-m4n146.50 touchmynappa58.50 |
| 06-23-2020, 05:46 PM | #2768 | |
|
Lieutenant
![]() ![]() ![]() 49
Rep 562
Posts |
Quote:
2. Enable wheel key in set up menu. Go to BMW app logo if already in CarPlay mode and then set up. You should see the wheel key option. |
|
|
Appreciate
0
|
| 06-23-2020, 06:05 PM | #2769 | |
|
Private First Class
![]()
46
Rep 102
Posts |
Quote:
![]() ![]() |
|
|
Appreciate
0
|
| 06-24-2020, 12:41 AM | #2770 | |
|
Colonel
![]() 1481
Rep 2,684
Posts |
Quote:
1 << 0 is 1 shifted left 0 times, or 1 * 2^0. AKA 1. Likely done for consistency reasons, especially if there are bitwise shifts elsewhere in the code. There's no real deep meaning behind using 1 << 0, in this case. They're just setting the flag to 1.
__________________
2015 BMW 535xi
Bootmod3 Stage 2 | ER charge pipe | ER Catted DP | Remus Exhaust | Gplus FMIC | KW V3 | Turner Monoball thrust arm bushings | Wallet regrets ISTA VM Setup/Tutorial |
|
|
Appreciate
2
x-m4n146.50 Firefly1337856.50 |
| 06-24-2020, 02:13 AM | #2772 |
|
Second Lieutenant
![]()
94
Rep 289
Posts |
|
|
Appreciate
0
|
Post Reply |
| Bookmarks |
| Tags |
| andream, android, android auto, apple, carplay, mmi, retrofit |
| Thread Tools | |
|
|