[R&D] A7 R&D thread

Discussion in 'Firmware Modifications' started by Tobi@s, Apr 21, 2014.

  1. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
    I'm posting this here because we don't have a development releated forums section nor a o803 section, yet.

    Also I will add more information as soon as possible.

    Ambarella A7 firmware binary specifications
    Code:
    Byte sex: Little Endian
    
    Firmware header:
    header length: 2048 bytes
    aligned with "0x00" padding bytes
    
    Partition order:
    BST (Bootstrap setup DDR, etc)
    BLD (AMBoot loader)
    HAL (probably chipset APIs)
    PRI (RTOS image)
    RFS (Filesystem)
    DSP (ucode/microcode, not exactly sure)
    
    Partition start offsets information in fw binary
    start: 0x00000000
    end: 0x0000007f
    length: 128 bytes
    data: DWORD
    
    Partition end offsets in fw binary
    start: 0x00000080
    end: 0x000000ff
    length: 128 bytes
    data: DWORD
    
    Partition header information in fw binary:
    
    header length: 256 bytes
    aligned with "0x00" padding bytes
    
    header data:
    crc32: DWORD
    version: WORD WORD
    date: BYTE BYTE WORD
    length: DWORD
    memory address: DWORD
    flag: DWORD
    magic: DWORD
    flag2: DWORD
    
    Alignment algorithm:
    align = 0x800
    int getPaddingSize(int size, int align) {
    
    return (align - (size % align));
    
    }
    
    
     
    Last edited: Feb 11, 2016
  2. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
    Just finished all the unpacker algorithms. Will write a new tool from scratch for A7 firmware editing (will also add A2 support later). It will be called A7Tool :D
    New code is a really big performance improvement. Analyzing and unpacking the firmarwe into its sections just took 82ms (yes, milliseconds).
    Analyzing and unpacking the RFS section takes 95ms. There have been some minor RFS structure changes (it has folders now).

    FW Section/RFS dump from early 0803 firmware: https://drive.google.com/file/d/0B4FRwm9CGCLkckxlVC1xWUVjZTQ/edit?usp=sharing
     
    jokiin likes this.
  3. David Pincus

    David Pincus New Member

    Messages:
    22
    Likes Received:
    3
    Country:
    Australia
    This is.... AWESOME. Can't wait to tinker.
     
  4. David Pincus

    David Pincus New Member

    Messages:
    22
    Likes Received:
    3
    Country:
    Australia
    Tobi@s likes this.
  5. jokiin

    jokiin Well-Known Member Manufacturer

    Messages:
    37,020
    Likes Received:
    18,937
    Location:
    Shenzhen, China - Sydney, Australia
    Country:
    China
    Dash Cam:
    Too many ¯\_(ツ)_/¯
    going by the folder name they've given you the V1.0 firmware, there has already been improvements made in that version, E-Prance had early pre production samples which had a much earlier firmware version, there is a V2 and V3 done already but still some fine tuning going on, V4 expected maybe tomorrow or the next day to resolve some image quality issues, once that's sorted there will be some feature requests attended to, selectable MPH or KPH display etc that will come in later versions, the feature enhancements should be done in time for mass production though
     
    Hilts likes this.
  6. David Pincus

    David Pincus New Member

    Messages:
    22
    Likes Received:
    3
    Country:
    Australia
    Is there a repo for all firmwares? Also, any known hardware changes between the model I have and the future production ones? (other than the 1080P silkscreen). Some have commented that e-prance is selling fake ones - I don' think this is the case as it definitely has all of the right bits inside.
     
  7. jokiin

    jokiin Well-Known Member Manufacturer

    Messages:
    37,020
    Likes Received:
    18,937
    Location:
    Shenzhen, China - Sydney, Australia
    Country:
    China
    Dash Cam:
    Too many ¯\_(ツ)_/¯
    no repo for downloads at this stage

    lens is being changed from the one you would have on mass production models, not sure if you have the Mini USB or Micro USB version (both are possible), most likely customers would order the Micro USB version though I would think

    E-Prance models are not fake, they are just pre production units, I have them too, I wouldn't sell them to an end user though, they're just meant for testing
     
  8. David Pincus

    David Pincus New Member

    Messages:
    22
    Likes Received:
    3
    Country:
    Australia
    Thanks for your insights jokiin. Do you know what's different about the lens? I recall reading that various vendors could choose different lens options -

    Mine has the micro USB on both the GPS mount and the camera.

    BTW, Are you here in Sydney?
     
  9. jokiin

    jokiin Well-Known Member Manufacturer

    Messages:
    37,020
    Likes Received:
    18,937
    Location:
    Shenzhen, China - Sydney, Australia
    Country:
    China
    Dash Cam:
    Too many ¯\_(ツ)_/¯
    lens will be changed to a slightly wider angle version than what you would have now, it should be ok for the lens you have now, V1, V2, V3 and V4 firmware should all be fine with this, mass production it will vary so future updates might not be ideal for your camera but by all accounts the next firmware for yours should see things improved anyway and any future stuff might be more about features and minor tweaks

    I'm in China right now but I do live between here and Sydney depending on work
     
    Hilts likes this.
  10. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
  11. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
    Last edited by a moderator: Sep 19, 2015
  12. reverend

    reverend Well-Known Member

    Messages:
    5,401
    Likes Received:
    3,698
    Country:
    United Kingdom
    Dash Cam:
    Too many
    Hi folks, would this firmware you're looking at doing also work on the GS6000 fitted with the A7 at all please?
     
  13. jokiin

    jokiin Well-Known Member Manufacturer

    Messages:
    37,020
    Likes Received:
    18,937
    Location:
    Shenzhen, China - Sydney, Australia
    Country:
    China
    Dash Cam:
    Too many ¯\_(ツ)_/¯
    firmware is specific to hardware type, they are not universal
     
    Tobi@s likes this.
  14. Hilts

    Hilts Well-Known Member

    Messages:
    432
    Likes Received:
    347
    Location:
    Wales
    Country:
    United Kingdom
    Dash Cam:
    SG9665GC, A119S & Mobius B (with capacitor)
    @Tobi@s - Is it possible to move this Thread to the new Mini 0803 section?

    Looking forward to seeing how this all develops, having just ordered one myself. Currently waiting patiently for the 'Production ready' Mini 0803 to be made available...
     
  15. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
    Id like to keep it here because it's not device specific (just testing seems to be 0803-only at the moment).
    The information collected here should be the same for all A7 SoCs.
    A7Tool will be platform (and not device) specific, also.
     
    Hilts likes this.
  16. Hilts

    Hilts Well-Known Member

    Messages:
    432
    Likes Received:
    347
    Location:
    Wales
    Country:
    United Kingdom
    Dash Cam:
    SG9665GC, A119S & Mobius B (with capacitor)
    Opps, apologies. I was confused by your first line....
     
  17. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
    When I created the thread there was no 0803 nor a development section. I would have put it in the 0803 section when the development section would not have existed (omg grammar I hate you) cause the 0803 is the device Im going to test/work with in the first place. But since we have this development section I prefer this place :D
     
    jokiin and Hilts like this.
  18. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
  19. Tobi@s

    Tobi@s Well-Known Member App Developer

    Messages:
    1,353
    Likes Received:
    804
    Location:
    Bavaria
    Country:
    Germany
    Dash Cam:
    some
    Any GUI improvements/suggestions?

    [​IMG]
     
  20. reverend

    reverend Well-Known Member

    Messages:
    5,401
    Likes Received:
    3,698
    Country:
    United Kingdom
    Dash Cam:
    Too many
    Is there anything I could test for you from here with the GS6000 A7 I have?

    I've got another 7 days where I can send this back to Amazon, but if I can get similar quality out of the GS6000 I'd be happy to keep it tbh. If the Mini0803 has a better quality lens than the GS6000 I have it would be a no brainer to send the GS6000 back and get a Mini0803 though.

    I'm guessing it's recoverable via DirectUSB2 if I brick it anyway - is that freely available at all please?
     

Share This Page