New Complete Hardware+Software Kit for C Cortex-M Programming - Page 1
Forum section: electronics / general

author: richardman
author_rank: Frequent Contributor
timestamp: October 05, 2015, 08:06:34 am
content: Hello folks, while this is my first post here, rest assure that I used to be very active in the "dinosaur age" of comp.sys.embedded, AVR Freaks, various HC12, 430 lists etc. and I am still doing the bulk of the compiler development and answering support emails! Anyway...We have now produced a new complete hardware and software kit, the JumpStart MicroBox, for getting started with Cortex-M programming.Are you a blogger for an electronic forum or something similar? If so, email us and we will send you a complementary kit.From a beta tester: “JumpStart API allows you to focus on the application coding and not ARM coding. In a few minutes I had a configured and working skeleton for my hardware.” – M. BarberEverything you need to start programming the powerful Cortex®-M in C immediately is included in the JumpStart MicroBox kit:STM32 Cortex-M0 Nucleo board from ST with ST-LINK/V2 debug pod.Arduino Compatible Education (ACE™) Shield: LED matrix, OLED display, RTC, micro-SD cartridge, crypto-chip (US only), etc.JumpStart C for Cortex®-M compiler license and the new JumpStart API Libraries"C for Everyone - The JumpStart Guide to C" (ebook) a complete tutorial textbook-style reference to C. Unless you are a C Wizard, there is probably information in here that you have not yet encountered.Step-by-step tutorials and example programs$99, volume discount availableIn creating the kit, we also created the JumpStart API to remove the tedium of low-level initialization and I/O register coding, without blocking users' access to the powerful features provided by the device.For example, normally for the STM32F device, in order to use the EXTI interrupt, you have to:Initialize the system clock.Enable power to the GPIO port.Configure the GPIO port pin as input.Enable power to the EXTI (External Interrupt) subsystem.Enable power to the SYSCFG subsystem in order to modify the EXTI configurations.Configure the EXTI to trigger on the specific GPIO port and pin.Configure the NVIC (Nested Vector Interrupt Controller) to enable interrupt for the EXTI.Write an interrupt handler, as EXTI interrupts are shared, you have to be sure to process only the interrupt that is for this EXTI.Modify the system vector table to call the interrupt handler.This would take several pages of code and careful reading of the data sheet. The JumpStart API JSAPI_EXTI class object takes care of all these details with just a couple of calls, including allowing each EXTI object to have its own interrupt handler instead of a shared one.Our new website:http://c4everyone.comcontains all the info. Please feel free to email merichard@imagecraft.comor reply below if you have any questions.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 12:24:17 am
content: I should add that the offer for complementary kit is opened to faculty members of universities and colleges too. So if you are one or taking a class at a higher educational institution and know someone who may be interested, please contact me.Thank you.

author: ez24
author_rank: Super Contributor
timestamp: October 06, 2015, 12:42:32 am
content: FYIhttp://c4everyone.com/Book not available until end of Oct per website

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 01:06:30 am
content: Quote from: ez24 on October 06, 2015, 12:42:32 amCorrect. If you purchase or get a complementary kit before then, I will send you a beta-PDF.Book is done, we "just" need to do the ebook conversion.Thanks for commenting.

author: ez24
author_rank: Super Contributor
timestamp: October 06, 2015, 01:53:58 am
content: Here is an interesting site I found today (via another post).https://www.eewiki.net/display/microcontroller/HomeSeems this is run by Digit-Key and my guess it is on products they sell. So maybe you should contact Digit-Key to sell your product and see if you can list something on their eewiki site. My guess they would appreciate that, so see what others are doing there to get an idea.

author: ez24
author_rank: Super Contributor
timestamp: October 06, 2015, 01:59:48 am
content: Another thing.I think this is posted in the wrong area. I think the area you should be ishttps://www.eevblog.com/forum/microcontrollers/the way this forum works if you do not get any replies in a couple of days your post is probably dead. If that happens start a new post in "microcontrollers". There are some very smart people that hang out there so I would like to see what they think of this.

author: miguelvp
author_rank: Super Contributor
timestamp: October 06, 2015, 02:06:27 am
content: Well, it's a for sale item posted by c4everyone themselves (or imagecraft embedded systems), so posting on the micro-controller forum might not be the best place, but it's fine here in the Buy/Sell/Wanted.That would be different if you (ez24) or other member purchased it and talked about it in that section of the forum.

author: ez24
author_rank: Super Contributor
timestamp: October 06, 2015, 02:15:35 am
content: Quote from: miguelvp on October 06, 2015, 02:06:27 amWhat do you think of the idea that I post this question in "Microcontrollers":"What do you think of this microcontroller learning kit"Then put in a link to their web site?There are some really smart guys over there and I would like to get their opinion on this.Thanks

author: miguelvp
author_rank: Super Contributor
timestamp: October 06, 2015, 02:25:00 am
content: I think that would be fine since you are not the vendor.

author: ez24
author_rank: Super Contributor
timestamp: October 06, 2015, 02:28:23 am
content: Quote from: miguelvp on October 06, 2015, 02:25:00 amthanks

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 04:14:53 am
content: I originally posted this on the Microcontroller + FPGA subforum, but a member (karel) told me to post this here.

author: zapta
author_rank: Super Contributor
timestamp: October 06, 2015, 04:58:26 am
content: Windows only. Oh, well...

author: neslekkim
author_rank: Super Contributor
timestamp: October 06, 2015, 06:33:39 am
content: Do aynone know about that Imagecraft compiler from before?And, I couldn't find any eevblog coupon here?

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 06:53:04 am
content: Quote from: neslekkim on October 06, 2015, 06:33:39 amIndeed, we are going to add a section on the site of "Our Loyal Customers" or something. We have at least 4 active users that have used different compilers from us since the mid 1990's! How many compiler companies can claim that?!re: eevblog coupon - I am new to the site, I would love to offer coupons etc., probably not much on the $99 kit (it's pretty bare bone profit already), but I will think of something. Is this "coupon" an eevblog feature, or just something I can make up? (which I can for our shopping cart - use this code for $x off)?Thanks

author: bitseeker
author_rank: Super Contributor
timestamp: October 06, 2015, 07:20:49 am
content: Quote from: richardman on October 06, 2015, 06:53:04 amWelcome to the forum, richardman!You just make it up. Whatever works for you and your business. Different vendors do different things for EEVblog members and we appreciate it very much.

author: tggzzz
author_rank: Super Contributor
timestamp: October 06, 2015, 09:58:41 am
content: Quote from: zapta on October 06, 2015, 04:58:26 amI think the words you are looking for are "quaint", or "how very 1999", "Windows? Wozzat?". I seem to remember there being a company called Microsoft that used to sell operating systems that people actually bought.

author: neslekkim
author_rank: Super Contributor
timestamp: October 06, 2015, 12:03:55 pm
content: Quote from: richardman on October 06, 2015, 06:53:04 amHm 4 users?, I was trying to find comparisions, and reviews to see how this compiler/ide compares to others, looking around on the imagecraft site, it seems like the ide is codeblocks based?There are a tiny bit more information on the old site, but it doesn't say anything much about codesize and such, I mean, the MicroBox-NC kit looks interresting for learning, but is it only for educational institutions, or for everyone (when used noncommercially of course).Is it correct that the MicroBox kits for $99, includes book, shield and the same compiler sold as JumpStart C for Cortex, also sold for $99?

author: nctnico
author_rank: Super Contributor
timestamp: October 06, 2015, 01:27:56 pm
content: Quote from: tggzzz on October 06, 2015, 09:58:41 amGot shoved up their rear is a better way to put it. Anyway not supporting Linux for a microcontroller development kit is a bit of a fail nowadays.

author: zapta
author_rank: Super Contributor
timestamp: October 06, 2015, 05:32:15 pm
content: Quote from: nctnico on October 06, 2015, 01:27:56 pmThe IDE they are using is windows only, right? Vs. Let's say eclipse.

author: miguelvp
author_rank: Super Contributor
timestamp: October 06, 2015, 05:57:36 pm
content: What no Android IDE?Not being able to develop from my phone is a fail

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 07:07:39 pm
content: Quote from: tggzzz on October 06, 2015, 09:58:41 amMost of our users are indeed still Windows users. With the exception of the visual debugger that we added in the last couple years, there is nothing to prevent us from moving to Linux, technology wise. However, it does take development and post-support resource. It's a matter of ROI. About 3 times a year, we have an inquiry about Linux based tools,i.e., about the same frequency as inquiries of our support for 8051, UC32, etc.The biggest champion of Linux dev tools is... GCC/Eclipse based. Most commercial compiler tools, including most of the accompanying tools such as circuit designs etc. are also Windows only.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 07:22:31 pm
content: Quote from: neslekkim on October 06, 2015, 12:03:55 pmHi neslekkim, anyone can buy the MicroBox, and you are correct that it's the same price as a standalone Non-Commercial license, just have a lot more.We were the "big fish in small ponds" in the old days of HC11, CPU12, MSP430 and the AVR. We also are the compiler provider for the Cypress PSoC1 core. We also had an ARM7 compiler, even a Parallax Propeller compiler but they never took off.If you poke around the website, you will find some info. Also, if you look at archive.org, you will see our first website back in 1996.

author: zapta
author_rank: Super Contributor
timestamp: October 06, 2015, 07:27:10 pm
content: Quote from: richardman on October 06, 2015, 07:07:39 pmWindows only programs don't do well in general in the maker/hobbyist market which I assume what you try to capture with the $99.Anyway, it's your business. Just providing you one viewpoint.

author: tggzzz
author_rank: Super Contributor
timestamp: October 06, 2015, 07:39:17 pm
content: Quote from: richardman on October 06, 2015, 07:07:39 pmUm, if your tool is windoze only, surelyallyour users are windows users. Meanwhile, elsewhere on planet earth....QuoteUm, if linux users read your website and find the windows stuff but no linux stuff, do you think they would even bother to ask you? Only the dim ones would bother to ask.Generic toolmakers have a real problem justifying costs. Sometimes business drones feel more comfortable if they are paying for something, but they can also be concerned about the ability of small companies with "4 users" to survive.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 07:47:41 pm
content: Quote from: tggzzz on October 06, 2015, 07:39:17 pmDear tggzzz, 4 active users FROM 1990's. We sold tens of thousands of licenses. The point is very few compiler companies have loyal customers that stick with them since the beginning and move to new toolchains from the same company.

author: miguelvp
author_rank: Super Contributor
timestamp: October 06, 2015, 07:49:54 pm
content: 110 million windows 10 devices in just 8 weekshttp://www.microsoft.com/october2015event/en-us/live-eventPlus a lot of new cool things.So actually you could support the lumia 650 and 650 xl and actually use your phone on a dock.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 07:53:45 pm
content: Linux sales are not without cost, mainly in the forms of support. You folks are "super-users" and can build from GCC-source and may even be able to fix compiler bugs if the source is available such as the case of GCC. However, the target audience of our tools are more like hardware engineers, who do not know the cost of printf, or wonder why "long_var = int1 * int2" does not work the way they think. We can easily support our own compilers, but if a user runs into a Linux issue, we can't just say "oops, we don't really know CentOS that well, but on the Ubuntu that we test with, it works like this..."We actually did release a Linux version back in 2001 or so and that's exactly the type of problems we ran into. The world is different now of course, and we will re-evaluate our position, but regardless, we still need to have the right resource line up before we can commit.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 07:56:08 pm
content: Quote from: zapta on October 06, 2015, 07:27:10 pmDear Zapata, advice noted. Thanks.Actually, our primary goal of the Kit is a) the educational market, which is ... primarily Windows, sorry, and b) engineers who have resisted to move to Cortex-M because of the complexity of Cortex-M vs. AVR/PIC16 etc.

author: c4757p
author_rank: Super Contributor
timestamp: October 06, 2015, 08:03:56 pm
content: Quote from: richardman on October 06, 2015, 07:56:08 pmOnly at schools that don't care whether students can run the software at home. Any place that wants their stuff not to be lab-locked, including most of the engineering dept at mine, will want not Linux support (though that's nice) butMac. A surprising number of students drank enough kool-aid to believe that bringing an Apple computer to school, and not bothering to load Windows onto it in a partition or VM, was a good idea. Yes, even engineering students.As for Linux and supporting distros - don't. Release a package meant for the most popular distribution (is that still Ubuntu?) and let the community provide packages for their favorite distros. If a user has an issue running it on Foobar Linux 1997 tell them it's not supported.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 08:11:35 pm
content: Quote from: c4757p on October 06, 2015, 08:03:56 pmThat's one of the problems, "most popular distro" seems to change every couple years.The problem for a commercial company is that if we do not support Linux, we get at worst trashed by Linux people on "hey they are useless, not supporting Linux", but at least we are in "good" company. However, if we actually have a Linux product and we tell them, sorry, we do not support THAT Linux, then the trash talk would be "Shite company, I paid $ for their tools, and they told me to go to forums to solve this problem, I might as well have used GCC/Eclipse!"

author: Monkeh
author_rank: Super Contributor
timestamp: October 06, 2015, 08:12:53 pm
content: Quote from: c4757p on October 06, 2015, 08:03:56 pmThat universally leaves an unsupportable mess. You should always provide the most distro-agnostic package possible.

author: c4757p
author_rank: Super Contributor
timestamp: October 06, 2015, 08:15:48 pm
content: richardman, what about just making some effort to make sure your software runs under WINE? That'd cover both Linux and Mac compatibility, and WINE is good enough these days that the only parts I really think you'll have trouble with are: making sure you ship with all the libs you depend on, as WINE doesn't come with everything Windows does, and hardware support for the bits that talk to your product. That could be handled with a small platform-specific stub, which doesn't even have to be distro-specific in the Linux case (as hardware access is generally the same across the board).Just a suggestion. I don't insist you support Linux, though Istronglyurge you to look into Mac support if you want the educational market.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 08:17:32 pm
content: One more thing: the BIGGEST problem with supporting Linux is the drivers for the hardware debug pods. I known OpenOCD etc. exists, but we need a "no-config" solution, and I don't think we are there yet.

author: jancumps
author_rank: Unknown
timestamp: October 06, 2015, 08:34:01 pm
content: Quote from: richardman on October 06, 2015, 08:11:35 pmIt's almost an art to ignore the OS remarks.

author: richardman
author_rank: Frequent Contributor
timestamp: October 06, 2015, 08:50:49 pm
content: Quote from: c4757p on October 06, 2015, 08:15:48 pmNoted. Actually, I do believe we have some customers using WINE.As for Mac, yes, that's also in consideration. I actually, ahem, use a Mac occasionally and have an iPhone 6+.

author: nctnico
author_rank: Super Contributor
timestamp: October 07, 2015, 12:33:11 am
content: Quote from: Monkeh on October 06, 2015, 08:12:53 pmI agree. Look at how firefox does it: they include all the libraries they need to avoid incompatibilities. It is the only way to do it right.Depending on libraries installed on an OS is a recipe for dissaster in general. Too many possible conflicts between versions and too many band-aids. When deploying software I link statically and include the libraries I can't link statically. GCC/LD even has a linker options by which you can tell it to look in the program's run-from directory first instead of the system's library directory.

author: Kostas
author_rank: Regular Contributor
timestamp: October 07, 2015, 11:50:10 am
content: Quote from: c4757p on October 06, 2015, 08:03:56 pmAFAIK, Microsoft is quite aggressive at the educational market and many universities, around the world that is, provide free licenses for their students for a variety of MS Windows versions. Yes, licenses that can be used for their home pc(s). And it's not only MS Windows, but also the commercial Visual Studio versions (Professional, Premium, Ultimate, nowadays Enterprise) and other commercial products.

author: miguelvp
author_rank: Super Contributor
timestamp: October 07, 2015, 02:13:41 pm
content: Back in the 90s I used to work for a University and was member of the software license committee.The cost to the student for all of MS applications was just just $10 including OSs. Of course now they have way better software and more of it, but I bet they still offer heavy discounts or give them away for educational purposes.Edit: FWIW, they where not the only company doing so.

author: bingo600
author_rank: Super Contributor
timestamp: October 07, 2015, 08:37:37 pm
content: Quote from: richardman on October 06, 2015, 07:47:41 pmBut if one of them isLeon.H!Doesn't he get the compilers for free ?That's not a fair ref./Bingo

author: richardman
author_rank: Frequent Contributor
timestamp: October 07, 2015, 08:53:23 pm
content: Quote from: bingo600 on October 07, 2015, 08:37:37 pmLeon H.? I know of a Leon that is very active on various ARM list, is that whom you are referring to?And no, it's not him. You guys are funny, skeptical to.,... a fault. We are talking about consultant engineers who used our ICC11 or AVR compilers since the late 90s or early 2000s, and continue to use our tools, even when they hop from one company to another, and switching to different processors.In fact, I have two customers who switched to another company's Cortex compiler (the one that sells for more "reasonable" prices of $1500+ vs. IAR's $8000+) a few years ago, and just purchased our Cortex PRO compiler ($499) even though they still have the other company's compiler, now that we are ready.Some of you sell products. How many of you can say you have loyal customers for so long? I am rather proud of that, because I cultivate relationship with our customers, not gouging them, or nickle or dime them.

author: nctnico
author_rank: Super Contributor
timestamp: October 07, 2015, 09:36:43 pm
content: It makes sense to stick with tools you know inside out. Still how good is your ARM compiler compared to GCC?

author: richardman
author_rank: Frequent Contributor
timestamp: October 07, 2015, 10:12:21 pm
content: Quote from: nctnico on October 07, 2015, 09:36:43 pmWhile that is certainly true, we upgraded our IDE 3 times since 2000, first two we wrote ourselves, last one is CodeBlocks, so there have been learning curves.As for "how good," as I said to a un-abashed GCC supporter, there have been multitude of very smart people working on GCC over the years. The only way to achieve the same level of optimizations is to another team of very smart people throwing smart at it. It's not rocket science, as I have said on other threads, in the late 80s and early 90s, I worked at the DEC GEM compiler team and then the HP PA-RISC and "EPIC" (it wasn't call that then) compiler team, but it does take resource. The main difference is the "high level optimizations," our code quality is good - we even generate the M3(+) IT block and use all the Cortex features. We do in fact do some function level Common Subexpression Propagation and Constant Propagation, but not in the extent of whole program optimizations. For the AVR, we have a whole program compressor, but that is not useful for Cortex, since they already have the Thumb2 compact instruction set (by that I meant the code compressor will be of use, but the code is compact enough for most people).So bottom line: we win in our IDE/compilers/debugger loads and runs fast. Our error and warning messages and IDE customizations are more user friendly. We use the Apple Principle - things should be easy and out of your way for the majority of the tasks -, and we understand that different people have different priorities. Our compilers are good enough for plenty people shipping products, and of course, if anyone has questions, they can contact me, the primary compiler writer, and not rely on a community forum, or a "level 1 customer support".Again, we understand some people would prefer GCC, even if it is not free, or IAR, even if it costs even more than the $8000 they ask for. We trust and know that there is a whole large swath of embedded engineers who are in our demographics.

author: richardman
author_rank: Frequent Contributor
timestamp: October 07, 2015, 10:13:58 pm
content: A further comment: we are looking at LLVM, for a "maximum optimization" compiler, but that is at least 9 months away.

author: miguelvp
author_rank: Super Contributor
timestamp: October 07, 2015, 10:20:44 pm
content: It would be worth while to support Visual Studio as the IDE.Others do.

author: jancumps
author_rank: Unknown
timestamp: October 07, 2015, 10:21:02 pm
content: QuoteAfter lurking in this thread, and posting one non-relevant OS related post:I'm volunteering to evaluate the kit.

author: richardman
author_rank: Frequent Contributor
timestamp: October 07, 2015, 10:48:31 pm
content: Quote from: miguelvp on October 07, 2015, 10:20:44 pmOne IDE is plenty :-) Besides, Visual Studio gets us FARTHER away from the goal of porting to Linux/MacWe evaluated Eclipse, Visual Studio, and CodeBlocks 5 years ago, and C::B won big because of its small size and speed, its plugin architecture allow us to add our ease of use features to it, etc.

author: ez24
author_rank: Super Contributor
timestamp: October 07, 2015, 11:06:45 pm
content: HiAt first I got excited by they name of your website "C for Everyone", "everyone" got me going. I figured this must include dumb asses but by reading some of your answers here, you said more than once that this was for engineers. You did not say dumb ass engineers. So that was a let down for me.As an example, a dumb ass checked out "Java for Beginners" from the library and spent 3 days on page 1 because the f**%ing author never said to install Java. He assumed it was on the computer.So my suggestion is to make sure you have tested this on a computer that has a fresh install of windows on it each time it is tested. And find someone at the low end of your target audience (a dumb ass) to test your installation instructions.A disk duplicator can make it easy to keep testing on a fresh copy of Windows by using two drives.

author: nctnico
author_rank: Super Contributor
timestamp: October 07, 2015, 11:23:34 pm
content: Quote from: ez24 on October 07, 2015, 11:06:45 pmAre you nuts?Use a virtual machine and press 'restore snapshot'. Back to square one in seconds!

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 12:49:24 am
content: I need to repeat this: we are not a "startup" that pops up yesterday, we have sold multiple tens of thousands of licenses over the years. I don't know the skill levels of all our customers, but we do have newbie engineers, experienced engineers, students, hobbyists, you name it. Yes, it does install on fresh Windows, or old Windows, and everything in between. We are a commercial supplier, charging (IMHO) a reasonable amount of $, and of course we test the thing :-)

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 12:53:36 am
content: The "everyone" part also refers to the difficulty of moving to Cortex-M from AVR/PIC etc. Don't believe me? Just look at the "Microcontrollers and FPGA" forum now and there are 2-3 threads on the badness of ST HAL, and where is the C manual for...? With our tools, this is how you toggle a pin for LED:Code:porta.MakeOutput(LED_PIN, OSPEED_LOW);while (1){porta.Set(LED_PIN);DelayTenth(5);porta.Clear(LED_PIN);DelaySecs(1);}That is, as simple as, let's say, Arduino and mbed but the full power of C and even the ST StdPeriphLib - if you want to use it - is still there.

author: Mr.B
author_rank: Unknown
timestamp: October 08, 2015, 01:08:53 am
content: Apologies if this question has already been asked:What is the difference between JumpStart Microbox Education Kit for Cortex-M,STDandPRO?What do I get for my extra USD250?The two pages on the site do not make it immediately obvious.

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 01:19:47 am
content: Quote from: Mr.B on October 08, 2015, 01:08:53 amDear Mr. B, sorry, I am writing a new webpage explaining just that. The site (not our company :-) ) is brand new so things are still rough on the edge. We are adding more content each day.Anyway, the base kit for $99 includes a Non-Commercial use license, so goes wild using it, just don't use it for commercial release. It has the same feature as the STD (Standard version).Both -NC/STD have a flash memory limit of 128K - which is plenty on the Cortex-M. PRO has no such limit, has more optimization, and (will) have support for the M4 floating point instructions. You can always use the M4 as a fast M3 without the FP. That sort of things.Thank you for your interest.

author: Mr.B
author_rank: Unknown
timestamp: October 08, 2015, 01:37:13 am
content: Thanks Richard.I will start by purchasing the $99 NC and see what I learn from there...

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 02:06:39 am
content: Quote from: Mr.B on October 08, 2015, 01:37:13 amThank you, and you can upgrade for the difference in price later if you choose.

author: nctnico
author_rank: Super Contributor
timestamp: October 08, 2015, 07:51:09 am
content: Quote from: richardman on October 08, 2015, 12:53:36 amThat looks like C++. Better make that difference clear because C and C++ have a slightly different feel to them. Also I don't like seeing examples for novices using delays. It is one sure way to shoot yourself in the foot. Why not a timer so other things can be done while waiting?Code:while(1){if ((systimer -led_timer)>(TIMER_FREQ/2)){GREEN_LED_TOGGLE();led_timer=systimer;}check_inputs();read_serial_port();}led_timer and systimer (timer interrupts counter) are unsigned.Anyway it seems your differentiator is not so much the compiler itself but the associated libraries. Maybe you could post a list with supported devices and which peripherals are supported by your libraries.

author: Mr.B
author_rank: Unknown
timestamp: October 08, 2015, 08:06:14 am
content: So I ordered the NC version... 5 hours ago...Just got USPS notification of shipment...Brilliant customer service.Well done Richard!Disclaimer:I have no affiliation with Richards company. In fact, I have never heard of them before.I am simply a hobbyist on the other side of the world who wants to explore something beyond Atmel 328p and this appealed to me.I have about 25 proven projects in the 8 bit 328p space, but need more for some recent ideas.When my kit arrives, I will test, evaluate, and report back.

author: bigdawg
author_rank: Regular Contributor
timestamp: October 08, 2015, 11:18:13 am
content: Quote from: richardman on October 08, 2015, 12:53:36 amI am one of those people who have just moved to STM32 platform and hate the HAL libraries. I currently am working on STM32F7disco project and since there is such a lack of support (except clive1 on STM forums) that I am having to keep going back to STM32F4disco to duplicate/troubleshoot the bugs.Are your libraries compatible with that or is it only M0/M3/M4? As someone else noted, it will be great if you can link a reference manual for your libraries so we can see it for ourselves how extensive it is and does it fit something I am trying to do.

author: zapta
author_rank: Super Contributor
timestamp: October 08, 2015, 11:34:36 am
content: Quote from: richardman on October 07, 2015, 08:53:23 pmCustomer loyalty is not evaluated by cherry picking anecdotes and success stories. It should be based on aggregated numbers(Not saying that your company and products not awesome, just pointing out the methodology in your argument.)

author: PlainName
author_rank: Super Contributor
timestamp: October 08, 2015, 06:50:06 pm
content: QuoteThe demo is to show how a port pin is driven, and shoving a timer in there just obscures what you're trying to show with the overhead of being politically correct. In real code you are correct, but it made the demo code more complex and difficult to follow. Horses for courses.

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 07:24:06 pm
content: Quote from: zapta on October 08, 2015, 11:34:36 amLets try this: google my name, "Richard Man", ImageCraft, or other variations, and see if what people have been saying, if any. Then also google, GCC, or IAR, or any other company name, and see what comes up?You can join our compiler users mailing lists, and ask there too.Sure it's not a scientific survey. However, people do like us enough to say things like

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 07:29:31 pm
content: Quote from: bigdawg on October 08, 2015, 11:18:13 amDear bigdawg, you can download the JumpStart API reference manual on our site,http://c4everyone.com, click on DOWNLOAD. Briefly, it's specific to the STM32F0xx series currently. I am working on the port to the STM32F4xx as soon as I add the buffering to USART API. Should not take much effort. Then STM32F1xx and STM32F2xx.The next major question after that then will be which other vendor devices. I am investigating which other chip families are popular among our target demographics - consultant engineers who make tens/hundreds/thousands of a widget design for a company at a time. I would appreciate any comments there, but I will probably start a new thread at the "Microcontrollers and FPGA" forum.

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 07:57:40 pm
content: Quote from: nctnico on October 08, 2015, 07:51:09 amDear nctnico: our compiler is mainly C90, plus some C99, plus "C with Classes", which is just the basic subset of C++, mainly added so that we can define an easy to use API. The "Class" features eliminates the namespace issues, and also makes mapping the physical unit, e.g. USART1 to have a "C object" equivalence, e.g. "JSAPI_USART usart1"We have several differentiators, price, performance, support, and yes, we believe the JumpStart API makes it much easier to get started on the Cortex-M than any other API, or visual tools, or HAL.

author: zapta
author_rank: Super Contributor
timestamp: October 08, 2015, 08:08:45 pm
content: Quote from: richardman on October 08, 2015, 07:24:06 pmFound this on NXP site. It lists you as an expert.https://www.youtube.com/watch?t=13&v=JWnZSYE8EtY

author: richardman
author_rank: Frequent Contributor
timestamp: October 08, 2015, 08:50:48 pm
content: Quote from: zapta on October 08, 2015, 08:08:45 pmHa ha, did that 3-4 years ago?! I do not believe NXP ever shipped that LPC4350 though

author: neslekkim
author_rank: Super Contributor
timestamp: October 08, 2015, 10:44:13 pm
content: Quote from: richardman on October 08, 2015, 12:53:36 amBut still, one question I tried to answer before, how efficient is the compiler compared to others?Say, GCC is not as efficent as Keil based on what people say, for me, it would be important to be able to compile this:https://github.com/NETMF/netmf-interpreterand still be able to use it on the mcu used on Netduino Go etc, but so far, you only say how long people have been using it, nothing about how the compiled code compares to other compilers.For me, as hobbyist, I would like an compiler+ide that works well, and lets me compile to this kind of hobbyist platform, the problem is that microsoft and netduino people, doesn't seem to care much about hobbyists, and compile their code with very expensive compilers, and that means we cannot do much on our own..

author: zapta
author_rank: Super Contributor
timestamp: October 08, 2015, 10:48:39 pm
content: Quote from: richardman on October 08, 2015, 08:50:48 pmApropos NXP, their lpcxpresso IDE ruins beautifully on my Mac.

author: nctnico
author_rank: Super Contributor
timestamp: October 08, 2015, 11:20:40 pm
content: You've got to love that keyboard slip : 'ruins beautifully on my Mac'

author: free_electron
author_rank: Super Contributor
timestamp: October 08, 2015, 11:28:58 pm
content: Question :how does the I/O configuration tool work ? by executing a bunch of library calls ? or by creating a single header that set sup registers in one shot ?I have seen many 'configuration' tools that execute, at runtime, a bunch of code to flick the bits correctly. This is a tremendous waste of code space and execution (boot time) . it also potentially causes glitching during hardware init . for example making pins 3 and 7 output and low does not happen synchronous in time but sequential... pin 3 is made output ( so it goes from tristate to driven , but in unknown state ) , then get set to low. meanwhil pin 7 is still threestate ...Silicon labs has a configurator for their 8051 processors where you set the peripherals through a GUI. this configurator spits out a single include file that simply writes the register map in one shot. so there are no runtime libraries , no runtime calls , no desynced operations. there is simply a list of hardcoded MOV operations that dump bytes or words in registers.There is still a runtime library to flick states at runtime if you want/need to. But during boot time the IO is configured without a single CALL. it is simply a list of MOV operations from ROM to registers prior to launch the main code.i would like to have such a configurator for Cortex processors and their peripherals. it is insanity to launch 1000 calls to library code to flick all the io bits in the right space. You end up with blinky led programs that have 4k in boot code ... and 3 instructions runtime code.

author: jancumps
author_rank: Unknown
timestamp: October 08, 2015, 11:33:38 pm
content: I'm also in favor of the register map solution.But the ' tremendous waste of code space and execution' may be hyperbole. Few bytes, few clock cycles yes. Tremendous no.

author: nctnico
author_rank: Super Contributor
timestamp: October 08, 2015, 11:48:47 pm
content: Still timing may be critical. I usually have an include called 'hardware.h' where all the GPIO pins controls are defined as macros (SET_RELAY1() ). In hardware.h there is also a few defines which have the output bits for each GPIO port so I can set all the output pins for a port with one line of C code: PORT0DIR|= PORT0_OUTPUTS; This is probably much like the output from the configurator from Silicon Labs free_electron is writing about.

author: free_electron
author_rank: Super Contributor
timestamp: October 08, 2015, 11:49:21 pm
content: Quote from: jancumps on October 08, 2015, 11:33:38 pmtry setting up a 144 pin M4 ,all the I/O , configuring 4uarts, 2 can busses, two SPI's, an i2c , the counter array , the baudrate generators the ADC's and all the other stuff...you will end up with a LOT of calls... and some of that runtime code is total crap. I've seen baudrate calculators that require floating point libs to be loaded so they could set the baud register depending on crystal. that stuff should be calculated by the IDE and simply plonked as a single 32 bit value write to the baud register. I do not like to have to investigate and potentially debug a bunch of code that runs prior to mine. i am ok with something that flicks the bits correctly by 'precalculating' the register contents in the IDE and then simply loading them.Silicon labs has a beautiful solution. everything is categorized, pull down selectors, check boxes. you feed it the crystal value , type in the baud or bitrates.Another thing is would like to see is the ability to specify symbolic names for often used bits ( like tell it that POWER_LED means GPIO13, active low. so if you write in code POWER_LED =ON that output goes LOW ( your code says : turn the led ON , in reality that means making the pin low )it creates inline macros for such stuff.there would be predefined constants like ON, OFF , HIGH, LOW, TRI for IO operations.so i can simply write along the following ideadefine SDA portb.1define SCL portb.2define POWER_SENSOR portb.4 ACTIVE_LOWSDA = triSCL = highPOWER_SENSOR= ONTRI , HIGH and LOW are direct operations.ON and OFF check for ACTIVE_LOW or ACTIVE_HIGH modifers and apply the correct state.the C preprocessor would analyse these directives and replace them with inline AND,OR,XOR operations on the correct register (NO BLOODY CALLS TO RUNTIME LIBS !)Another thing i would like to see is automatic forward declaration of routines. so i do not need to maintain header files, function prototypes and remember what to include where.this can easily be handled by a preprocessor.some processors have 300+ registers... each containing 32 bits... i want to do that in 1 shot. not in 1000 calls.I had a situation a couple of weeks ago where the runtime 'config call' list took so long the default watchdog timer kicked in before the init could complete. so the code never launched. it costed me days to figure that one out ... who would have thought the config tools was so stupid not to disable the watchdog during config... i don't want to deal with that kind of misery.. same goes for having to debug the debugger ...The hardware config is typically a time consuming element. Especially since the people writing the apps code don't really understand it, and the datasheets are sometimes very difficult ( good luck with infineon XC1300's for example ... those are really a bloody mess. they have multiple names for the same register / bit/modes . it sometimes tkaes you 2 hours before you figure out one section of the datasheet is talking about MCONF_PER_0:1 and another about DADA_DODO_1 and DADA_DODO_0 and they are the same bloody damn thing...Other question : the debugger in this tool supports Jlink and STlink.- how many breakpoints ?- watches ?- breakpoints in interrupts supported ?What are the key differences between basic and pro licence( apart form 128K limit)

author: richardman
author_rank: Frequent Contributor
timestamp: October 09, 2015, 12:05:11 am
content: Quote from: neslekkim on October 08, 2015, 10:44:13 pmI address that a few times, but perhaps a link to the site might also help:https://c4everyone.com/index.php/technologies/our-technologiesIn brief: our compiler is optimizing per statement/expression level. So we don't generate "stupid" code. We do register allocation, optimal instruction selection using bottom up rewrite systems. We even generate the IT block. Switches are handled via jump table or if-else depending on the density.Function level optimizations are performed in the PRO version, no "whole program optimizations" for the Cortex target.So roughly between GCC -O1 and -O2. Keep in mind:IAR/Keil charge $7000-$8000+GCC has over the years, many smart people working on the optimizersIf utmost optimization is a goal, which it is, we will move toward another framework that took another team of very smart engineers to design and implement taking many years, namely, the LLVM. We will work on that in 2016. Now imagine a line of products: $99 to get you started, $249 to get you going for most commercial needs, $499 to get extra 10-15% performance, and then $1499 (in the future with LLVM) for a compiler equals or better than IAR/Keil. All with our current level of support and ease of use. That's our goal for end of 2016.However, just because we price our intro tools at $99 including hardware and a book, it does not mean that our stuff is a toy. Many products have been made and shipped with our compilers.

author: richardman
author_rank: Frequent Contributor
timestamp: October 09, 2015, 12:13:43 am
content: Many replies here so excuse me for not quoting everyone.re: Config files vs. lib calls etc.There are two needs when you program an MCU: initial configurations of bits, and the need to talk to the peripherals as part of the main programming.A "config file with bits" is indeed more suited when you have tons of stuff to initialize. So currently our API lib is not as good for that scenario. I will keep this request in mind.OTOH, an API approach solves both the initialization and programming problem, hence this is the solution we currently adopt.

author: richardman
author_rank: Frequent Contributor
timestamp: October 09, 2015, 12:17:58 am
content: Quote from: free_electron on October 08, 2015, 11:49:21 pmWe use the Segger DLL so there is no limit with breakpoint when using the Segger JLINK (or only as limited by the JLINK DLL).Currently the ST-LINK low level DLL (which we have to write ourselves) only support hardware breakpoints. We are in the process of adding software breakpoints.Breakpoints in ISR supported but you would be skating on thin ice. SOmetimes a logic analyzer is your only hope

author: free_electron
author_rank: Super Contributor
timestamp: October 09, 2015, 12:30:08 am
content: Quote from: richardman on October 09, 2015, 12:17:58 ami know ...

author: nctnico
author_rank: Super Contributor
timestamp: October 09, 2015, 12:55:46 am
content: Quote from: richardman on October 09, 2015, 12:05:11 amStill I wonder if your primary differentiator is in the libraries and surrounding environment why not just use GCC? GCC for ARM is maintained by ARM nowadays and every version produces slightly more compact code. Many of your competitors have already moved to GCC instead of their own (often less performing) compiler. Using GCC is also good for source code compatibility since many examples and libraries are developed for/using GCC (with GCC attributes). In other words: GCC is a defacto standard. I see no reason to put resources into creating yet another compiler. Also note that a lot of algorithm development & unit testing is done on a PC prior to running the code on a microcontroller. When using GCC the source code running on the PC can be 100% identical to that on the target. I know that C should be portable but that is just theory. In reality it is common to need compiler specific code extensions (pragma's, attributes) so using the same brand of compiler on various targets saves time and ensures what has been tested on a PC also works on the microcontroller.For example: How easy would it be to compile commonly used libraries/projects like FreeRTOS, Elua, Lwip, uIP, Fatfs or NXP's USB stack using your compiler?

author: richardman
author_rank: Frequent Contributor
timestamp: October 09, 2015, 01:35:37 am
content: Quote from: nctnico on October 09, 2015, 12:55:46 amGCC does have some advantages, however, there are disadvantages. The primary one for acommercialcompiler vendor is "how do we justify charging money for it?" There are different ways:The Rowley model: their own IDE and debugger - charges $1500The CoCox model: "we have no idea how to make money!" - free for now, until they can't afford the raising rents any more?The Atollic model: own IDE, own super-high end widget-thing - $6000All of the above has to answer the question: "why not just go to gnuarm and build your own with Eclipse?So why our own compilers? We could have switched for the Cortex-M market, better control sums it up:We know our compiler. If a user runs into a compiler problem, we know how to track it down.We can evolve our debugger in step with our compiler.On the AVR, we added __flash, whereas AVRGCC still uses prgmem() and suchWe added MISRA checks. Do GCC people care about MISRA check? Don't knowBetter error and warning messages.Faster to load and run.BUT the biggest answer really is: it takes time to move to GCC, and if we are going to do that, we will use LLVM.

author: richardman
author_rank: Frequent Contributor
timestamp: October 09, 2015, 01:40:50 am
content: Further, in fact from a suggestion of an EEVBlog user, we are going to push up the schedule to implement fixed point. There is a long story but it is on our plate for a while. So early 2016 is what we are aiming for.Similarly, we will probably add "Embedded C" (yes I know, it's not a commonly accepted standard) feature of memory space. Does GCC support it? I don't know but I don't think so. Is it a good idea for embedded programming? Looking at the spec, it looks good. By controlling our compilers, we can add new features easier.

author: danringer
author_rank: Contributor
timestamp: October 09, 2015, 03:51:58 am
content: Kit received. Looks good, well made packed and shipped. Even the mock ups of the pre professional docs looks good. Concerned about the lack of Mac or Linux support. I'll need to reread the past few pages to catch up. Thank you again. Will report back once. I get a chance to play

author: zapta
author_rank: Super Contributor
timestamp: October 09, 2015, 05:11:43 am
content: Quote from: nctnico on October 08, 2015, 11:20:40 pmIt's the swipe keyboard on my phone. It is very opinionated and doesn't always obey.

author: Simon
author_rank: Unknown
timestamp: October 09, 2015, 06:52:12 am
content: Quote from: richardman on October 06, 2015, 04:14:53 amtechnically it should not be posted at all! This section of the forum is for the occasional sale of personal stuff or a comoany shedding it's gear for a good price. Not to advertise new products from a company. That is what the advert banners are for.Alternatively send dave your product for reveiew in the mail bag segment and he will relate any offer you have.Posting comercial posts in the uC section would be deemed as spam.Sorry to sound like a party pooper but if everyone did this we would just has a classified list instead of a forum.

author: Mr.B
author_rank: Unknown
timestamp: October 09, 2015, 09:15:19 am
content: Simon, I think you are being a bit harsh here...I know the intention of this area of the forum is to advertise personal items, however please look at the facts...Franky has a verygoodthread here that gives a number of people opportunities to purchase good quality stuff from China...What is he doing here? Simple - Sales and marketing...Frankys thread continues without any complaints about its intention, even though it is clearly of a commercial nature.Richard Man is not spamming the forum, quite the opposite, he has presented a product that he is selling and is allowing the informed experts of the forum to judge it by its merits.There are many posts querying the validity of his offering... Cool, as EEs we are obliged to clarify the claims and challenge those claims.I have purchased his promoted product and await its delivery...I will evaluate it.If it is crap, I will post hereIf it is good, I will post here.I think you are over-reacting by saying that "technically it should not be posted at all!"...

author: Simon
author_rank: Unknown
timestamp: October 09, 2015, 11:42:19 am
content: I've unlocked the Frankies thread after a discussion with Dave as it seems they have an arrangement. I'm usually weary of low post counts posting products. I've left this here to give it the benefit of the doubt but genuinly if this products wants a good launch it would be far better to send dave one and it will get all the publicity it needs.

author: nctnico
author_rank: Super Contributor
timestamp: October 09, 2015, 02:40:52 pm
content: Quote from: richardman on October 09, 2015, 01:40:50 amTrue but it also locks your users into your product. One of the things I ran into when using less common (proprietary) formats/tools is that at some point you reach the limit. Just like the list with libraries I posted earlier; will they compile with your tool out of the box? IIRC there is a GUI library which is free to use for certain NXP microcontrollers. This library is distributed in binary form. If you use a toolchain which cannot link that binary then you are basically back to square one. In todays world microcontrollers do much more than just put some text on an alphanumeric display and blink a few leds. In order to make a product you need to rely on existing code written for a different target platform and third party libraries because you can't re-invent the wheel over and over again (BTW one of the things I forgot to mention are algorithms used to secure data). The biggest asset of a company which does product development is the software (source code) because it takes most of the time to create. Such an asset needs to be carefully looked after. For example check to see if it can keep up with future trends and whether it has a good portability. Having all the firmware locked into a toolchain which does not line up with a widely adopted standard is a very bad idea because at some point you need to waste time to change it. Also using standards which aren't common like 'embedded C' and 'C with classes' does not appeal to me. It greatly limits the portability of code between platforms/tools and could reduce the lifespan of the source code.Time for a true story: About 15 years ago I attended a conference call with a supplier of DSP boards. The company I worked for wanted to investigate if it would be wise to buy a license for the software and implement it on our own boards. It turned out all the DSP software was written in assembler specifically for the (nearly obsolete) Motorola DSP they used. It became clear to us quickly that their DSP code was worth nothing at all because it was as obsolete as the DSPs they wrote it for.

author: tggzzz
author_rank: Super Contributor
timestamp: October 09, 2015, 03:02:12 pm
content: Quote from: Simon on October 09, 2015, 11:42:19 amWhile understanding your caution, it is not clear to me that it would be possible for Dave to do a sensible review of the product. Given his chosen formant, hecould"do a Jerry Pournelle" and "see if it installs" and "comment on the colour scheme and compilation time" - but I hope he wouldn't since his reviews are usually more interesting than that.With compilers (especially C/C++ compilers) and IDEs the devil is very much in the details and requires knowledge of where skeletons are typically buried and pain points in system softwareintegration. (For a wry, accurate,startingpoint for such considerations, read between the lines of the FQA (sic) athttp://yosefk.com/c++fqa/and look out for phrases such as "some compilers").

author: richardman
author_rank: Frequent Contributor
timestamp: October 09, 2015, 07:10:26 pm
content: Dear nctnico: you made some good points, but not all users use the same criterions as you do. As I said many times: there is a whole swath of users between "GCC even if it is not free" and "IAR/Keil even if they cost more". The biggest blocking factor of potential move from AVR/PIC is the lack of an easy to use API (and probably an initialization config tool, which we touched upon already) so our primary goal is to solve that.Indeed your criticisms apply equally as well if a user uses a "config tool" similar to what free_electron offered, or CubeMX or Visual Studio from Atmel. In fact, Atmel's Studio locks the users so tight that one cannot even get the library code out at all!!re: Dave/EEVBlog - I will offer him a complementary kit and see if it accepts it.Any case, thank you for the feedback and comments.

author: zapta
author_rank: Super Contributor
timestamp: October 09, 2015, 07:19:35 pm
content: A single package install of tool chain, IDE and board specific libs with a great out of the box experience are very valuable IMO.One solution is to package lpcxpresso and mbed libraries. This week run on the three OSs and will have smooth rampup while using standard tools and libs.

author: nctnico
author_rank: Super Contributor
timestamp: October 09, 2015, 08:19:31 pm
content: Quote from: zapta on October 09, 2015, 07:19:35 pmI agree. Such a tool is great to start with. But... at some point you need to fly out of the nest and at that moment it is very dissapointing to find out someone clipped your wings!

author: zapta
author_rank: Super Contributor
timestamp: October 09, 2015, 10:48:19 pm
content: Quote from: nctnico on October 09, 2015, 08:19:31 pmThey are not clipped, they keep growing and you become bigger stronger and faster.

author: nctnico
author_rank: Super Contributor
timestamp: October 10, 2015, 12:14:41 am
content: Quote from: zapta on October 09, 2015, 10:48:19 pmI'm talking about tools/environments which follow their own standards... I think it is a bit like Arduino. Great to dabble a little bit with programming but if you need to build something serious you find out you need to learn something entirely different.

author: retrolefty
author_rank: Super Contributor
timestamp: October 10, 2015, 12:24:44 am
content: Quote from: nctnico on October 10, 2015, 12:14:41 amI'm sorry but that sounds a little elitist to me. Every project application is serious to the developer working on it, regardless of which chip/tools/environment selected. I've seen a open source Arduino/AVR 328P based quadcoper video that I for one would consider certainly a serious project.But then it may just be your definition of serious (project) in not the same as mine. Have you examples of what you consider serious projects?

author: nctnico
author_rank: Super Contributor
timestamp: October 10, 2015, 12:37:49 am
content: Something that needs to go in series production, must pass EMC compliance testing, must work in an industrial environment, can be maintained/repaired for the next 10 years, adhere to standards (a quadcopter is likely to be subject to various regulatory requirements), etc, etc.

author: zapta
author_rank: Super Contributor
timestamp: October 10, 2015, 02:30:51 am
content: Quote from: nctnico on October 10, 2015, 12:37:49 amDifferent projects have different needs but I don't understand the wring clipping part. It's wrong to pick the wrong tool for the job but this works in both directions.

author: nctnico
author_rank: Super Contributor
timestamp: October 10, 2015, 01:17:57 pm
content: Vendor lock in = clipped wings

author: mubes
author_rank: Regular Contributor
timestamp: October 10, 2015, 11:44:06 pm
content: What is the licence for the use of the API? It may have already been discussed, but if it has I've missed it...RegardsDAVE

author: richardman
author_rank: Frequent Contributor
timestamp: October 11, 2015, 01:20:32 am
content: Quote from: mubes on October 10, 2015, 11:44:06 pmDave, there is no separate license for the API - it is tied to the compiler license. So if you have the NC (Non-Commercial) license, then you cannot use it for commercial products. If you have a commercial license, then there is no separate license fees for the API and you may use it for any number of products.

author: neslekkim
author_rank: Super Contributor
timestamp: October 12, 2015, 08:41:01 am
content: Quote from: richardman on October 11, 2015, 01:20:32 amAnd the license is not tied to one given supplier?, you can compile to TI, ST, and so on?

author: richardman
author_rank: Frequent Contributor
timestamp: October 12, 2015, 07:02:01 pm
content: Quote from: neslekkim on October 12, 2015, 08:41:01 amCorrect. The compiler and the basic libraries are vendor neutral. We have TI and NXP users.Currently, the JumpStart API is working for STM32F0xx series. We are porting it to the F4xx series now (blinking light is working :-) ). After we cover all the STM series, we will work on other vendors. Not sure which ones yet. Most likely NXP? But may be TI. Atmel locks their software very tight and it might be difficult to extract what we need. We will see.Thanks for your interest.

author: ez24
author_rank: Super Contributor
timestamp: October 12, 2015, 09:16:21 pm
content: Where is Here?Quoteon pagehttp://c4everyone.com/index.php?option=com_opencart&Itemid=118&route=product/product&path=17&product_id=57I am trying to find out if there is a debugger with the $99 versionthanks

author: richardman
author_rank: Frequent Contributor
timestamp: October 13, 2015, 09:38:38 am
content: Quote from: ez24 on October 12, 2015, 09:16:21 pmI will fix the page. This is a new site (we are not new, we have been around since 1994 - this incarnation of the website is new :-) )The debugger requires a separate license, although you can use it during the 45 day demo period.I will consider making it limited functioning. Let me talk to the team.

author: neslekkim
author_rank: Super Contributor
timestamp: October 13, 2015, 10:23:10 am
content: Quote from: richardman on October 13, 2015, 09:38:38 amOk, so the Jumpstart kit - NC, does not have debugger option either, even if this is written in the description:Quote

author: richardman
author_rank: Frequent Contributor
timestamp: October 13, 2015, 10:27:40 am
content: Quote from: neslekkim on October 13, 2015, 10:23:10 amOoops. Sorry, will fix. That description was written before the latest decision. Thanks for catching it.

author: zapta
author_rank: Super Contributor
timestamp: October 13, 2015, 10:56:37 am
content: I can't see how this product beats lpcxpresso (free IDE, free compiler, free debugger support, single package install, supported by mbed project export, runs on all three OSs).

author: richardman
author_rank: Frequent Contributor
timestamp: October 13, 2015, 11:19:55 am
content: Quote from: zapta on October 13, 2015, 10:56:37 amOur goal is not to necessarily get the hobbyist market. The hobbyists are a "foot in the door". Our targets are the professional engineers who will not touch the cloud compiler (and don't necessarily want to pay $8000 for a commercial license), and the educational institutions who want 20+ seats licenses.I find it amusing that in these 7+ pages, there have been quite a bit of suggestions and criticisms thrown (plus some encouragements, THANK YOU!). I wonder how long someone from other commercial vendors would last, if they were to promote their products here

author: zapta
author_rank: Super Contributor
timestamp: October 13, 2015, 01:56:09 pm
content: Quote from: richardman on October 13, 2015, 11:19:55 amLpcxpresso isn't a cloud compiler. It's software you run on your own computer. Mbed allows to export projects in a format that lpcxpresso can seamlessly import.(Not saying that your product isn't good, just comparing the options)

author: nctnico
author_rank: Super Contributor
timestamp: October 13, 2015, 02:57:40 pm
content: Quote from: richardman on October 13, 2015, 11:19:55 amWell we have been very nice to you. So far...Biggest problem I see is compatibility with third party libraries (those questions have been left unanswered). Just look at how much is available for Arduino ecosystem. Maybe that is not your target audience but over the past decades I have seen a steadily growth in complexity of embedded software and the need to use third party libraries. As a developer you can't sit on an island and write a USB, security or network stack from scratch. I also doubt professional engineers will be impressed by having a library for flipping port pins or sending characters through a UART. They already have those libraries in a portable form which often date back several decades. A more professional developer will also want support for makefile driven builds for automated nightly builds, unit testing, regression testing, integration with version control systems, etc.I see your market for novices and in an educational setting where someone wants a hassle free install and click & go from there.

author: ez24
author_rank: Super Contributor
timestamp: October 13, 2015, 04:16:37 pm
content: QuoteWhat I find amusing is how nice people have been. Usually to this sort of thing you would be ripped apart. I thought about warning you on day one but did not.So consider it a compliment because of your treatment on this forum. You have to have thick skin to survive here because no one holds their punches.Also I think some readers are forgetting that your product includes hardware, software, AND a book for $99. The book seems to elude a lot of folks. Just too bad for me that your market is NOT for hobbyists.

author: miguelvp
author_rank: Super Contributor
timestamp: October 13, 2015, 04:37:11 pm
content: One thing that is not really stated.Is the book an ebook? if so it should be made clear that you don't get a physical book.

author: Mr.B
author_rank: Unknown
timestamp: October 13, 2015, 07:06:39 pm
content: Quote from: richardman on October 13, 2015, 10:27:40 amI take issue with this Richard.I purchased the product in good faith last week and now you are changing the rules...

author: richardman
author_rank: Frequent Contributor
timestamp: October 13, 2015, 07:14:28 pm
content: Thank you again for your comments. They have been invaluable.re: LibrariesSorry, must have missed that question. Generally speaking, most code can be compiled using our compiler without effort. So if you take generic stack like chanFS, or uIP, usually if there is any problems, just a few minor changes and you are good. Even FreeRTOS have been ported easily. It's even easier with Cortex-M since the interrupt handler no longer requires special syntax. That used to be a minor issue, having to change interrupt handler declaration syntax.The problem comes in if the code has been written with GCC extension. Or if the build structure is very complex, in which case, the developer would have multi-level makefiles, but they are usually tool-chain specific. So it's one of those: if you know how to navigate the file structures, it's easy - it's easy thing.re: makefileWe do support makefiles. In fact, many of our customers use IDE to develop their code, and give factory floors the makefiles etc. for production work.re: hobbyistsI did not say we don't cater to hobbyists. Clearly the JumpStart MicroBox is excellent for hobbyists who want a bit more than Arduino et. al.re: PRO already have stacks of library codeYes sure, they have a lot of stuff, but the fact is that Cortex-M is complex to get started. There are boatloads of engineers still using AVR or PIC etc. because it takes 3 lines of IO register to get an I2C going. This is why ARM has mbed, and vendors have visual tools and board support package. May be not everyone needs them but the need for them in total are great indeed. Otherwise, those solutions would not have existed.Why do you think Freescale/Motoroal bought Metrowerks, ARM bought Keil, and NXP bought Code Red? Software is one of the major keys, and silicon vendors know it. If they have their choice, they would lock their users totally in their ecosystems, like some vendors do already. The beauty of the Cortex-M is the multitude of choices available.Our space is the vast margin between "GCC" and "IAR/Keil", and I do not see any reasons to believe that this space does not exist.re: ebook vs. bookThe physical book will also be available on AMZN, but it will be additional cost option. I will make that clear on the website.Regards,

author: richardman
author_rank: Frequent Contributor
timestamp: October 13, 2015, 07:16:52 pm
content: Quote from: Mr.B on October 13, 2015, 07:06:39 pmDear Mr. B, the rule was decided a while ago, the web person copied some old stuff when he populated the website. However, if this is an issue for you, we will fix it for you if you did make the purchase based on that piece of information.I will email you separately. Don't worry, we take care of our customers.

author: Mr.B
author_rank: Unknown
timestamp: October 13, 2015, 07:21:44 pm
content: I made the purchase decision based onallthe information contained on your website and information from your very first post...Quote

author: richardman
author_rank: Frequent Contributor
timestamp: October 13, 2015, 08:25:58 pm
content: Quote from: Mr.B on October 13, 2015, 07:21:44 pmNot a problem. Email sent.

author: Mr.B
author_rank: Unknown
timestamp: October 13, 2015, 08:45:13 pm
content: Thank you Richard.

author: ez24
author_rank: Super Contributor
timestamp: October 13, 2015, 11:01:37 pm
content: HiJust to be clear. The $99 special does NOT include the printed book?How about the PDF book?Because there was an error in the ad in the first post?Also this is a little confusing:QuoteDoes this mean there are two debuggers and if so are they used together?thanks

author: richardman
author_rank: Frequent Contributor
timestamp: October 13, 2015, 11:44:28 pm
content: Quote from: ez24 on October 13, 2015, 11:01:37 pmre: bookNO printed book. If you order now, you get a beta-PDF. By end of October, we will send you an ebook and only ebook will be delivered afterward.Printed book will be an option from AMZN laterre: debuggerThe debugger is built-in/integrated with the IDE. However, to get full functionality, you need a separate license.Currently 2015/10/13, the debugger is fully functional within 45 days, then stop functioning if you do not have a debugger license.HOWEVER, it's very likely that we will change the policy to LIMITED functionality (e.g. 2 breakpoints and no I/O View) so that the debugger is useful even if you do not have a debugger license.I will make an announcement when we are 100% sure.

author: zapta
author_rank: Super Contributor
timestamp: October 14, 2015, 03:07:17 am
content: Quote from: richardman on October 13, 2015, 11:44:28 pmAs this thread progresses and more details are revealed, this package looks less and less appealing

author: miguelvp
author_rank: Super Contributor
timestamp: October 14, 2015, 03:27:11 am
content: Quote from: zapta on October 14, 2015, 03:07:17 amYeah, it was good if it had the book and the full environment.There are many learn C books out there as for dev kits with full blown compilers and hardware debug you can't beat $10 for a Cortex M3http://www.cypress.com/documentation/development-kitsboards/cy8ckit-059-psoc-5lp-prototyping-kitOr the Pioneer kit with the PSoC4 but with full hardware debug thanks to the 5LP on the board.And no restriction for commercial applications either.Otherwise you can use Keil uVision with the 32K memory limit for no commercial use and that's free. And they support the Cypress chips as well.

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 03:40:49 am
content: Quote from: zapta on October 14, 2015, 03:07:17 amHa ha, well, we do not expect to gain 100% of the market share

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 03:41:51 am
content: I am sure if we sell it for $1 with full everything, there will be criticism as well

author: miguelvp
author_rank: Super Contributor
timestamp: October 14, 2015, 04:19:43 am
content: Quote from: richardman on October 14, 2015, 03:41:51 amNo one complained when it was $99 for everything described, make the book an ebook and take out the debugger, it kind of makes it less appealing.What the ebook means to me is the requirement of a dual display.Since this is targeted to people learning C for Arm Cortex-M microcontrollers, lacking a full blown debugger makes it a sub-par product compared to what is out there.As for examples, the PSoC processors have the 100 projects in 100 days with lots of examples and all for free. Same with Arduino, Beaglebone, etc...So that leaves the content of the book and the IDE.If the IDE is harder to use than Eclipse (which is pretty bad in comparison to others) and hopefully not as atrocious as Multi from GHS then that might have value, but I find Cypress Creator and Keil uVision easy to use. Only the first one of those (Creator) is fully free without the 32K limitation.Even Visual Studio Community can be used with Arm Processors (not the Cortex-M but the bigger chips) Also it can target STM32, so your IDE better be the ducks guts.So that leaves the book, so even if it was the best C book for ARM microcontrollers without the debuggers the whole thing fails as far as a beginner is concerned.Myself I had no interest to pick the kit up because I already know C. But it did look interesting for someone starting up, since $99 is a good price for that you stated on the OP, but you keep on cutting things that are not trivial for someone starting up, so if someone asked me for a recommendation on what to use to start up, I don't think it would be your offer.Even if I learned to debug using a couple of LEDs on the boards to tell me what the program (68000) was doing using a cross assembler and burning the program in to an EPROM without hardware debug I wouldn't recommend that for someone nowadays.

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 05:03:02 am
content: Points taken. Again, we do not aiming for "100% acceptance". Obviously our strength are not sufficient to convince you. That's OK. Choices are good.

author: ez24
author_rank: Super Contributor
timestamp: October 14, 2015, 05:36:45 am
content: Quote from: richardman on October 14, 2015, 03:41:51 amProbably, everyone is just being honest.Richardman - I would like to make a suggestion. Contact a moderator and ask that this whole post be deleted. This whole thing can disappear with a click.The reason is if someone came from Google to the first post and see that a book (and no mention of pdf) is included and went to your site and did not read the fine print and ordered it, they would not get what they expected. I think this would reflect badly on this forum.Once you get it 100% come back and make a new post. I suggest come up with a eevblog discount or special. Do this via PM only. Make sure someone has to be member and PM you to get a discount code. FYI Tequipment offers a 6% discount via a code that members PM to each other. I think your company is small enough and you are active enough to do this via direct PM.If you do not delete this subject, it is likely to get ugly and this will in the end hurt you. I have seen this happen before. So bale out now.So for the next version:Make it clear that there is/is not a pdf book.Clear up the confusion on the debugger.Address any other questions that have come up so far.Another suggestion if you do as I suggest above. Offer a full rebate for a review on this forum. I bet you could find someone to judge the review to see if it is worth the price of the product. You cannot just blindly make an offer like this because someone will say "ok" and then ask for their money. I bet there would be some volunteers to judge. Do not expect Dave to do the review, this does not fit into his business model.

author: miguelvp
author_rank: Super Contributor
timestamp: October 14, 2015, 05:59:07 am
content: FWIW I was never your target so there was never a need to convince me personally.However I do want to convince you that without the debugger your product misses your initial target.Furthermore, the OP still states:QuoteBoth on the text description and on the embedded image:QuoteYou should change the OP both in text and image to take out the debugger mentions and change the word Book for eBook because that's not longer the case. False advertising is not the way to go around doing business.

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 06:21:13 am
content: Thanks for the alert. I am used to forum software that won't let you modify a post after X days. Any case, modified the OP.

author: Mr.B
author_rank: Unknown
timestamp: October 14, 2015, 06:25:44 am
content: Quote from: ez24 on October 14, 2015, 05:36:45 amIn a small amount of defense for Richard, I looked at the web site after seeing it promoted here, and it was clear that it was an eBook.There was also the specification that the eBook would not be ready until the end of October and that a PDF would be supplied in the meantime.I accepted this and proceeded with the purchase.However, as you may have seen in one of my previous posts, I am not happy about changing the rules on the debugger capability.Richard has stated that he will rectify this.I will report back...

author: neslekkim
author_rank: Super Contributor
timestamp: October 14, 2015, 06:32:28 am
content: The book should not be an issue, I gladly take pdf anyday, an paper book would make the whole kit impossible to buy due to shippingcosts for me.The debugger on the other hand.. but again, $150 for full capabilities is not that bad if one look other options, provided that this one is just as good ofcourse, but it would be nice with an -NC debugger option.When one have the debugger hardware sitting there..

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 06:35:58 am
content: BTW, let me add that the book is ~320 pages. Most pages are only "half-full", but this is still a substantial book.

author: miguelvp
author_rank: Super Contributor
timestamp: October 14, 2015, 08:23:10 am
content: BTW when you said:Quoteregarding the debugger, well that web person didn't post the OP (now modified to indicate the real thing, thank you!)But really, you just can't misdirect the blame to some "web person" when you did the same thing and copied "some old stuff" when you posted the OP.You can say you had a change of heart on the original offer, but what are the chances you made the same mistake as that "web person"?I don't want to state the obvious, but disconnected excuses are just that, excuses, and for whatever reason your company, peers or other interested parties didn't agree with your initial offer in this forum, then you are better off saying that the offer was undervalued and you all had a change of heart instead of redirecting the blame to some-nonexisting-one.Then again, maybe that some "web person" gave your the initial OP and you didn't review it. I guess that could happen... not!

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 08:49:45 am
content: Quote from: miguelvp on October 14, 2015, 08:23:10 amWell, now you are accusing me of lying. I can't change your mind. The decision regarding the debugger was made fairly late. Looking at my notes, pretty much 2 days before we went live at end of September. The text were written in a number of pages in preparation of the launch, including the JPG created by the graphic designer, which of course had the original text. The debugger is integrated with the IDE and IS in fact fully functional during the 45 day demo. The decision to make it non-functional after 45 day without a license was a change from our policy before this release.When we went live, there were lots of details to worry about, from graphic optimizations to shopping cart. Notice that the first few pages of this response was about Linux and GCC.The fact is that no one got ripped off, and if Mr. B is not happy with my offer, he could return the kit to us. There were a couple other forumers who purchased the kit, and the offer is the same.

author: zapta
author_rank: Super Contributor
timestamp: October 14, 2015, 09:00:59 am
content: Quote from: richardman on October 14, 2015, 03:41:51 amAdoption and market share are not guaranteed even for free and open source software.

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 09:07:59 am
content: Here are some evidence to support my claim, this is an excerpt of my discussion with the debugger developer on Sept 22. In the end, he recommended that we do not offer any functionality after 45 days:

author: nctnico
author_rank: Super Contributor
timestamp: October 14, 2015, 11:48:30 am
content: Quote from: richardman on October 14, 2015, 08:49:45 amIs it what it is: FALSE ADVERTISING! You should have checked your posting before posting it! Giving people a refund is a bad thing to do. You promised people a complete package with debugger for $99 and now you are backing out of the deal. Under EU law you would be obliged to deliver the package as advertised. I can't imagine the law is very different in the US regarding these kind of situations.I don't think anyone gives a sh*t who is to blame. Actually it shows piss poor management skills to hang your co workers out to dry publicly and make you look good.

author: PlainName
author_rank: Super Contributor
timestamp: October 14, 2015, 02:52:05 pm
content: QuoteOnly once money has been paid (and accepted). You should be clear that a refund is not enough (though many would accept it), so in the case of Mr B and the other purchasers the remedy is to give them what was advertised (as has been the case here). But it is perfectly OK to change the offer andthenaccept money for the new offer. Anyone buying now would be entitled only to the new offer.Just thought it best to be clear about the details since your post could be assumed to imply that the original offer might be permanent.

author: tggzzz
author_rank: Super Contributor
timestamp: October 14, 2015, 03:59:21 pm
content: Quote from: dunkemhigh on October 14, 2015, 02:52:05 pmIIRC under UK law the advertised price in a shop is "an offer to treat", and a contract would only come into force once the money had been accepted.After acceptance, if the goods are not delivered as specified then the purchaser can choose to buy the goods by another meansand charge the (non-)supplier the difference. Whether they would bother is a different question, of course!

author: nctnico
author_rank: Super Contributor
timestamp: October 14, 2015, 05:56:11 pm
content: Quote from: dunkemhigh on October 14, 2015, 02:52:05 pmNope. In the EU: If a shop makes a mistake and advertises a TV for 100 euro less (for example 799 instead of 899) they have to deliver for 799. Advertising a TV for 89.90 instead of 899.- is a different story because it would be reasonable to expect the price is plain wrong.

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 07:26:19 pm
content: There is "no winning on the internet", so I am not trying to. Mr. B is getting a full debugger, as I emailed him already. If someone made a purchase under that mistaken original post, and wants full refund, they will get it, if they want full debugger, they will get it. Anyone can read through these 10 pages of conversation, and see that I am an honorable person.I am the primary compiler writer, I made the technical writing and other people correct my English. Lots of stuff at last moment and mistakes were made. We are not a big company, we are just a small team of people making a living in this challenging environment. We see a need for certain types of products, so we do our best to meet them. We are more technical then marketing, and certainly we are not out here to try to rip anyone off.

author: BravoV
author_rank: Super Contributor
timestamp: October 14, 2015, 07:44:51 pm
content: Richard, patience is a virtue, hang in there.

author: richardman
author_rank: Frequent Contributor
timestamp: October 14, 2015, 07:48:32 pm
content: Quote from: BravoV on October 14, 2015, 07:44:51 pmThanks. In our first Windows IDE release, back in 1996, we have picture of the two girls in the "About" page. Now we are just trying to make sure they make it through college and become good human being. At least now one is done with college and I think we did OK raising them. Talk about patience :-){ and we are really not the Sith Lords, more like the Rebel Alliance, really :-) }

author: PlainName
author_rank: Super Contributor
timestamp: October 14, 2015, 10:32:36 pm
content: QuoteHere in the UK (which may or may not be in the EU for this purpose), AIUI that's something they can be had up for, but it's a trading standards thing and they get a slapped wrist and/or fine type punishment. IOW, your remedy is to complain to trading standards who then check it out and kick 'em in the goolies. You don't get the goods.The 'only after accepting money' thing is contract law, and you can take them directly to court. Indeed, as t'other chap above says, if they refuse to sell you it (offering a refund instead) you can go and get someone else to provide it and then bill the original supplier for the difference (i.e. what you lost by doing that). And a court will order them to pay up.@Richardman: Bravo speaks the truth. At this point this isn't about you or your kit at all - that's just a handy hook on which to hang some pedantry

author: ez24
author_rank: Super Contributor
timestamp: November 02, 2015, 02:47:32 am
content: richardmanIt has been awhile - how is this project coming along? Hope the forum wasn't too hard on you.

author: neslekkim
author_rank: Super Contributor
timestamp: November 17, 2015, 10:46:32 pm
content: Have been playing around a bit with this, not doing anything serious yet, but lots of examples are included which makes it easy atleast for me to just test compiler and see how the IDE works.I have compiled some of the various FreeRTOS source that comes with it (projects for ST, STM32-e407, SAM3, SAM4 etc), and getting compile times between 5-10 seconds on these, that for me feels very fast.I can also see why people likes CodeBlocks as an IDE/Editor, feels very snappy compared to others (MplabX, Eclipse etc)What are others experiences so far?

author: ez24
author_rank: Super Contributor
timestamp: November 18, 2015, 01:03:00 am
content: QuoteDo you mean the $99 M kit? JumpStart MicroBox-NCQuoteDo you mean the version that comes with the kit?neslekkim did you get the kit at the beginning with the "free" debugger?Do you think a real beginner to C and MCU can use their kit and book?How many steps to get a LED to blink? I do not mean the coding lines. I mean after the edit, the steps to compile and load into the chip. If I remember my one time with Arduino "blink" it was one step ie compile, load, run. I liked this.So to blink a LED how many presses of buttons to get the LED to blink? (after code is written)

author: Mr.B
author_rank: Unknown
timestamp: November 18, 2015, 05:53:39 am
content: @ez24 - I purchased the $99 NC kit.I am very impressed with the documentation and the examples.Like @neslekkim I have only been playing with it.Experimenting with what it is capable of and the performance.Compiler speed is very good, however I have a very high spec machine so my comparison may not be the average.I have modified the examples and extended them to do "other fancy stuff" just as a proof of concept.I have not yet spent a lot of time playing with the debugger, I am still learning about its capability.Pretty happy for the investment so far...

author: neslekkim
author_rank: Super Contributor
timestamp: November 18, 2015, 06:23:15 am
content: Quote from: ez24 on November 18, 2015, 01:03:00 amYes, I bought that kitQuote from: ez24 on November 18, 2015, 01:03:00 amYes, the IDE is based on , or is Code:Blocks, just install the package and everything is up and running.Quote from: ez24 on November 18, 2015, 01:03:00 amI have "cleaned up" my office, so I have misplaced the nucleo and the ace shield, so I need to go through some boxes and find those again... .)I didn't bother about the nitpicky around the text for the debugger, but since it came at an price of $50 yesterday, I bought it instead.The book seems to be very starter friendly, if you can C from before, it's lots of redudant stuff, but for starter, it explains all elements of the lanugage and so on.You can download here:http://c4everyone.com/index.php/download/microbox-and-cortex-m-docshttp://c4everyone.com/index.php/download/demo-softwareto see some of the docs and stuff