• AVR Freaks

Hot!Harmony 3 packs management mess

Author
bird
New Member
  • Total Posts : 13
  • Reward points : 0
  • Joined: 2018/02/05 20:04:20
  • Location: 0
  • Status: offline
2020/02/06 19:31:36 (permalink)
0

Harmony 3 packs management mess

I hope that I am doing something wrong otherwise this looks like a nightmare...
After upgrading packs with Harmony Content Manager, done the subsequent configuration, my projects failed to compile any more... Went through a research of the packs management and packs usage by the Harmony Configurator...
Initially I installed harmony packs using Content Manager and my choice was 32-bit MCUs , no way provided to choose just my intended device family, so in addition to SAME70 family I had to download 3 GB of all 32-bit Microchip MCU packs...
At least the examples worked and my coding took off... until I made upgrade...
.....
User Framework location does not keep all the packages,  they are scattered in multiple locations (here are the versions according to the latest download):
  • User framework : ~HarmonyFramework\dev_packs\Microchip\SAME70_DFP  keeps only the last upgrade downloaded (v.4.2.56)
  • some old packages kept in ~userfolder\.mchp_packs\Microchip\SAME70_DFP - two old versions (v.4.0.29 and v.4.0.40)
  • and the default package (v.4.1.50) is reported in "System" but I couldn't find, where is it?

Opening project "properties" does not show all the device pack versions available on disk to choose from

Using Harmony Content Manager to download the latest packages wipes out the current package from the user framework location (say I had v.4.0.42) and replaces it with a new one (v.4.2.56). Now the current working package for my project is gone. So I'm left with only 2 oldest, one default version in the "System" and the latest downloaded, no other versions exist. Why is it necessary to delete the current pack from the user repository folder?

Now I am bringing up a Pack Manager. It shows v.4.1.50 "installed in System" (wherever it is?) , v.4.0.29 and v.4.0.40 (in .mchp_packs/)  but it does not show the latest downloaded v.4.2.56 in my repository... apparently Pack Manager is also confused finding all the packs , just as I am...

Back to the Harmony Content Manager...
my device is SAME70... the latest downloaded version of this target device pack is 4.2.56 ...  The Harmony Content Manager shows downloaded device pack version 3.6.0  (?)... what does this number stand for? Is it yet another version numbering for all the  MCUs  manufactured by Microchip which I don't need but rolled into one download with it's own version number?  The result - the Content Manager does not even show the user version of his intended device... in other words, Content Manager's notification that "there is update" does not necessarily mean update to your intended device, it could be another pack update rolled into v.3.6.0 of "everything" , not your device ........... you will discover this after update is done and ... your current working pack is wiped out ........:))

OK, now I am to start a MHC3 configurator... it asks for the device pack location while showing only the latest downloaded to the user framework location (this is the version which "Pack Manager" does not even show)...
What are my choices? -The oldest 2 versions I found; I don't know where v.4.1.50 is (yet shown by Pack Manager) ...

Sure, I can save my whole current framework repository keeping multiple version copies  in case upgrade breaks compilation, but this folder is 3GB large... it is bloated because it has packs for all the target devices which I don't need... my device pack is only 160MB large.
Why can't user install a framework with only those devices which he is working with? Why the only choice I had to install was all 32-bit MCUs manufactured by Microchip? While I am only working with SAME70 family I had but install all the family of PIC MCUs?  Is library written in the way that requires other device packs for user device to work??

I deleted unnecessary target packs from my repository but later found out that those other devices are still present in all the src\config folders of all the app examples...

Either I am missing something fundamental making a mess in my head or the mess is in all the packs management created by Microchip tools "Content Manager", "Pack Manager" and MHC 3 Configurator...
Is there possible intelligent way to handle packages upgrade ?
Please help - any advice is appreciated...
 
 
#1

2 Replies Related Threads

    bird
    New Member
    • Total Posts : 13
    • Reward points : 0
    • Joined: 2018/02/05 20:04:20
    • Location: 0
    • Status: offline
    Re: Harmony 3 packs management mess 2020/02/06 21:12:46 (permalink)
    0
    BTW  one indication of the potential problem with a framework bloated with support for many unnecessary target MCUs  (all packs and also app/src/config/ files for all examples) was this :
    at one time my failed configuration of a simple blinking LED example driven by interrupt had included some "pic_blablabla.h" file (don't remember exactly but it was pic_)...
    my target is SAME70Q21B and I copied only examples for this target...
    post edited by bird - 2020/02/06 21:14:12
    #2
    bird
    New Member
    • Total Posts : 13
    • Reward points : 0
    • Joined: 2018/02/05 20:04:20
    • Location: 0
    • Status: offline
    Re: Harmony 3 packs management mess 2020/02/09 22:00:48 (permalink)
    0
    Now I'll list here all the places where all the Microchip and ARM packs have been installed. Remember in my case target device suppose to be SAME70.
    1.  C:\Microchip\HarmonyFramework\dev_packs   (my chosen location for installation, here installed the latest version of all Microchip 32-bit MCU packs both Microchip and ARM packs)
    2. <user-home>\.mchp_packs   (some old versions of all Microchip packs)
    3. C:\Program Files (x86)\Microchip\MPLABX\v5.30\packs  (only one version of Microchip and CMSIS for each of Microchip 32-bit MCUs)
    Note: all above locations keep different versions of Microchip packs and ARM/CMSIS packs. Each of those about 3GB large.
    So once user installs MPLABx and Harmony 3 packages he ends up with total over 6GB of packs for mostly unused MCUs, and they are scattered over 3 locations.
     
    The project dashboard in MPLAB X left bottom window reports wrong versions of both Microchip pack and CMSIS pack. Reported packs are not the once from your repository but from the repository #3 from above list. Yet project seems to be configured with user chosen version location. So don't believe dashboard.
     
    If you bring "Properties" window to see all the options to choose, you will not see all of those packs versions there. "Properties" window does not show your actual latest (or current) version from your framework chosen location. Since it does not show you your chosen framework, it only displays those version which you don't need.
     
    I verified for sure that Content Manager (downloader) indeed wipes out only those previous versions which are in your chosen location (which you are more likely currently using) and are about to be replaced. But those older packs in locations #2 and #3 are never removed (unless you do it, but I am cautious to try this... ).
     
     
     
    #3
    Jump to:
    © 2020 APG vNext Commercial Version 4.5