• AVR Freaks

Hot!Will MPLABX sink Microchip?

Page: 12 > Showing page 1 of 2
Author
dharley
Junior Member
  • Total Posts : 10
  • Reward points : 0
  • Joined: 2009/10/19 23:39:11
  • Location: 0
  • Status: offline
2020/12/23 06:14:13 (permalink)
4.3 (10)

Will MPLABX sink Microchip?

I have a general question for you developers out there.
 
Despite using Microchip components for some 15 years and despite the hardware typically being perfect for the job, recently I have found myself looking around for alternatives. And the reason is MPLABX. I have developed such a visceral hatred for this piece of <insert expletive> that I just don't want to develop for Microchip hardware anymore.
 
I'm not going to bore you with the litany of bugs, quirks and wading-through-treacle horribleness we have all experienced. I don't bother to upgrade MPLABX anymore because it's such a cumbersome process and just seems to add a new crop of bugs each time and the old ones never get fixed. I used to keep a log of bugs and report them but I've given up, it is just too much work and makes no difference.
 
And it's getting worse. Recently I have been using Atmel Studio/ARM and while far from perfect it is infinitely better than MPLABX. But Microchip acquired Atmel and instead of building on this valuable resource have EOL'd it. The cool kid was kicked in the head and sat upon by the bloated bully that is MPLABX.
 
Having developed large and complicated systems of various stripes it is obvious to me that MPLABX as a development project is fundamentally flawed and likely unfixable. They chose the wrong technology and given the weird and wonderful bugs that never get fixed it seems likely the architecture has become so hacked that nobody can make any changes without adding more bugs. Harmony and MCC? Just give me documented libraries and a config.x so I can put them in version control! But it seems whoever is in charge of this monstrous mess must be the son of the CEO or something because it just lumbers on gaining more and more "features" and sucking up more and more resources, and never turns around to look back at the chaos behind. I've used perhaps a dozen IDEs and development tools of various stripes and I can say unequivocally MPLABX is the worst by far, and below my threshold of usability at least. Including vi + gdb! And yet Microchip just keeps doubling down on this tool.
 
Possibly related, I've noticed other perturbing trends. Websites with broken links, new data sheet formats that make them harder to reference, perhaps increasing numbers of silicon errata, a slip in price competitiveness. Microchip seems to have lost its soul.
 
Maybe this is a perception thing. Maybe my dislike of MPLABX is irrational. Returning to my question then: how many of you long-timers feel the same? How many of you are looking for alternatives? How many of you are just fine with MPLABX?
 
#1

34 Replies Related Threads

    Jim Nickerson
    User 452
    • Total Posts : 6915
    • Reward points : 0
    • Joined: 2003/11/07 12:35:10
    • Location: San Diego, CA
    • Status: offline
    Re: Will MPLABX sink Microchip? 2020/12/23 07:24:45 (permalink)
    +2 (2)
    I also am a fan of Microsoft based tools.
    I have been experimenting with ESP32 and Platform IO https://platformio.org/  running under VSCode, it looks very promising.
    edit: That being said I will continue to use MpLab X for my Microchip based projects.
    #2
    Jan Audio
    Super Member
    • Total Posts : 192
    • Reward points : 0
    • Joined: 2018/09/24 08:12:24
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2020/12/23 08:21:58 (permalink)
    +1 (1)
    They dont make much money on me.
    The version below number 3 still works fine, if they start building on that i can buy the latest chips and they wont sink.
    #3
    NorthGuy
    Super Member
    • Total Posts : 6525
    • Reward points : 0
    • Joined: 2014/02/23 14:23:23
    • Location: Northern Canada
    • Status: offline
    Re: Will MPLABX sink Microchip? 2020/12/23 08:55:00 (permalink)
    +2 (2)
    I think you're too emotional.
     
    All the modern software is buggy and overbloated. VS crashes on me regularly and is not much better than MPLAB X. There are many reasons for this, of which three are the most important:
     
    - modern programming paradigms and principles which sacrifice simplicity for dubious benefits
    - advent of free software which destroyed the commercial software market
    - robotic approach to HR, which forces all the programmers for hire to be the same
     
    In these conditions, you cannot expect that the software will suddenly turn lean, agile, and powerful. Instead, expect more bloat and more bugs in the future. Expect bloat and bugs even where you would never expect them, such as DigiKey web site. As the hardware is now getting written with Verilog, expect all the software problems to penetrate MCU development as well.
     
    #4
    JPortici
    Super Member
    • Total Posts : 1292
    • Reward points : 0
    • Joined: 2012/11/17 06:27:45
    • Location: Grappaland
    • Status: offline
    Re: Will MPLABX sink Microchip? 2020/12/23 09:19:55 (permalink)
    0
    dharley
    Maybe this is a perception thing. Maybe my dislike of MPLABX is irrational. Returning to my question then: how many of you long-timers feel the same? How many of you are looking for alternatives? How many of you are just fine with MPLABX?



    -It Is
    -It Is
    -I dont' feel the same. i loathed using MPLAB 8, i strongly dislike visual studio and all exclipse based IDEs. Only exception is QT Creator, but it still behaves in a way i would define "idiotic" for some things. To me Netbeans is the least worse of the bunch, it is arranged more logically to my taste, it has one of the best integrated diff engines IMHO and doesn't have idiotic limitations like not being able to have more than one "solution" open.. which is really a project, come on.. and it's not a nightmare to rename said solution/project. I kind of like visual studio code as an editor and would probably be fine if it became the base of the new IDE but when i use it i always feel it wants to be smarter than me trying to do things better than what i want them to do.
    - I guess all in all it's fine for me. Could be better if at apache resolved the moltitude of issues with memory leaks
    #5
    Luca Pascarella
    Junior Member
    • Total Posts : 112
    • Reward points : 0
    • Joined: 2007/05/28 00:53:17
    • Location: The Netherlands
    • Status: offline
    Re: Will MPLABX sink Microchip? 2020/12/23 10:08:28 (permalink)
    +4 (4)
    Just by chance today I found a PCB with a PIC16F84 designed in my early career. It states March 2005 which seems yesterday but it hides 15 years of development with many Microchip products.
     
    I started with the MPASM or what was the name of the Microchip ASM assembler for PIC16, I used MikroC from MikroElektronika with PIC18, I played with PIC18 and PIC24 in MPLAB IDE since first versions of C18/C16, and finally moved to PIC32MX, MZ DA, XC32 in MPLAB-X up to the current 5.45 version. A long way journey, where I appreciated improvements, ideas, solutions, tools, plugins, and... bugs of any kind, no actually I did not appreciate the latter.
     
    Harmony is another tormented story. I just skipped Harmony 1 in favor of Harmony 2. I was afraid of the initial users' reviews. Now I am definitively using Harmony 3. H2 was ok, I found the right learning effort, it is still running on a few projects even if it starts to be difficult to maintain. I do not plan to upgrade to H3 it will be too expensive.
    H3 initially was a mess, the UI adds unnecessary complexity when duplicating projects. I tried to contribute a lot with bug reports and where possible with patches, now it appears stable and works quite well and I am pretty confident with it. The initial learning curve was steep but now adding new components is fine.
     
    Meanwhile, I used Netbeans and Eclipse for Java projects and VisualStudio for C/C++. We may blame Java or we may blame developing desktop applications, I was never feeling confident with Java-based tools. I cannot say more about Visual Studio, it was fine, but I really used it for small projects only.
     
    Recently, thanks to a Russin friend, I definitively moved to JetBrains tools, literally any tool from JetBrains. I started with PyCharm because I couldn't find other significant IDE for Python, then I started to use IntelliJ for Java that is so smooth that is a pleasure. With CLion for C/C++, I can develop and test many embedded parts on a desktop environment and then move to MPLAB-X for integration, and even WebStorm for dealing with Javascript, Typescript, or whatever perverted scripting language for web interfaces is a godsend. Thanks to the ease of use of WebStorm I started to develop React web apps that were a nightmare now I can even enjoy it.
     
    Apart from IDEs and tools, I changed different OS because never satisfied, in any OS I missed something. I rigorously started with Windows, I moved to Debian/Ubuntu, I tried Mac OS, and now again back appreciating Windows. A lot of pros and cons, but for embedded applications, Windows is quite mandatory, Microsoft made a huge leap with the integrated Unix environment, I am quite ready to say bye to Mac which is crazy slow with MPLAB-X and I cannot find any other benefit from their expensive hardware.
     
    However, returning to MPALB-X, that is the point of this thread. Personally, I do not dislike it, I really appreciate the big effort in providing this free-to-use IDE with a variety of useful plugins. However, it is becoming incredibly slow day after day. It's a kind of anesthetized sloth that tries to moves together with Microchip thoughts. Currently, I am developing a huge PIC32 project, from the build to the first breakpoint it requires around 5/6 min. It eats RAM as hell, randomly crashes or disconnects the debugger, and even worst you west tent of minutes when the code navigation stops to work. Restart MPLAB, restart the laptop do three jumps while touching your nose and it starts to work again. It's crazy dealing with MPLAB-X these days is crazy.
     
    Last week, desired, I tried to run MPLAB-X on our server with 512GB RAM and 128 cores. I have to admit the performance is kind of excellent. But then just switching to CLion on the same laptop where MPLAB-X requires 6 minutes to debug... man, I am wordless.
    I am convincing that there is something that does not work at Microchip from different perspectives, it is quite impossible thinking that I should run MPLAB on a server to have adequate performance.
     
    Ok, let's cut the discussion here that is becoming quite long. Perhaps it's the right time to invest in a decent IDE, is Microchip considering JetBrains tools?
    #6
    dharley
    Junior Member
    • Total Posts : 10
    • Reward points : 0
    • Joined: 2009/10/19 23:39:11
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2020/12/29 00:47:00 (permalink)
    0
    Thank you for your feedback. The general conclusion I draw is there is no such thing as an objective reality!
     
    I guess at the end of the day the efficacy of a tool is dependent on what you use it for and what you use it on, as exemplified by Luca Pascarella's thoughtful response. Probably we will muddle on and just work around the issues. But eyes open for alternatives.
     
    Best of 2021, it can only be better.
    #7
    Murton Pike Systems
    Super Member
    • Total Posts : 229
    • Reward points : 0
    • Joined: 2020/09/10 02:13:01
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2020/12/29 01:50:36 (permalink)
    +1 (3)
    I have used MPLAB and MPLAB X since they came out.
    It is hard to use to start with with things spread all over the menu structure.
    It does have bugs and that's why I always keep backups of any software I write (often.)
     
    I have had problems with ATSAME70 project. Couldnt get PWM to work so opened a ticket and months on still no fix from Microchip. So went down the programmable clock route and that crashes above 12MHz !
     
    I had another project where I picked carefully the processor for a USB project. The USB wouldnt work so got in touch with Microchip. They said that USB doesnt work on that 64 pin IC, just the 100 pin version and I should always check the errata sheet. I bought the IC from RS Components and on there it said USB was a working component.
     
    Worked on a USB oscilloscope and upgraded pic32mx to next fastest processor. Was horrified to find out RB4 is now just an input when I was using it as an output so that messed up my pcb.
     
    However it doesnt seem to have got in the way of most of my work.
    I am still churning out lots of projects.
     
    MPLAB X is a huge program and has to service thousands of PICs. So its not surprising there are a few bugs.
     
    #8
    friesen
    Super Member
    • Total Posts : 2169
    • Reward points : 0
    • Joined: 2008/05/08 05:23:35
    • Location: Indiana, USA
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/01/04 15:32:55 (permalink)
    0
    It takes about 5 seconds from click to being opened for me here.. Using Crossworks for arm.  Also, I can say that being able to view struct pointers in external memory is a real bonus.
     
    I too use intellij, as well as netbeans, both work reasonably fast.
     
    I think that for mplabX to work with 2mb 32 bit stuff, that mchp-gdb needs to be written in c++, instead of whatever it is now.

    Erik Friesen
    #9
    Murton Pike Systems
    Super Member
    • Total Posts : 229
    • Reward points : 0
    • Joined: 2020/09/10 02:13:01
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/01/04 15:42:54 (permalink)
    +1 (1)
    friesen
     
    I think that for mplabX to work with 2mb 32 bit stuff, that mchp-gdb needs to be written in c++, instead of whatever it is now.




    I think its current in Java netbeans.
    I find even resizing Windows is a chore with the current mplabx which I think is a side effect of java and netbeans.
    My own Visual Studio C++ and C# Windows programs dont have that problem.
    #10
    uzslm
    Super Member
    • Total Posts : 407
    • Reward points : 0
    • Joined: 2016/06/28 18:46:27
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/01/05 18:05:30 (permalink)
    +1 (1)
    hard to say... forget it
    #11
    stevenpostma
    New Member
    • Total Posts : 8
    • Reward points : 0
    • Joined: 2012/11/09 09:22:01
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/09 15:42:55 (permalink)
    +1 (1)
    I also have the feeling that MC does not love their old customers any more, and do not provide proper migration path.
    the pic-as does not support things like #v(xxx) expressions inside variable names any more, and tht alone makes mpasm -> pic-as conversion impossible for me.
    Developing a working asm-only basis for a newer pic like the PIC16F15345 and -18446 and -19146 has taken me ages because of lacking support in mapsmx. However I have managed to make a preemptive multitasking kernel in pure asm for these devices, but it gets harder and harder to keep doing this, also due to incomplete documentation.
     
    For example, the fact that there are actually 2 encodings for MOVLB encodings on Enhanced Mid-range devices (the classical "00 0000 001k kkkk" a newer "00 0001 01kk kkkk"  encoding should have been documented clearly in the datasheet, but I happened to read about it on https://www.microchip.com/forums/m1131489.aspx
     
    Using the PPS correctly in pure ASM is a puzzle too when you study the datasheet.

    Besides that MC dropped the support for the popular PicKit2 programmers for unclear reasons - I am very thankful to the team of Evan Venn to provide the well-maintained and up-to-date PicKit Plus 2 software for the PK2 programmer.
     
    Also the fact that MPLABX hangs during installation when the display is not at 96 pixels per inch is ridiculous.
    MPLABX is soo huge, slow, complicated, just the opposite of that an assembly programmer loves: simplicity and speed.
     
    I love assembly because you are mastering every bit in the code. Using higher level languages gives you more powerfool tools, but also far more difficult problems that one can not solve. I remember a pascal compiler for the 8051 that interpreted (x shl i) for i==0 as (x shl 256), or other compilers that produce different runtime results depending on the optimalisation level. Horrable!
     
    I also am looking for my next go-to architectecture that I can love; maybe it will be RISC-V? It surely is small and elegant...
    #12
    XorLor
    Junior Member
    • Total Posts : 83
    • Reward points : 0
    • Joined: 2009/10/23 00:17:05
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/09 18:07:03 (permalink)
    -1 (1)
    dharley
    Returning to my question then: how many of you long-timers feel the same? How many of you are looking for alternatives? How many of you are just fine with MPLABX? 


    It works fine for me. I use it all day every day with an average of 7 projects open at the same time.
    #13
    Murton Pike Systems
    Super Member
    • Total Posts : 229
    • Reward points : 0
    • Joined: 2020/09/10 02:13:01
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/09 18:09:15 (permalink)
    +2 (2)
    At the end of the day like every other company Microchip has limited resources.
    Providing "perfect" software takes a lot of time and money.
    And even Microsoft havent done it yet !
     
    I feel sorry for those just starting out with MPLAB X and Harmony as it s a steep learning curve.
    But once there you can churn out many projects with few problems.
     
     
    #14
    stevenpostma
    New Member
    • Total Posts : 8
    • Reward points : 0
    • Joined: 2012/11/09 09:22:01
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/10 02:34:58 (permalink)
    0
    MC is a commercial company, and made a lot of money selling small controllers.
    They did earn enough on that to buy Atmel.
     
    Their strategy that proved successful was to keep bringing out new devices that are roughly functionally equivalent, but just incompatible enough that you cannot easily exchange them in an existing product with the same binary firmware, so you are locked to a certain device for a product.
    As soon as the newer devices are available, the older devices go up in price.
    Yes indeed MC does a good job in keeping producing old controllers, but at a ever higher high cost.
    Also their software tools have difficulty keeping up with so many device variants.
     
    It is a real pity to be left in the cold, for I love PICs since the old 16C84.
    I do bare metal assembly programming with PICs, and have invested heavily in MPASM macros,
    so I think I will have to stay with devices supported by MPASM 5.84 for now, and keep looking for other chip families that I can love.

    I hope Jay Carlsson will update his $1 microcontroller 'contest', that is excellent to compare families.
    #15
    oliverb
    Super Member
    • Total Posts : 414
    • Reward points : 0
    • Joined: 2009/02/16 13:12:38
    • Location: 0
    • Status: online
    Re: Will MPLABX sink Microchip? 2021/02/10 02:57:45 (permalink)
    +1 (1)
    Is there any chance that MPLAB X might be replaced by a plug-in to regular Netbeans, which would free Microchip from having to maintain a fork of the entire IDE. If this happened we'd be free to pick most stable NB releases.
     
    I seem to remember the reason they couldn't do it originally was that at the time Netbeans didn't support debugging on a target system, only on the host PC. I might have misunderstood that though, I found it surprising. Anyway it was kind of implied that newer releases of Netbeans could handle target system debugging, and therefore could potentially have a PIC-support plugin rather than a complete fork.
    #16
    btribley
    New Member
    • Total Posts : 7
    • Reward points : 0
    • Joined: 2018/04/13 14:43:12
    • Location: 0
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/10 05:00:19 (permalink)
    0 (2)
    Ahh, you guys echo my sentiment. I am an  old school hardware engineer who ended up becoming a software engineer. I detest Microchip software and firmware, MPLAB is by far the most clunky IDE I have ever had to suffer with except for Arduino IDE which has zero features, not even a debugger of any kind.
     
    For example, I2C came out in 1980. Certainly by the year 2000 it was very stable and mature. Yet Microchip fiddles with registers and internal design making new generations incompatible. Just stupid. The new AVR128DxNN chips are the same: great chips but they changed anything. And the drivers they supply with their IDEs are just broken for I2C. I have wasted weeks working around Microchip defective application software. 
     
    Enter Arduino. It's an open source hardware and software platform which uses AVR-GCC as a compiler, not any Microchip baloney. Spence Konde has written a core for the AVR128DAxx series, SpenceKonde/DxCore: Arduino core for AVR DA, DB, and future DD-series parts - 1.3.0 w/Curiosity Nano, working toolchain for board manager installs, updi-with-serial-adapter and a whole lot of features and bugfixes (github.com) . It's such a threat that not only have they EOL'ed Atmel Studio 7 but they have added an Arduino Import to MPLAB. Of course it failed out of the box, I could write a python script to set up an Atmel Studio 7 project (now called Microchip Studio 7, all they did was change the name, put on a new splash screen then EOL the product). 
     
    If more of us adopted the Arduino platform we would have a measure of independence from Microchip and the luxury of not having to change our software for the basics when changing chips. 
    Just my two cents. Have a good day everyone!
    #17
    mlp
    boots too small
    • Total Posts : 1005
    • Reward points : 0
    • Joined: 2012/09/10 15:12:07
    • Location: previously Microchip XC8 team
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/15 09:51:44 (permalink)
    -1 (1)
    stevenpostma
    I also have the feeling that MC does not love their old customers any more

    They love their huge old customers fine.
    They love their huge new customers too.
    Guess what the pre-requisite for love from Microchip is?
     
    I also am looking for my next go-to architectecture that I can love; maybe it will be RISC-V? It surely is small and elegant...

    So, completely different from PIC.

    Mark (this opinion available for hire)
    #18
    Jim Nickerson
    User 452
    • Total Posts : 6915
    • Reward points : 0
    • Joined: 2003/11/07 12:35:10
    • Location: San Diego, CA
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/15 10:21:38 (permalink)
    +1 (1)
    Does this mean there is an opportunity for a huge customer to sell influence ?
    Maybe it could be a source of extra income for the huge customer.
    #19
    Les
    Super Member
    • Total Posts : 252
    • Reward points : 0
    • Joined: 2011/02/23 04:27:28
    • Location: UK
    • Status: offline
    Re: Will MPLABX sink Microchip? 2021/02/15 13:30:47 (permalink)
    0
    For me the answer to MPLABX was linux.mint ... ( and turn wifi off)
    #20
    Page: 12 > Showing page 1 of 2
    Jump to:
    © 2021 APG vNext Commercial Version 4.5