Talking with Steve Sanghi, CEO of Microchip for 31 years - Page 1
Forum section: electronics / general

author: EEVblog
author_rank: Unknown
timestamp: May 15, 2023, 04:40:10 am
content: Catching up with Steve Sanghi who was Microchip CEO for 31 years, now executive chariman.Check out his new book, Up and to the Right.https://amzn.to/3M3DXFMHow Microchip was built into one of the biggest and most pofitable chip companies in the world.This is copied from The Amp Hour podcast, as it shuld be of great interest to EEVblog viewers.https://theamphour.com/In this episode we discussed:The early microcontrollers, ROM, EPROM, EEPROM, FLASH.Semiconductor Fab's and locations.How the US Government CHIPS act is a golden handcuffs trap.US/China rhetoric.What really happened durign the covid supply chain crisis.How 90% of medical devices use Microchip parts.Lead times.Respect for the chip manufacturers and supply chains.Just-In-Time becomes Just-In-Case.How the Toyota production system works and how it had to change.The impacts of a potential war in Taiwan.How does it make sense to make thousands of part variants?The secret to making part varients.Why Microchip chose MIPS vs ARM.Atmel didn't make any money!Pricing discipline.How buying Atmel almost didn't happen, and how Dialog Semiconductor goofed it.Draconian NDA terms.Atmel was bloated.RISC-V plans.Customer Driven Obsolescence.Foundry vs In-House limitations.Open Source FPGA tools?Third party tool support.Why not offer free optimised compilers?It's all about black swan events, down cycles, pointy haired bosses, and how All your Cost Bases Beyong To Me.Hobbyist vs professionals.How Microchip is the largest aerospace chip maker in the world. Nothing leaves earth without a Microchip part in it.Radiation hardended parts.Market value profitability.Will Microchip ever get acquired.Strained US vs China relations.

author: JPortici
author_rank: Super Contributor
timestamp: May 15, 2023, 05:03:42 am
content: Looking forward on this one! the topic list is particularly juicy (did not know about aerospace, and did it happen before or after atmel+microsemi acquisitions? as it don't recall microchip ever having radhard parts before)

author: EEVblog
author_rank: Unknown
timestamp: May 15, 2023, 05:53:55 am
content: Quote from: JPortici on May 15, 2023, 05:03:42 amNot sure about that timeline.

author: JPortici
author_rank: Super Contributor
timestamp: May 15, 2023, 07:11:42 am
content: Atmel was acquired in 2016, microsemi in 2018The first radhard parts i've heard from microchip were rebadges from those two company, that's what i'm saying.Anyway, now i'm at the office so i can hear the podcast

author: EEVblog
author_rank: Unknown
timestamp: May 15, 2023, 09:58:16 am
content: Quote from: JPortici on May 15, 2023, 07:11:42 amSeems not, been doing it since 1985https://ww1.microchip.com/downloads/en/DeviceDoc/00002200C.pdfQuote

author: 2N3055
author_rank: Super Contributor
timestamp: May 15, 2023, 10:19:29 am
content: Quote from: EEVblog on May 15, 2023, 09:58:16 amThose are Atmel...

author: woofy
author_rank: Frequent Contributor
timestamp: May 15, 2023, 10:35:33 am
content: Wow! Fascinating podcast, thanks Dave.On RISC-V, all I can say is I would use them as I'm pretty agnostic when it comes to the CPU core, it just has to do the job. I program in C so the core is mostly invisible anyway.

author: JPortici
author_rank: Super Contributor
timestamp: May 15, 2023, 11:22:20 am
content: Quote from: EEVblog on May 15, 2023, 09:58:16 am"With over 30 years of experience in the space industry from Atmel heritage" etc

author: nctnico
author_rank: Super Contributor
timestamp: May 15, 2023, 03:25:34 pm
content: Yep. The actual Microchip parts are pretty crappy. I keep designing these out due to various reliability and functional issues.Over the years Microchip has acquired some higher quality product ranges which are now branded Microchip. It is like Harbour Freight buying Festool and branding all Festool products as Harbour Freight...

author: KE5FX
author_rank: Super Contributor
timestamp: May 15, 2023, 05:28:56 pm
content: Quote from: nctnico on May 15, 2023, 03:25:34 pmWhat are some examples of parts you've had problems with?

author: SiliconWizard
author_rank: Super Contributor
timestamp: May 15, 2023, 06:18:58 pm
content: Quote from: nctnico on May 15, 2023, 03:25:34 pmOh really.

author: PCB.Wiz
author_rank: Super Contributor
timestamp: May 15, 2023, 08:06:36 pm
content: Quote from: woofy on May 15, 2023, 10:35:33 amI know other vendors doing the same as Microchip - they use RISC V cores in the 'buried' stuff, typically the Bluetooth core, whilst the customer facing MCU is an ARM core.I guess that has two benefitsThey can tune the RISC V they need for that taskThey avoid paying more mony

author: globoy
author_rank: Frequent Contributor
timestamp: May 16, 2023, 02:11:47 pm
content: That was very interesting! Especially for those of us who cut our teeth with PICs. Makes me want to figure out some project for a 16C57, just for old time's sake... Back in the day where you could memorize the entire instruction set and peripheral control registers.It wasn't really discussed but I always thought one reason the PIC was so successful - and widely designed in - back in the day was because of cheap programmers, free samples and a free [assembly language] development environment. At least for me getting my start in embedded that was a low barrier for entry compared with the other vendors. Because of the simple instruction set the assembly programming didn't seem so onerous back then.

author: schmitt trigger
author_rank: Super Contributor
timestamp: May 16, 2023, 04:14:26 pm
content: This topic is specially close to me as I was working for another division of General Instruments in the 1980s and witnessed first hand the fate of the Microelectronics division, and the struggles it had when it was initially spun-off.Since we had several legacy products which used Microelectronics products, we had to deal with the spin-off glitches.I agree that Mr. Sanghi was the right man at the right place and time, which transitioned an ailing company into the powerhouse that Microchip eventually became.

author: woofy
author_rank: Frequent Contributor
timestamp: May 16, 2023, 05:13:47 pm
content: I still have some of the old PIC's from Yester-Year.

author: AndyC_772
author_rank: Super Contributor
timestamp: May 16, 2023, 05:16:28 pm
content: Re: charging for optimised compilers, it's frightening to hear just how far out of touch he is from the engineers designing in his parts.Anyone - large or small business - designing with a microcontroller needs to not only complete the design once, but also provide support for it over its lifetime. It's no good renting a compiler to complete a project, only to find a couple of months later an update is required, and then another one in 6 months, and another the following year, shortly followed by a port to a new device and so on.Software maintenance is a thing. Bugs happen. Feature creep happens. Sometimes, parts disappear off the shelves for months at a time and have to be substituted. (Sound familiar?)And the excuse for charging for them? Something something general managers blah blah blah. Seriously, WTF?Sorry Steve, you're living in world in which ARM exists and GCC is free. The only thing keeping me using PICs these days is the 150C temperature rating.

author: woofy
author_rank: Frequent Contributor
timestamp: May 16, 2023, 05:31:39 pm
content: Optimisation levels 0, 1 & 2 are included in the free compiler, only 3 & s require the paid for version.

author: mariush
author_rank: Super Contributor
timestamp: May 16, 2023, 05:47:57 pm
content: I listened to the show this morning at work and my first impression was that... I have expected more from the discussion. Too little actual information, very brief on lots of questions, kinda disappointed really.I mean seriously, when you have a person as big as this one on the show, couldn't you have made an exception and do it 2-3 hours interview? Though I doubt he would have had answers...Almost like he only stayed for one hour to plug his book at the end... I mean kinda the nerve of the guy, he's probably a millionaire yet he still has to shill his book.... f#*cking 45$ for 300 pages, and self-published book, so it's not like a publisher get 50% or whatever of it.The "we have to charge for compiler because otherwise we may sell the division when it doesn't money" is a ridiculous justification.

author: zilp
author_rank: Frequent Contributor
timestamp: May 16, 2023, 07:01:07 pm
content: Yeah, his views regarding paid vendor dev tools seemed wildly out of touch indeed.But not only because of bugfixes and stuff, but even just the insanity of managing licences, and possibly integrating that into an automated build system, possibly even some sort of continous integration setup, ... when you can just install GCC (or LLVM) without any restrictions whatsoever and have it available for automated release processes whenever you need it.Plus, GCC being Free Software, all your compiler-specific skills are not locked into the manufacturer's ecosystem, and it only needs an additional code generator backend to make them even transferable to new, competing, architectures, and existing code is also easier to port to new targets this way as the compiler's language features don't depend on the target.So, if you ask me, asking for money for vendor dev tools in this environment is much more likely to kill them than giving them away for free, as there are significant disincentives to use them already anyway, and I would think minor optimization advantages would rarely justify all these disadvantages, especially so given that a bunch more computing power or memory rarely costs significantly more anymore, so unless you are dealing with a very cost sensitive and/or large volume product, who would deal with that hassle instead of just selecting a slightly larger chip?

author: KE5FX
author_rank: Super Contributor
timestamp: May 16, 2023, 07:16:55 pm
content: To play devil's advocate, if I'm building 10,000,000 of something and a compiler that's 1% better than GCC lets me ship with a PIC that costs 10 cents less, that compiler license is worth up to $1 million.Of course, there are likely to be any number of ways to shave 1% from the code size without paying a six-figure sum for a compiler. I guess he's assuming that a lot of customers don't have the time or talent needed to find another way.

author: EEVblog
author_rank: Unknown
timestamp: May 16, 2023, 11:45:30 pm
content: Quote from: zilp on May 16, 2023, 07:01:07 pmThey might be "out of touch" when it comes to small time users, but name a microcontroller maker more consistently profitable than Microchip. Also name another microcontroller manufacturer that still makes and supports ancient parts as ell as Microchip. Perhaps beig "out of touch" is the price paid for profitability and longevity?

author: EEVblog
author_rank: Unknown
timestamp: May 16, 2023, 11:48:56 pm
content: Quote from: mariush on May 16, 2023, 05:47:57 pmIt was intially going to be a private phone call, like the last time we talked. Then he said he could swing half an hour and do the recording for the Amp Hour. Then I pushed for the full hour and eventually got an hour slot in his calendar. He's a busy guy.I think there is a ton of useful and interesting stuff in the hour we got. Just look at the list of subjects we covered for goodness sake! Pretty darn impressive for 1 hour even if I do say myself.And this is why the audio sucks. I didn't have the time to get things set up right on his end because it would have eaten into the available time. And then when the audio recording failed 3/4 the way through I had to push on and hope I could get the recovery file from Zencaster. Luckily I did.Be thankful I got the hour worth of material.QuoteSo don't buy it, or buy the Kindle edition.QuoteIt actually makes sense.

author: EEVblog
author_rank: Unknown
timestamp: May 16, 2023, 11:59:55 pm
content: Quote from: KE5FX on May 16, 2023, 07:16:55 pmIt's $44/month.

author: zilp
author_rank: Frequent Contributor
timestamp: May 17, 2023, 05:37:22 am
content: Quote from: EEVblog on May 16, 2023, 11:45:30 pmUh ... or maybe the long-term availability is part of what makes them successful, and they'd be more so if they had a different approach to dev tool licensing?And also, it's not like you couldn't target any of their chips with free compilers ... and, after all, even their XC* compilers are GCC under the hood, just with questionable handling of the licensing, so arguably, they are free compilers, just with some inconvenience added?And as for his explanation as to why this makes sense, I am also rather unconvinced. By that logic, they'd also have to sell the datasheets for their products because the department that writes the documentation is just a cost center, so some incompetent manager could get the idea to close down the department ...

author: JPortici
author_rank: Super Contributor
timestamp: May 17, 2023, 06:07:27 am
content: I use almost exclusively 8bit and 16bit PICs.XC8 (for PIC) is a propietary compiler, they bought HiTech, only kept the 8bit PIC compiler and its team and keep developing it (the original compiler team is still there.)XC16 may be GCC but the actual back end may be propietary, as the architecture is propietary. I think the only other compiler is from MikroE and frankly i'd rather stay with unoptimized code, besides the fact that support for new parts and compiler bugs take a huge amount of time to get sorted, as Mr Sanghi correctly pointed out. Again a dedicated team (and they do excellent work).In these two cases i'm going to "allow" it for the fact that we can use up to -O2 (it's not FREE/STANDARD/PRO anymore, when FREE mean -O0 and PRO was several thousand dollards), in these platforms i'm not going to use -O3 and -Os anyway as i can't really debug it.)i get my projects done, i use assembly when i need it heavily optimized (not rely on the compiler) and support is responsive even on possible compiler issues even when i write with my gmail account. At least when things get really bad I'm not left to look help in the community (it doesn't seem to work out really well for ST/TI users).I can absolutely justify it for most of the addons as they seem to be internally developed tools (and they require a separate license, independent on the compiler license)I can't really justify it for XC8-AVR, XC32 of both sorts. Neither i can for the MISRA check plugin as it's literally a call to CPPCHECK. I asked at CPPCHECK if they were fine with it, received no answer.All in all i can see the logic in what he said

author: AndyC_772
author_rank: Super Contributor
timestamp: May 17, 2023, 06:55:55 am
content: Quote from: EEVblog on May 16, 2023, 11:59:55 pmThat's precisely the problem, though.True story... last year one of my customers contacted me to say he couldn't get hold of a certain PIC, but we were able to find stock of a lesser device with only half the Flash. At the time, the original part was indeed only about 50% full, so I made the changes, compiled with -O2, and we were back in production.Then, as always happens, a requirement came in to add a new feature that allows the product to be used in a new application. Do I:a) Rent the fully optimising compiler, orb) Split the code into different builds for different applications, so we now have multiple binaries for different operating modes?The answer is (b), because even though it's a pain to manage, I have to be able to support every piece of code I releaseon an ongoing basis.Option (a) would mean renting the compiler not only to complete the code on day one, but also each and every time a change is needed. By choosing this option I'm making a costly commitment, to maintain the ability to fix and upgrade that code for its entire commercial lifetime.This is why the whole concept of renting dev tools sucks - especially where development isn't carried out by the same company that mass produces the end product.

author: chris_leyson
author_rank: Super Contributor
timestamp: May 17, 2023, 07:43:58 am
content: PIC1655 was a General Instrument part originally. Remember seeing a GI PIC1655 in a musical doorbell maybe 35 years ago. Datasheet attached.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: May 17, 2023, 08:32:15 am
content: I've used 8,16 and 32 bit PICs for hundreds of projects since the 16C54, and C since the 16c74I have licenses for the full versions of the first 2, and the hack for the latterWhenever I've experimented with the optimisation options, I don't think I've ever seen a situation where the highest option made a make-or-break difference to speed, and even then, tweaking my code made at least as much improvement.As regards codespace, this is rarely an issue for me as my code is usually small, and has only been a limitation on tiny 8-bit devices - I usually only see a few % difference on larger devices.Given the "need" for a paid version, Microchip's strategy of limiting optimisation (and not trying too hard to protect it) is greatly preferable to approaches taken by other manufacturers - limiting code size, device support or time-limitations.

author: woofy
author_rank: Frequent Contributor
timestamp: May 17, 2023, 08:42:15 am
content: Yes, there was no "C" in the original parts, they were all NMOS devices. The PIC16C55 was the first with the CMOS process.One version of the 1650 (GI TV1650) was used used in teletext/viewdata chipsets.Back in those days EMM-semi (USA) and Intermetall (GMBH) were second sources.

author: woofy
author_rank: Frequent Contributor
timestamp: May 17, 2023, 09:08:44 am
content: Quote from: mikeselectricstuff on May 17, 2023, 08:32:15 amI also had licenses for the compilers, now dropped. I never had a situation where the speed or size difference beyond -O2 made it anywhere near a deal breaker. So now I set -O2 and forget about it.

author: EEVblog
author_rank: Unknown
timestamp: May 17, 2023, 12:10:10 pm
content: Quote from: zilp on May 17, 2023, 05:37:22 amImpossible to know long term, but it's worked for them for 30 years, so who's to argue.

author: EEVblog
author_rank: Unknown
timestamp: May 17, 2023, 12:14:23 pm
content: Quote from: AndyC_772 on May 17, 2023, 06:55:55 amWhy? $44 for a month doesn't even cover an hours of an engineers time.Quotea) obviously, it's only $44, again, way less than an hour of your time.QuoteJust pass the cost on to the client.

author: EEVblog
author_rank: Unknown
timestamp: May 17, 2023, 12:17:51 pm
content: Quote from: mikeselectricstuff on May 17, 2023, 08:32:15 amAgreed, hugely preferable. And in most cases you don't need the extra optimisation. And you can rent for one month for $44 if you absoutely must have it. Again, less than hour of what an engineers time is worth.There are also third party compilers that support PIC if you like their pricing and performance better.

author: zilp
author_rank: Frequent Contributor
timestamp: May 17, 2023, 03:42:46 pm
content: Quote from: EEVblog on May 17, 2023, 12:10:10 pmWell, if it's impossible to know long term, then they don't know either. Which is probably true, strictly speaking, but at the same time, if I take that to mean that it's impossible to have any idea at all as to whether a given business decision is a good idea or not, if only the business has been doing the same thing for 30 years, that seems to be obviously incorrect, don't you think?One obvious reason to argue with that is that the market has changed significantly in 30 years, free software compilers are very mature, and much of the market has shifted and continues to shift to architectures well supported by those, ARM in particular, and increasingly RISC-V, of course, not in a small part because the economic realities of semiconductor manufacturing nowadays make 32 bit processors a perfectly reasonable choice for many applications where an 8-bitter would have been the obvious choice 30 years ago, and that's what those compilers were built for (Hurd/Linux/Free/Open/NetBSD on x86/SPARC/MIPS/ARM/whatever with all the application software on top of it).Still agree, though, that it's much better than code size limits and that sort of thing ... but then, I wonder whether that isn't actually acknowledging exactly that it's not a winning strategy to erect barriers to using their actual core product? To the point where I wonder whether this doesn't undermine the supposed goal of making dev tools "not a cost center", when the limitation is so little of a limitation that noone buys the license anyway ... except for the 10 big customers who have determined that using a 3 ct cheaper part in their 10 million pieces per year product is worth it, gaining their dev tools department 5280 USD of revenue per year to pay their engineers? I mean, I am obviously making up the numbers, but it just doesn't seem like they think they have much price setting power there (that wouldn't cut into their revenue elsewhere).

author: hans
author_rank: Super Contributor
timestamp: May 17, 2023, 04:22:02 pm
content: Many limitations age poorly. I think TheAmpHour discussed Keil's (or was IAR?) 32K C/C++ compiler for ARM. "When are you ever going to write more than 32K of code?"Like, every day? If a printf() takes 10kB of FLASH, bolt a SD card driver and some magic sauce, and you're over 32K. ESP32 Arduino executables start at 250KB IIRC, as it can include RTOS, WiFI, ethernet, audio, USB, etc.I agree with Steve that in-house supported tools means more control over product life cycle is good. It is excellent to exactly know what tools and compilers you need from day 1. On ARM this is much more a mess or "DIY". But the reason why tools "must" cost money sounds more like an internal managerial side-effect that's exposed to the outside world. If the compilers were made free and a new manager is going to cut "costs" in a core aspect of product support, then that manager should be fired. Delivering "support" costs money, until it generates new sales in the future if you do it well.Microchip seems to do very well despite their closed eco-system because its well documented and supported. But it also sounds like a risk judging by some of the answers. A hobbyist or small business could get a bigger/faster part if necessary. But if products need to excel in certain areas, then that is not always the solution. Optimization O3 is not only for higher Coremark scores, but also longer battery life (race to sleep). Optimization Os could mean more features and a longer product support cycle, which is also part of Microchip's focus on not obsoleting products. It's not always about the cheaper devices when boards get assembled.Now the impact of these optimization levels is core part of the compiler marketing. I've found Microchip's compiler to be very slow, since so far as I can tell, it's compiling the program twice internally to give an accurate figure of how big the executablewouldbe if you paid for optimization -Os. A compile with XC32 can take literally a minute for a project I did the other day, while it was completed within 5s using MIPS GCC. The newer MIPS GCC also delivered smaller and faster code. And supports the latest and greatest language features of e.g. C or C++ (like constexpr). This closed ecosystem also reflects a closed-mind approach on e.g. a lack of C++ for PIC24 devices (which are more than capable of utilizing it, see AVR/Arduino). Likewise, there is also no MPLAB X IDE or compiler builds for non-x86 machines, even though Apple seems to be selling tons of M1/M2 Macs and ARM PC's are emerging more and more. I firmly believe that if Microchip had a more open approach to their hardware tools and software toolchains, that their popularity amongst hobbyists would pick up greatly, which would then design in a chip into a product when they land their first job. Because [in general] on silicon level and documentation quality is at least as competitive as e.g. ST's.

author: JPortici
author_rank: Super Contributor
timestamp: May 17, 2023, 06:04:11 pm
content: Quote from: hans on May 17, 2023, 04:22:02 pmOf course they should be fired. However, how many times new management / bean counter focus on immediate gain to appear good to investors?

author: SiliconWizard
author_rank: Super Contributor
timestamp: May 17, 2023, 07:32:35 pm
content: Oh well, some people have no problem shelling out $8k or more for an Altium license but will whine about a couple hundreds for some other tool, implying that some tools are not worth even paying a dime for, even though they are every bit as necessary. Making CAD software is certainly more profitable than making compilers.As some have said, with a license you don't just get more optimizations, you also get support, which can be invaluable.Otherwise you can also turn to ARM stuff and use plain GCC as some other vendors provide and spend days or weeks on issues that you'll flood forums with.Not sure the latter is more efficient or costs less in the end, but it's an approach that's all the rage now.Obviously there are other reasons than cost for preferring free/open-source tools, but heck, apart from XC8 (I think), Microchip's compilers are open-source.

author: peter-h
author_rank: Super Contributor
timestamp: May 17, 2023, 07:35:30 pm
content: Does anyone remember the original General Instrument?They made a chip called AY-something which had the most weird instruction set. 4 bit, IIRC.

author: woofy
author_rank: Frequent Contributor
timestamp: May 17, 2023, 08:37:16 pm
content: I don't know of any 4-bitters, but they did the AY-3-8910 sound generator which was very popular. The only dead-end processor I'm aware of was the CP1600, a 16-bit PDP11 clone.

author: EEVblog
author_rank: Unknown
timestamp: May 18, 2023, 03:49:03 am
content: Quote from: JPortici on May 17, 2023, 06:04:11 pmA new manager/CEO's job is not to think long term, it's to immediately correct problems that the previous manager/CEO was booted for. So short term thinking is guaranteed.e.g. if a CEO got the boot because the company's financies are in the toilet, cutting non-functioning cost-centres is their first priority. Everything else be damned.

author: EEVblog
author_rank: Unknown
timestamp: May 18, 2023, 03:51:34 am
content: Quote from: zilp on May 17, 2023, 03:42:46 pmIf you are the most profitable microcontroller company in the business and everyone else is falling over themselves to offer free tools, then perhaps it's not a smart move to join a race to the bottom.

author: peter-h
author_rank: Super Contributor
timestamp: May 18, 2023, 06:21:46 am
content: QuoteI suspect it was a mask programmed micro, as they all were in the old days. I remember reading the DS and wondering HTF do you program this thingIn the end we did nothing with micros and after a few years went for a Z80...Microchip bought a compiler from Hitech Software in Australia. They took over the company. They were selling it (or giving it away?) until quite recently. I still sell a couple of user programmable protocol converters which use that compiler (Z80 and H8/300) written by Clyde Smith-Stubbs; I bought a license for a large number of copies. I wonder if he's still around.

author: zilp
author_rank: Frequent Contributor
timestamp: May 18, 2023, 07:01:46 am
content: Quote from: EEVblog on May 18, 2023, 03:51:34 amIf you are the most profitable microcontroller company in the business and everyone else is falling over themselves to offer free tools, then perhaps it's not a smart move to ignore changes in the market.I mean, that's just a truism, isn't it? *Perhaps* it's not a smart move to do the same ... *perhaps* it is.Other than that, any logic of the form "if the most profitable company in business X is doing Y, then not doing Y would be less profitable" is just obviously fallacious? For one, even Microchip in particular has changed how they were doing things, at times when they were the most profitable µC company--by that logic, those changes made them less profitable. Which might well be true for some of them, obviously, but chances are that they simply recognized at some point that they were moving in the wrong direction, and so they corrected course *in order to stay profitable*.Also, it's not really a race to the bottom if all you are doing is reducing a price that makes presumably negligible contributions to the bottom line in order to reduce friction for your (potential) customers using your (core) product. After all, the point isn't to reduce the price on dev tools in order to outcompete others in the dev tools market, it's to remove friction that potentially costs the customer much more than the licensing costs, therefore creating a disincentive that isn't worth it.

author: JPortici
author_rank: Super Contributor
timestamp: May 18, 2023, 07:19:42 am
content: Re: PlatformIOhttps://www.microchip.com/forums/m1221852.aspxIt requires the experimental XC16 recompile to enable C++ (man i whish i could use C++ with dsPICs sometimes)this guy also figured out how to bypass MPLABX IPE (you still need to install it to get the script files though)

author: peter-h
author_rank: Super Contributor
timestamp: May 18, 2023, 07:31:14 am
content: QuoteI agree.Things have changed over say the last 20 years. Back then people paid £450 for a C compiler. I sold loads of them. Today they tell you that is a ripoff and they want it either for free or for £50 or something like that. People also resist floating licenses and such like.

author: hans
author_rank: Super Contributor
timestamp: May 18, 2023, 07:34:24 am
content: @others. All fair and good points. I'm not daring to complain too harshly about the pricing scheme. It's still affordable if need be.However, in a world of free GCC/Clang compilers that is used for absolutely everything, a paywall is a bit of a standout.Now it is still a "good" paywall as it ages well. In retrospect, if someone is making their money with the product features I listed (battery life, limitless feature creep for customers), then its fair that they can also afford a compiler license. Indeed Altium is much more expensive and seems to sell like hot cakes in the hardware design world.However, I'm most fearful that this limits the speed at which innovation occurs. For XC16, they could upstream their modifications specific to the PIC24 core, so we could enjoy a C++ compiler that is up-to-date with GCC 12 etc. As JPoritici says, that could allow PlatformIO to be integrated which opens up the world for all the Arduino libraries (if they don't do anything too crazy with non-portable code) to be used on those microcontrollers. Some of those dsPICs are dual-core at 100MHz, so would give the average Cortex-m3 a run for its money.For XC32, as far as I can tell they took MIPS GCC which already supports e.g. MIPS4K and added their sauce on top which includes start up scripts, a bootloader for their dual FLASH region structure, and all the necessary interrupt prologue. It's actually a benefit they used MIPS GCC, as there are also Linux builds made by MCP for PIC32MZ DA, and using GCC to compile Linux is almost a must. The bootstrapping for their parts is absolutely more effort than for the average ARM core, but less than for a RISC-V core. And in a market where RISC-V cores are exposed to the user as CPUs that can run code, we'll have to see how things evolve over time.Perhaps I'm not knowledgeable at these (business) things at all. But personally I'm a bit surprised that charging money for compiler licenses is worth the hassle. The argument of a compiler license being worth up to 1M$ if a customer can save 10cts/each on 10M parts --- they still charge them only several k$ (multiple licenses) as far as I can tell. Say those PIC parts costs anywhere between 80ct and 90ct, then that's say 10k$ licensing fees on a MCU order of 8M$+. Is it really worth to penny pinch <1% in licensing fees if a customer is already buying millions of $ of PIC parts? Maybe these customers don't care at all and that's why they do it. But it does hurt the middle or bottom of the market.

author: JPortici
author_rank: Super Contributor
timestamp: May 18, 2023, 07:43:22 am
content: Quote from: peter-h on May 18, 2023, 07:31:14 amAnd yet, i have a friend that works with STM32 and making good money on it. He uses Keil and doesn't want to touch anything anymore that has eclipse or GCC.i sort of agree with him. Free stuff is nice for your personal projects because it's your hobby, or when you want to get your feet wet with new things.

author: peter-h
author_rank: Super Contributor
timestamp: May 18, 2023, 07:58:45 am
content: If he has a license-free tool which works, and he is up to speed on it, then it makes sense to continue using it. For example I have a 1995 PCB design program (Protel PCB 2.8 ) and need it because I run products for a long time, and often need to generate updates and new gerbers etc. It used to have a dongle (I bought it for > 1k) but it has been patched out.The problem starts when a tool has some kind of lock on it, and you need to run it for many years, or after many years. Almost certainly, that will break. Whereas a free unlocked tool can just be archived with the project, in a VM if necessary.This is off topic for Microchip however; it is a general thing

author: AndyC_772
author_rank: Super Contributor
timestamp: May 18, 2023, 08:10:54 am
content: Quote from: peter-h on May 18, 2023, 07:58:45 amExactly. If I send a binary to a customer that requires software I no longer have the use of a month later, that's a risk.Dave's right to some extent; I could, in the near future, just rent it again for each update, and add the cost to my bill. But that assumes that the same month-by-month licensing terms are still available when the code needs updating a couple of years later. I don't want to risk discovering that a couple of hours' worth of software tweak also needs a four figure sum spending on a compiler, because <insert excuse about middle managers at Microchip here>.I won't risk putting my customers in that position.The irony here is I do use paid-for tools for STM32; I use CrossWorks which is absolutely excellent, probably the best £1000 or so I ever spent on tools and equipment, and the difference in speed, features, usability and reliability over MPLAB X is absolutely comical. Moreover, since it's a one-off payment for a perpetual licence, I know for certain that I'll still have it available to me for the entire commercial lifetime of my code.

author: nctnico
author_rank: Super Contributor
timestamp: May 18, 2023, 08:31:07 am
content: Quote from: EEVblog on May 17, 2023, 12:17:51 pmTry that for a project that needs to be supported for 10 years. Then the extra cost adds up to 5k dollar. For many projects I do that is a significant extra cost which adds no value to the customer and hence they won't pay for it. I prefer to put that 5k into my pension fund. I have never used a paid compiler ever in my entire career. Whatever tool which does not have to be bought , allows me to end up with more money in my pocket.For other cpus GCC id free and works well so why even bother? The comparison with the datasheet department making no money is very on point. It is a nonsense argument.

author: zilp
author_rank: Frequent Contributor
timestamp: May 18, 2023, 10:29:32 am
content: Quote from: JPortici on May 18, 2023, 07:43:22 amSomehow the interesting part is missing from this comment, isn't it? I.e., *why* he doesn't want to touch anything that has eclipse or GCC, and *why* you agree with him.The fact that free stuff is nice for hobby use and the like ... doesn't say anything about whether it isn't nice for professional use, does it? And the mere fact of having to pay money obviously can't be the advantage, can it?

author: EEVblog
author_rank: Unknown
timestamp: May 18, 2023, 11:30:14 am
content: Quote from: AndyC_772 on May 18, 2023, 08:10:54 amAssuming you absolutely need the highest optimisation level. Otherwise just use the free version. Or if you prefer a perpetual paid tool, there are third party compilers you can buy.

author: EEVblog
author_rank: Unknown
timestamp: May 18, 2023, 11:34:18 am
content: Quote from: zilp on May 18, 2023, 07:01:46 amExactly, you don't know, so why criticise them for continuing to do what has demonstrably worked well for them?You don't have to like it, and that's fine, feel free to chose another vendor. But I see the criticism here as just personal desires to get it for free just because many others do it, rather than a valid business argument.

author: hans
author_rank: Super Contributor
timestamp: May 18, 2023, 12:15:01 pm
content: QuoteFree as in free beer, or free speech?The free-beer compiler (without optimizations) is plenty for what it does. And if more is needed, the paid compiler is reasonably affordable. From a business perspective this is the easiest calculation to make. However, as I stated, I doubt whether it's of much value to sell a few k$ (max) of licenses to customers that buy literally tens of k$ of chips.But you cannot pay to get the free-speech away. If one is happy with a closed ecosystem, then that's fine. But for engineers that puts down certain requirements (like C++ support in a 16-bit project, or newer compiler features for 32-bit parts), then it removes Microchip's PIC parts as a potential candidate. A business isn't as quickly going to fuss around with unofficial XC16 compiler builds or manually pulling MIPS GCC from upstream. Those open source projects are too unmaintained as of now to be worth the time.I think this discussion is largely a hardware vs software engineering perspective. In hardware world, every tool costs money, and dare I say that not every hardware engineer likes to spend a ton of effort/research on the most sensible tools that can be used in the long run. So an "all-in-one" package is arguably best for those use-cases. In the software world, every developer keeps a close eye on any dependency a project has to include. Engineering debt in software under active development is a huge burden. And these include the tools being used alongside large libraries or frameworks.I regularly read stories here about spinning up old VMs to continue working on an old embedded firmware project. Those are the horrors of needing legacy compiler versions that only work on EOL operating systems.Probably no company roadmap is going to give a rat's ass about academia, but in many of the papers that I read, I seldomly see a PIC part being used. The last one I saw was from 2016, where a PIC12F was programmed to serve as an OOK wake-up radio. I find this fascinating, as I'm sure that PIC is/was a very popular part family used in education, and probably the first MCU that many learned to program on (e.g. a PIC16F84, PIC16F877 or PIC16F628A). But that is many moons ago. From what I can see, MSP430 is incredibly popular, but so is AVRs (even used in the Arduino form factor), ARM (in particular STM32) and ESP32's. Now AVR is part of Microchip so that's their slice of the cake; but I think that success can be largely contributed by the works of the pre-Microchip era, and in particular because of projects like Arduino, avrdude and avr-gcc. Atmel always gave good vibes to the people that liked writing firmware, even 1 - 1.5 decade ago.But at this point I'm making arguments out of sentimental value, and indeed, that's of no use in doing business. I just meant to say that these "free-speech" choices often steer away people from using PICs (again).

author: zilp
author_rank: Frequent Contributor
timestamp: May 18, 2023, 01:19:40 pm
content: Quote from: EEVblog on May 18, 2023, 11:34:18 amThat's not what I said, though. I just showed why your argument doesn't say anything substantive, not that I don't know.Quote from: EEVblog on May 18, 2023, 11:34:18 amI am not criticizing them, I am simply explaining why I think that it's a bad business decision. And also, it absolutely has not demonstrably worked well for them. That's what I am trying to explain to you: The fact that some business is doing X and that that business is successful, says just about nothing about whether X is what makes them successful. At best, it says that X isn't bad enough to make the business fail, that's it.This error in reasoning is also more formally known as cum hoc, ergo proper hoc, see alsohttps://en.wikipedia.org/wiki/Correlation_does_not_imply_causation.Quote from: EEVblog on May 18, 2023, 11:34:18 amWell, but then you are simply ignoring my (and others') explanations as to why this seems economically questionable, while at the same time inventing a supposed desire on my part to get their software for free? That doesn't mean that I didn't make those arguments, and it also doesn't mean that I actually desire to use their software, for free or otherwise.Your counter so far boils down to "they are successful, therefore, whatever they are doing can be assumed to be a good business decision" ... which just is an incredibly weak argument, both as a matter of logic, but also evidently, given that plenty of once (longtime) successful businesses have managed to fail, and often to fail spectacularly, which obviously means that quite regularly successful businesses at some point do indeed do things so horribly misguided that they end up ending the business, and thus, obviously, there must be way more cases where similarly successful businesses make decisions that hurt them, to some degree or another, but not quite bad enough to make the whole business come down.I.e., it's just completely normal for successful businesses to make bad business decisions, while being and staying successful ... just not as successful as they would be if they had decided differently.

author: EEVblog
author_rank: Unknown
timestamp: May 18, 2023, 02:18:14 pm
content: Quote from: zilp on May 18, 2023, 01:19:40 pmI honestly don't care that much to argue it. I just understand Sanghi's answer and don't have a problem with it. I think it sounds quite a reasonable explanation actually.And given that he very successfully ran the company as CEO for 31 years, it's likely he has a tad better insight than us punters.

author: madires
author_rank: Super Contributor
timestamp: May 18, 2023, 03:17:41 pm
content: Quote from: hans on May 18, 2023, 12:15:01 pmAnd with the upcoming EU regulation for product lifetimes we'll experience more of that. But the problem is much bigger than just compilers. There are tons of legacy systems which are configured/programmed via proprietary programs, e.g. PBXs, network elements, all kinds of controllers and so on. In many cases the manufacturer stops updating the configuration program after a few years (it doesn't generate profit) and then you need a VM with WinXP to be able to run the old configuration software in order to change a ring group in the PBX. I could tell you also a lot of horror stories with Java based config tools requiring the setup of a dedicated environment. In other cases the configuration software is well maintained but suddenly drops support for older devices. Proprietary software can become a large liability in the long term.

author: zilp
author_rank: Frequent Contributor
timestamp: May 18, 2023, 03:25:05 pm
content: Quote from: EEVblog on May 18, 2023, 02:18:14 pmWell, he probably has a better insight into the inside of the company, which is why I agree with hans' observation that this sounds like "internal managerial side-effect that's exposed to the outside world".Whether he has a better insight into the market, and in particular into potential customers who aren't (yet), doesn't seem quite as obvious. After all, a common way for businesses to fail is that they fail to adapt to changes in the market, where they continue to serve established customers well, but fail to notice cultural or technological shifts in sections of the market that they thus lose to competitors, only to notice the problem once a significant portion of their potential future customer base is already comfortable in somene else's ecosystem while their established customer base dies off, or, in a business context, retires.I mean, not that I am seeing Microchip going under any time soon, as they obviously have other strengths, and this particular limitation also isn't all that bad, all things considered, plus, quite a few of their chips can work with free (as in freedom and as in money) toolchains just fine, with the most obvious one being all the Arduino stuff that they effectively acquired with Atmel ... but, yeah, I am not convinced that this in particular is a good business decision, nor that his explanation makes a whole lot of sense, other than possibly showing an internal problem with their management when the CEO can't prevent what he considers a bad business decision (i.e. closing down or splitting off the dev tools department) other than through the convoluted construct of trying to make them a profit center. I mean, that would make more sense as a strategy if the department head tried to prevent a hare-brained CEO from closing down the department, but not really this way around.

author: peter-h
author_rank: Super Contributor
timestamp: May 18, 2023, 03:34:40 pm
content: QuoteI am 100% confident it will have no effect whatsoever. Really easy workarounds. Brussels loves to boast about their "consumer champion" stuff but most of it passes by.Also such companies will find dev recruitment hard because this is a CV killerQuoteIt always was but lots of people don't care. If you work for a company as an employee, you have absolutely no interest in futureproofing anything.QuoteDoes Microchip have large OEM users? For example car manufacturers? A mfg can look after those people really well while being ritually hated on forumsI work above a KIA service centre and the other day opened up an old ECU box. It had some chips from Siemens which I have never heard of anybody using. Well, KIA bought a few million

author: globoy
author_rank: Frequent Contributor
timestamp: May 18, 2023, 03:42:30 pm
content: There's absolutely no denying Steve and Microchip's success. But I wonder if some of the decisions around tools become a liability in the long haul. We've all seen how a once dominant company can refuse to change with the times and then find themselves in trouble. Here's another opinion, for what it's worthMicrochip seems to have a lot of parts designed into deeply embedded systems that probably don't change for a long time. For example automotive components or medical devices. And these are large volume items that generate a lot of revenue. And it's probably easy for the manufacturers to evolve their Microchip based designs for different generations of products, at least up to a point (for example when fundamental things change like vehicle communication busses).But the development world has changed. It seems to me that a couple of decades ago the PIC was the *it* processor family. It was everywhere and designers could easily get their feet wet with a huge number of cheap development boards and programmers. Lots of programming was done in assembly and Microchip's tools for that were free (many competitor's tools were not free at that time). There were BASIC interpreters and even a choice of C compilers. Super easy to become proficient with the architecture(s) and there were lots and lots of people with experience. I'd guess that led to a lot of design ins.But over time it seems that the general development world moved on. Arduino came into the picture. Microchip tools became much more pricey at the same time other competitors started offering free tools. And open source provided even more flexibility. Now one rarely hears about PIC generally. It seems to have much less mindshare.As someone who has done a lot of embedded system design, including with PICs, I'd say that I found it less desirable to use Microchip products over time and it doesn't entirely have to do with the cost of a compiler (because it's generally a small part of the overall development cost). The transition to MPLAB-X, while allowing cross platform compatibility - resulted in a more klunky, slow, bloated IDE experience. And some of Microchip's debug programmers like the ICD 3 and 4 are persnickety pains-in-the-ass. During this time other vendors - like Silicon Labs - started offering Keil compilers for free in their IDEs which were based around Eclipse and somewhat less painful to use than MPLAB-X. And many people wrapped GCC or other open source tools into mostly polished solutions. It's easier than ever to learn about other micros which is a big part of them getting a design in.All this makes me wonder if future long-life designs are being created with micros not from Microchip and although Microchip has done well and is doing well now, it may have a problem in the future.

author: schmitt trigger
author_rank: Super Contributor
timestamp: May 18, 2023, 08:59:04 pm
content: Quote from: woofy on May 17, 2023, 08:37:16 pmGeneral Instrument’s another big claim to silicon fame was the AY-3-8500 all-in-one video game IC.A truly revolutionary IC.

author: nctnico
author_rank: Super Contributor
timestamp: May 18, 2023, 11:33:31 pm
content: Quote from: zilp on May 18, 2023, 03:25:05 pmYou and globoy are touching a good point here. I also noticed that PIC is mentioned far less often than it used to be during the last few years on this forum. Most seem to evolve around STM32 nowadays. I don't see customers using PICs in new designs either. And let's not rule out relative newcomers from China. Recently I have been dabbling a bit with the ESP32 and it has a really extensive ecosystem to support it with a lot of things that simply work as advertised out of the box. A while ago somebody made the point that the ESP32 is very interesting as a general purpose microcontroller due to the price point even though it doesn't have that many I/O pins. Where do you get a microcontroller with dual core >200 MHz, 8MB of flash and >400 KB of RAM for 5 dollars?It's borderline insane...OTOH, Microchip has been acquiring quite a few companies that server either a high-end niche market (Microsemi), Atmel as a well established maker of cost effective flash chips and the likes of SMSC (low quality networking chips) that gives Microchip a rather diverse & broad portfolio. They might not even need the PIC microcontroller line in order to be profitable.

author: EEVblog
author_rank: Unknown
timestamp: May 19, 2023, 01:16:24 am
content: Quote from: zilp on May 18, 2023, 03:25:05 pmBusiness can also fail (or begin a downward spiral) when they think they need to change because everyone else is, and they end up throwing away their winning ticket.Reminds me of another thread happening on here right now about how Fluke haven't updated the 87V in over 20 years. And just before that they tried to change things with the 87IV and realised very quickly that was a mistake, so they renamed it the 189 and stuck with the 87V for the next 20 years.

author: EEVblog
author_rank: Unknown
timestamp: May 19, 2023, 01:19:01 am
content: Quote from: nctnico on May 18, 2023, 11:33:31 pmI doubt that. Like he said, practically every medical device has a PIC in it, and that's a big part of the reason why their business boomed during covid. But of course that also had the unintended consequence of the medical market gobbling up all the stock and production capability.

author: EEVblog
author_rank: Unknown
timestamp: May 19, 2023, 01:24:15 am
content: I do agree that it might be a smart play to actively target the low end players and hobbyists again with the full tools for free in that space, or some other incentive.But there are now so many players in that space, the horse might have bolted.I really like the Microchip factory programmed service option. Not sure how many other players have that service radily available for everyone?

author: SiliconWizard
author_rank: Super Contributor
timestamp: May 19, 2023, 03:14:36 am
content: One big error many seem not to completely grasp - until they themselves run a business in a very competitive environment - is to do just exactly as everyone else does, because that's what seems to please the majority, and think this will make a viable business. You usually want to find your niche, even if it's a big one, rather than stick to the lowest common denominator waiting for your tiny share, if there is any left and if you're lucky.As he said, that was part of the reason they chose MIPS over ARM.Generally speaking, from the POV of the customer, the "ideal" company making "ideal" products is often pretty different from what makes profits.

author: hans
author_rank: Super Contributor
timestamp: May 19, 2023, 07:22:57 am
content: Good point. The business is still doing incredibly well, so I cant fault the leadership. But as a 'free speech' geek, I just wish it would do a bit more sometimesSteve's rationale about RISC-V is also one I agree with. Its a nice processor architecture with a great future, but perhaps for FPGAs and HW designers and not in user-programmed/facing SoCs. The extensability and freedom of the ISA means it can make things less predictable for the end user (programmer).That seems to fit exactly in Microchip's main point they excel at: simplicity and getting the job done. Factory-programming for low volume orders or programmer on the go in a <100$ PICKIT. Their docs are good and don't require an university degree to understand how the CPU starts executing code and what it is doing. Their peripherals are still managable by a single person to develop drivers for. The same cannot always be said about STM32s or ESP32s .. So in that regard they support the small developer very well.

author: zilp
author_rank: Frequent Contributor
timestamp: May 19, 2023, 07:44:49 am
content: Quote from: EEVblog on May 19, 2023, 01:16:24 amWell, sure ... but then, it doesn't seem particularly likely that Microchip has customers who use Microchip processors *because* the dev tools cost money, does it?Like, it doesn't seem like a particularly useful analogy to me to point to a company effectively discontinuing a successful product and replacing it with a different product that then potentially doesn't have the features/qualities/whatever that are the reason why customers bought the discontinued version to explain why it might be a bad idea to provide dev tools for free, given that it would seem rather unlikely that any customer has in their purchasing requirements that dev tools must cost a minimum amount X for the chips to be considered for a design.I mean, you are effectively arguing that businesses shouldn't reduce prices because a sufficiently high price could be the quality that customers are choosing the product for ... which might be true for status symbol stuff, but so far I haven't seen a purchasing department that tried to find the most expensive source for electronic components to buy from them.

author: zilp
author_rank: Frequent Contributor
timestamp: May 19, 2023, 08:21:59 am
content: Quote from: hans on May 19, 2023, 07:22:57 amBut that's no different than ARM, is it? ARM also comes in many variants, and it also supports extensions, which are also used here and there ... but that doesn't seem to be a huge problem for its adoption either?After all, there is a reason why manufacturers use RISC-V in the first place (and ARM, for that matter, and also MIPS, which might be relevant for this thread in particular) instead of some in-house design. I mean, there potentially are multiple reasons, but a big one certainly is precisely compatibility. In a way, the hard part isn't designing an ISA, it's building all the supporting (software-) infrastructure, such as high-quality compilers that support powerful languages with modern features and all that and that squeeze as much performance as possible out of the hardware ... and with ARM, MIPS, and RISC-V, you get those for free.Adding gratuitous incompatibilities to a given implementation of RISC-V would therefore run counter to the reason why a manufacturer would choose RISC-V in the first place, as they suddenly would have to start maintaining a compiler fork for their incompatible implementation, as the upstream maintainers would be rather unlikely to be interested in patches for effectively broken implementations.So, more likely would be backwards-compatible proprietary extensions that you as a developer can simply ignore if you don't need the particular benefits of that extension, and a basic segmentation based on application profile, such as versions with and without floating point support or hardware multiplication or whatever, which is actually part of the standard, so shouldn't be a huge problem for developers ... and both of those are what you also see with ARM.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: May 19, 2023, 09:45:22 am
content: Quote from: EEVblog on May 19, 2023, 01:24:15 amI've not seen this from any other manufacturer, indeed I'm not aware of anyone else that sells their parts direct in low volumes.Third-party programming services are IME way too expensive to be useful for lower-cost parts.Digikey offers programming but only within the US, because you might be asking them to program export-controlled encryption (seriously, that's what they told me). No idea what the cost of this is.There are other aspects that I think are unique to Microchip :Same IDE/programming tools, and very similar peripherals over the whole range from a 6-pin SOT23 PIC8 to a 200MHz PIC32. (It is actually possible to write code that works on 8,16 and 32 bit parts where the only change is a few config fuse settings. )Typically 3-4 package options for every part, often including DIP and large SOIC. Does anyone else do 32 bit, or USB Host in DIP?Never obsoleting anything - very important for long-life industrial applications.In most parts, very flexible peripheral pin mapping - in many cases pretty much any pin to any peripheral.Configurable logic cell, handy for when a peripheral doesn't quite do exactly what you want. I've used this to do things like generate complimentary UART signals to drive a local DMX fixture and generate WS2812 data in hardware by combining SPI and PWM peripherals.

author: EEVblog
author_rank: Unknown
timestamp: May 19, 2023, 11:10:40 am
content: Quote from: zilp on May 19, 2023, 07:44:49 amI'm not really arguing anything. I'm saying that I'm happy to accept Sanghi's reasoning, and that it's quite likely he has way more insight and spidey sense about this than us consumers.I also don't see how the only difference with the paid version is slightly higher optimisation is such a big deal. Otherwise it's all free.If the free tool was crippled in other ways then I might complain a bit more.

author: zilp
author_rank: Frequent Contributor
timestamp: May 19, 2023, 01:07:03 pm
content: Quote from: EEVblog on May 19, 2023, 11:10:40 amWell, yeah, arguing in the broadest sense of "using an argument to justify a position" ...I guess what I am wondering is this: Is your position in any way falsifiable? Like, is there anything that, if it were demonstrated to your satisfaction, would make your doubt his reasoning and/or his conclusion on anything regarding the company, apart from Microchip as a whole failing as a business?Quote from: EEVblog on May 19, 2023, 11:10:40 amBut the point is that that makes it even less sensible economically? I mean, I agree that it's probably not a huge deal for most customers ... but then, the less of a deal it is for the customers, the less incentive they have to buy licenses, so the less money they'll make from selling them, so ... why bother in the first place?Like, if they charged 3k per user per month for the base compiler, say, and they could convince people to actually buy that in significant numbers, possibly because their chips are just so good that people are willing to pay the price to use them, then I would see how that maybe would be a significant contribution to the business success, even if some customers would understandably complain about the upfront cost ... but given the relatively minor limitations and the pricing, this seems like it's only going to annoy some (potential) customers without any significant revenue to show for it, which is precisely why it seems like such a weird business decision.

author: barshatriplee
author_rank: Regular Contributor
timestamp: May 19, 2023, 03:04:28 pm
content: This is the first time I have come to know his name. Thank you for sharing.

author: EEVblog
author_rank: Unknown
timestamp: May 20, 2023, 01:24:21 am
content: Quote from: zilp on May 19, 2023, 01:07:03 pmI don't care.

author: SiliconWizard
author_rank: Super Contributor
timestamp: May 20, 2023, 03:15:11 am
content: Quote from: EEVblog on May 19, 2023, 11:10:40 amNot just that, but the source code is provided (XC16 and XC32). Granted they don't make it particularly easy neither to find the downloads, nor to build the compilers (I've done it before and it's a bit messy), but it's open. For XC8, as they bought the compiler, I don't know to what extent they could have open-sourced it anyway. Sure for XC16 and XC32, you may argue that they didn't have a choice due to GCC licensing.For a number of people, the concern is not the cost of the tools per se (for commercial dev), but the possibility that said tools could become unavailable or unusable in some way in the future.But again, the source code is available. Even if the compilers are not trivial to build, it's not impossible at all. So if/when the need is really there, a lot of people will just do that.Now the issue is again more with XC8, and in that regard, I can understand why one could shy away from Microchip 8-bitters these days. (Interestingly, many only think of 8-bit PICs when thinking about Microchip, while they have a wide range of 16-bit and 32-bit MCUs.)The only open-source compiler that has been half-maintained is SDCC, and AFAIK, while it works great for other targets, it's never been all that great for the 8-bit PICs.One thing that has become really annoying to me is Microchip's stubbornness about using their own ICSP interfaces on most of their MCUs instead of a standard JTAG (or SWD) that would allow using standard JTAG/SWD adapters and tools. I think only their PIC32 series have a JTAG interface, but I'm not even sure that MPLAB supports any JTAG adapter. So you're basically stuck with their ICDx/PICkit stuff. But that may be part of their overall strategy, so.

author: JPortici
author_rank: Super Contributor
timestamp: May 20, 2023, 06:42:22 am
content: Quote from: zilp on May 18, 2023, 10:29:32 amwe both have a complete dislike of the eclipse+gcc combo. It comes from when we started out about 10 years ago when setting up STM32 toolchains on windows was either pay a lot for Keil and have a working setup out of the box, or fiddle with guides you find on blogs and somewhere else, do this and do that without explanations. Guides were always outdated because every month something changed in eclipse and broke the whole process, you had to guess what to change because when asking for guidance the answer was in the tone of figure it out yourself.GUI itself for creating projects, register view and so on changed at least three times in the meantime, and you had to do a bunch of manual setup every single time you created a new projects.We like installers and "just works", we don't like it when setting up projects and toolchains become a job on itself.Also OpenOCD. I don't understand how people can mock the pickit3 and then praise openocd probes. I've used it very little but had far more problems, hangs and time wasted.It doesn't help that we both absolutely hate the GUI of eclipse, their UI choices and many little things you have to configure every time you install or update it. It's not a surprise that Qt Creator is an IDE i absolutely love, and while it's actually eclipse under the hood, it looks nothing like itFrom time to time i install eclipse again, while it's far more stable in both the installation process and the program itself, i still find it atrocious. Luckily i can do vanilla C/C++ in Qt Creator as well (and before that i was using vanilla netbeans, because i like it so much more)Obviously i use MinGw as a compiler so it's not a dislike of GCC per seQuote from: SiliconWizard on May 20, 2023, 03:15:11 amyou can say it's complete garbage for PIC16. It may be okay on trivial software, but the quality of XC8 when you start writing some serious software using clean and concise code (and not trying to be too "smart" and trick the compiler in producing a specific assembly pattern for which you should really link an assembly module, or combining several statements in one) is astounding.Re: JTAG, yeahAll new 16bit parts (since 2018 i think) and most dsPIC33E, all 32bit parts and i think also the new 8bit, at least the PIC18 Qxx series have JTAG, but i don't think any of those besides the PIC32 can be programmed using it (ICSP over JTAG). There was the possibility mentioned in old docs, but also erratas that said that programming through JTAG is not functional. I don't know why.re: Sources for the compilershttps://www.microchip.com/en-us/tools-resources/archives/mplab-ecosystemthis has been the link for some years, now it's easy to reach from within the website, in the past it was really buried. Or you google "microchip download archive".Notice how microchip provides EVERY version of their tools, even the old PLIB and MLA. MCC, you can also have all versions of the components to download/mix and match.

author: nctnico
author_rank: Super Contributor
timestamp: May 20, 2023, 08:44:52 am
content: Quote from: EEVblog on May 19, 2023, 01:19:01 amBut for how long? Connectivity is a big thing nowadays and none of the Microchip products I'm aware of really caters to that market. One of my current projects could do with a super simple microcontroller IF the customer didn't want connectivity... 99.9% of the firmware is dealing with connectivity, 0.1% is for the functionality.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: May 20, 2023, 09:04:04 am
content: Quote from: SiliconWizard on May 20, 2023, 03:15:11 amPretty much all low-end MCUs use their own protocol. Microchip's is documented, and there are plenty of third-party and clone programmers so not a big deal.Flash programming via JTAG is hardly standardised

author: hans
author_rank: Super Contributor
timestamp: May 20, 2023, 09:08:40 am
content: Quote from: SiliconWizard on May 20, 2023, 03:15:11 amThere is a XC16++ project on Github that goes along this route. It pulls the source files from microchip, builds it but with g++ executable enabled, and then needs some extra bootstrap code in order to make class initializers work properly. I'm not sure if the last step is included in that project.It's not rocket science as it's mostly standard GCC stuff. But in a commercial environment, I think most companies would only dare such a journey if they really need to. I'm not actually sure about the licensing terms. Like, can you download Microchip's GCC code, remove XLCM, and then put those EXE's and alike on Github for people? Hmm..QuoteI'm not too fussed with the ICSP interface. JTAG, SWD, ICSP, AVR PDI interface, etc. -- these are all just buses that can read/write memory on the target micro, and control some registers to handle code debug. SWD is proprietary from ARM, so I'd rather have only 2 lines from ICSP even it's non-standardized. If you need a dongle, I think the newer J-Link devices support ICSP for PIC32.I'm much more interested what happens at the other end. It's not hard to use Microchip's compiler outside of MPLAB X. This makes usage within CMake and other command line environments possible. But if I need to debug code, what options do I have? AFAIK, only MPLAB X. But that uses it's own build/project system, so I can't exactly transplant program images between them.Most GCC IDE's expect that there is some GDB server available. But Microchip doesn't have one. I think JLink has one, but until recently I had an older JLink Edu that didn't have ICSP.Expanding to other targets requires a driver for the FLASH controller and CPU core debugging registers. As mike says, these are documented to some degree for PICs, so it would be feasible. Many moons ago, someone wrote aGDB bridge for PICKIT2/3/et al. and PIC32MX series. But I never got it too reliably work back then. I think this is already over 10 years ago. I've been contemplating this idea from time to time, but then again, I don't often use Microchip PICs nowadays to warrant (probably) weeks of dev time to figure this stuff out.The last project I did with Microchip PIC32 was developed in CLion, and then used their proprietary commandline debugger that could atleast give me a PC location whenever a program failed due to some kind of assertion check. The rest was just guessing. It worked for that particular project, but it was not particularly complex stuff (and 95%+ unit test coverage also helps).

author: zilp
author_rank: Frequent Contributor
timestamp: May 20, 2023, 10:37:13 am
content: Quote from: hans on May 20, 2023, 09:08:40 amYeah, that's the point of the GPL, that your freedom to modify and distribute the software can not be limited by distributors.

author: zilp
author_rank: Frequent Contributor
timestamp: May 20, 2023, 11:29:41 am
content: Quote from: JPortici on May 20, 2023, 06:42:22 amI mean, nothing against easy setup ... but at the same time, at least if you are serious about developing a project, it seems like a rather minor thing, given that set up of the environment isn't really something that you'd need to repeat all the time?Quote from: JPortici on May 20, 2023, 06:42:22 amWell, I am not a fan of eclipse either, or big IDEs in general, really, so ...Quote from: JPortici on May 20, 2023, 06:42:22 amReally, that was the part that I was wondering about most, as I'd think that GCC is a pretty good compiler, so I was surprised that someone would want to avoid GCC in particular ...Though I would say that really it's just a bad idea in general to bundle the device toolchain and the development environment, or more precisely, the "device tooling" and the "user interface". Like, I write code in a bunch of languages, and some, like C,. for a whole bunch of targets, from Linux servers to 8051 embedded stuff, and I have my editing environment set up for my needs, I am familiar with it, and it's just annoying when some µC vendor thinks that I'd want to use their preferred user interface to edit code for their processor, rather than what I am familiar with, and what's already set up for my needs. And all of that even moreso, of course, when you are sharing code for multiple targets ...

author: JPortici
author_rank: Super Contributor
timestamp: May 21, 2023, 06:58:48 am
content: Quote from: zilp on May 20, 2023, 11:29:41 amOne point that maybe didn't come across was repeteability of the whole operation, and support whenever there was a problem.In the past (but also in the present from what i can see) most assistance in eclipse+gcc comes from "the community" which isn't always great to use an euphemism. It's good when you happen to have the same problem as someone else, but when it's something a little more obscure... let me say that keil support is there (because there are people paid for it) and microchip support is there (because there are people paid for it).

author: zilp
author_rank: Frequent Contributor
timestamp: May 21, 2023, 10:04:05 am
content: Quote from: JPortici on May 21, 2023, 06:58:48 amAs in, the same version behaved indeterministically? Or just that stuff changed between versions (which is how I understood your before)? The former would be pretty bad--the latter, well, really depends, I guess, there might have been good reasons for that, though it's still annoying, of course.Quote from: JPortici on May 21, 2023, 06:58:48 amWell, but did you try paying for support for eclipse? As otherwise this seems like a pretty apples to oranges comparison?! Like, why would you hold it against eclipse that good support costs money when the good support for Keil wasn't exactly free either/when Keil's free community support presumably isn't significantly better than the free community support you get for eclipse, if it exists at all?! And as for the free tools from Microchip, you obviously pay for the support, too, when you purchase the parts.After all, the point of Free Software isn't that people shouldn't be paid for their work, the point is to avoid lock-in ... which you still get if you pay for support.

author: nctnico
author_rank: Super Contributor
timestamp: May 21, 2023, 10:43:49 am
content: Quote from: zilp on May 21, 2023, 10:04:05 amEclipse workspaces are not 100% compatible between versions (although newer versions can convert the older versions). However, you can easely install several Eclipse versions on the same computer as each version has it's own directory with plugins & settings. So all you need is to specify which version you are developing with. But the same goes for the compiler. When working with others, I always make it a point we all use the same compiler so at least we won't run into the situation where something doesn't work because it is compiled differently. This applies to any set of tools (either commercial, free or open source).