Chevron Left
Introduction to Embedded Systems Software and Development Environments に戻る

コロラド大学ボルダー校(University of Colorado Boulder) による Introduction to Embedded Systems Software and Development Environments の受講者のレビューおよびフィードバック



Welcome to the Introduction to Embedded Systems Software and Development Environments. This course is focused on giving you real world coding experience and hands on project work with ARM based Microcontrollers. You will learn how to implement software configuration management and develop embedded software applications. Course assignments include creating a build system using the GNU Toolchain GCC, using Git version control, and developing software in Linux on a Virtual Machine. The course concludes with a project where you will create your own build system and firmware that can manipulate memory. The second course in this 2 course series , Embedded Software and Hardware Architecture, will use hardware tools to program and debug microcontrollers with bare-metal firmware. Using a Texas Instruments MSP432 Development Kit, you will configure a variety of peripherals, write numerous programs, and see your work execute on your own embedded platform!...



May 31, 2019

Excellent course. Refreshed all my concepts of Embedded System programming after a long time. Very good introductory course for Campus freshmen who needs to start working on System SW Development.


Jul 02, 2018

Great coursework. It makes you explore C , GNU's tool chain and Memory segments which are all essential for Embedded Systems. I'm very much excited and thrilled to share my experience to others.


Introduction to Embedded Systems Software and Development Environments: 51 - 66 / 66 レビュー

by Yanhai R

Jan 18, 2018

Great course, give you a big picture. But where is course 2?

by Ayman M A

Sep 22, 2017

The instructor is good, explains clearly and simply and looks friendly.

The subtitles in Lecture 4 from lesson 1 is not correct at all.

So far so good.

Thanks Coursera !

by deepankar m

Dec 27, 2017

This is a great course that covers the basics but the irony is that it is not suited for beginners considering the pace at which the author is delivering the lecture. I think it is best suited for some one who have fair amount of experience dealing with micro-controllers and linux . This course particularly suited me as i had good experience with micro controllers and linux but needed to brush up understanding of compiling linking and dealing with memory. There are some great insights that i have got so far that helped me cover the missing links in my understanding of this subject. but beginners can also try just drop the speed of video and google for all that is described in ultra brief manner. Some prior knowledge of number system is also needed.


May 17, 2019

Course content structure and refresher question in between video was very useful.

by Jun L

Aug 01, 2019

It'd be even better if it's available with teacher's online help ;)

by Ashraf K

Oct 24, 2018

it is a good course but the lectures needs more information and explanation for some subjects

so if you would take that course you would need to talk another courses and youtube tutorials to gain a deep understanding and be able to solve the assignments easily

by Dwayne I

Aug 31, 2017

An interesting course but the assignment goals aren't always the clearest. While i understand the importance of code reviews, I don't believe that they are the best way to grade assignments due to the varying skill levels of persons taking the course.

by Matias S

Apr 13, 2018

The content is well crafted, there are some rough issues around the homework and the support in the forums is null.

by varun m

Sep 18, 2019

The course is good and well structured, but do not expect any support from the instructor or moderators during the course. There is no way for you to review a decision during peer reviews. I had to upload the same submissions again due to incompetent peers marking my answers as wrong.

by Stephen L

Mar 08, 2018

This is a really unusual course. It has "Embedded Systems" in the title but the closest you will get to an embedded system here is cross-compiling a program to run on the ARM architecture. There is no coverage at all of the peripherals (A/D, timers, counters, etc.) that one would find on a microcontroller.

It is a frustrating class too. The lectures do not go into enough depth for you to be able to complete the assignments without doing external research on your own. I found this to be particularly true on the gnu make section. I knew very little about make and without frequent visits to Google I could not have completed that portion of the class. The quiz for the third week was also very difficult. There were only nine problems but even though each problem had four sections there was no partial credit. Miss any one of those sections and you miss the entire problem. It doesn't tell you which of the sections you missed so I had to retake that test several times before I was able to pass it.

The forum for the course is frustrating too. The instructor responds to so few posts that at first I thought that he never visited the forum at all. One has to dig back in the archives to find any real level of engagement from the instructor. Most posts go unanswered although I did get occasional help from one student and I was able to offer some help to one other person myself. The forum only appears active because old content is not removed.

This course is intended to be part of series and supposedly the next class will actually live up to the "embedded systems" name. You have to purchase a microcontroller development board for that course and according to the description given you actually get to run your code on the microcontroller. I haven't yet decided if I will take that course or not. The decision may be made for me. In the forums it says that the next course was originally supposed to be up on Coursera almost six months ago but it never materialized and I wonder if it ever will.

I wanted to only give a single star in this review but I decided to with two because despite the frustrations I did learn some things about gnu make and get a chance to brush up on my pointers. If you are wanting some embedded software experience I would recommend looking elsewhere or at least waiting for the next course(s) in the series to come out.

by Karalan

May 31, 2017

All are basics only. . . and its not a hands on training

by Oscar S T

Apr 22, 2019

The activities are not sufficiently linked to what was explained in the videos and do not allow the reinforcement or comprehension of what has been exposed.

by William R

Jul 04, 2017

Do you know what a C pointer is? Great, then you can spend 15 minutes on youtube and skip this course. It will teach you nothing more than basic C syntax, and some tangential embedded software trivia.

Besides the high price tag and woefully small scope, this course is extremely buggy. First, the provided VM does not seem to work; it comes with a virtual drive that the recommended VirtualBox software warns is incomplete, and on launch it is indeed seen as a read-only filesystem full of warnings and errors. Second, the assignments are very vague and often outright incorrect. Once I set up my own environment, I had to correct code that we were specifically instructed not to change on multiple occasions just to get the assignments to build. Further inquiries on the forums confirmed that these corrections were required. And of course, the assignments are provided with incomplete instructions which tend to omit lots of critical information.

I feel like I wasted my time and money with this course, and I would recommend that you not waste yours.

by Marcos F Z

Jan 08, 2018

Payment is mandatory to view the tas


May 11, 2018

This course is not meeting coursera standards. I would say this is not worth to the price what they are charging. Content-wise too much poor. If they are charging 5000 Rs just for teaching gcc and related stuff then its wrong. These thing are easily available on YouTube. Also the elaboration is not much good, they should see how Prof. Andrew and Prof. xavier Serra are teaching and presenting ML and Audio processing courses.

I had thought of undergoing FPGA course by same university, but now I won't go for it. If possible I would like to have refund of my payment.

by Scott B

Sep 23, 2017

Completely ruined by the final assignment.

This could have been a good course. While the lectures are presented at a whirlwind pace of cramming at least a full semester's worth of material into 4 weeks, and not at all for the feint of heart or those without a good solid background already in C and systems -- they are still really strong lectures. Fosdick's rapid-fire rat-a-tat lecturing style is mind bending to be sure, but the material is presented intelligently and articulately. The lectures slides are well-done and are provided for download (unfortunately in mixed formats: sometimes PowerPoint, sometimes pdf). And while the pace would be completely off-putting in a one-shot classroom environment, it is perhaps fitting for a video format where one can pause and rewind. Captions are a must, but unfortunately not all the videos have the right captions associated with them.

While the lectures are generally solid, and the material presented is practical and challenging, the course suffers from a problem that seems to plague the discipline of electrical engineering almost universally. This problem is the fundamental lack in the instructor's ability to bridge the gap between theory based lectures and pragmatic application of this information.

To be clear, there is a LOT of practical information supplied in the lectures. One only needs to be diligent and to view, review, and review again given the lecture style. However, there are numerous gaps between the information presented and the knowledge required to complete the assignments.

This, as I've stated, is a general plague on the house of EE. I have seen this problem in nearly every EE course I have ever taken. By comparison, the same problem is largely conspicuously absent from the teaching culture of the field of CS (I have done a considerable amount of work in both fields). Even in areas where the two disciplines overlap, the pedagogical culture of computer science almost always trumps that of electrical engineering in the singular aim to TEACH.

That all said, one who has a decent background in C programming and a decent systems-level understanding could quite successfully stumble through this material (with the caveat of planning to spend many more hours than the estimated commitment -- I spend 10+ hours per week on this course and have a considerable background in both systems and software). That is ... until the final assignment where it all falls apart. This assignment is, quite simply put, just plain lazy teaching. The assignment itself is a gross regurgitation of requirements that do little to support the ostensibly stated goals of the assignment itself. It is full of holes and ambiguities and contradictions. It would appear to be the case that the true intent of this assignment must be to weed out those who don't have the willingness to make a gargantuan commitment toward sorting out all the guesswork of what the professor REALLY wants. More likely, it's just a lazy effort, and reflects poorly on CU Boulder, Coursera, and the entirety of engineering education.

Could have easily been a 5-star course with a decent focus on clarity and quality and emphasis on teaching rather than lazily falling into the mode of letting the students with the most dedication just figure it out for themselves. Just such a waste of what appears to be solid potential on Fosdick's part