This page was machine-translated and may differ from the original. View original

[Cafe e-People] Visiting the MCU Community ① Embedded Workshop, MCU Helper Who Reads Beginners' Minds

Google 우선 소스Published2015.11.30 19:11
E4ds News meets community operators who share information related to MCU (Micro Controller Unit). The first community of 'Finding MCU Community' is 'Embedded Workshop'. It is operated by Mr. Moo-seok Choi (pictured), who is currently working as a deputy manager of Continental Automotive Systems, and the cafe has been open for three years. This community is growing day by day through active questions and quick feedback from the operator. Operator Choi joined the company as a software engineer, but he says he has been working with MCU since he was a college student. He smiled and said that he cannot develop a product without understanding both software and hardware, and his deep and gentle passion for MCUs could be seen in his expression.

Why did you start a cafe called ‘Embedded Workshop’?


A lot of program software is being developed based on embedded MCUs . When developing software based on MCUs that operate on a computer, it is very difficult for beginners because they need to understand the hardware . So it was created for the purpose of information exchange .

Started to exchange information acquired

Another thing is that MCU programming is a hobby. I made a lot of them before I started the cafe, but at some point, when I tried to find the materials, it was difficult to find them again. I started the cafe because I thought it would be helpful for organizing the materials since I could put them there and search them.

• What is the distribution of cafe members by occupation and gender ?

The gender ratio is 90% male and 10% female, and in order of age, 40% are in their 20s and 50% are in their 30s and 40s. In other words, people in their 20s and 40s account for 90%. Students in their 20s mainly do their graduation projects with MCUs, and they seem to ask questions when they get stuck while preparing. People in their 30s and 40s, who are mostly office workers, ask questions when they get stuck while working on an application with MCUs. This is because when they want to make something simple, the idea is good, but it is difficult to program MCUs to implement specific functions.

• What are the main questions?

First of all, the MCUs that were uploaded to the cafe are Atmel's AVR, Microchip, which is widely used these days, and TI's MSP430. First, if you want to handle some functions of the MCU in terms of hardware, you have to handle registers. Since handling registers is difficult, if you read the datasheet carefully and follow the instructions, it will work. However, if it doesn't work, you can ask questions. In terms of software, there are development tools for programming MCUs , and you have to code on your computer, compile it, and download it . Since each company has its own tools, I mainly ask about the methods used .

If you look at the things that are mostly uploaded these days, they are just testing the simple functions of MCU programs. There are times when you need to implement multiple functions at once . You need to use digital IO and AD conversion, and also enable timers and various serial communications, but it seems difficult to use all of these at the same time . When you combine two functions, things don't work out as well as you'd like, so you get a lot of questions.

Mr. Choi Moo-seok, operator of 'Embedded Workshop'
Even if it is an easy answer, if you check it carefully, it will help you grow.

• I think there will be something that will be helpful to you while running it.

When I see a question, I first think, 'Why did they ask this question?' Otherwise, it won't be easy to give the person the answer they want. In that process, I was able to check my existing knowledge or information while suddenly thinking, 'This may not be so obvious,' even though I thought it was obvious.


For example , in my case, since I have used a lot of existing tools when embedding MCUs , I can easily solve a problem by looking up where the datasheet is and thinking, " Oh, this is it !" However, I often see beginners finding difficult the parts that I easily overlooked .

In the past, I would just glance at it and pass it over, but now that I am replying to it, I check it carefully . I also feel embarrassed to give wrong information online, so I test it out on hardware boards if I have them . I feel like this refreshes me as well .

Another thing is that I get to know new products . There are people who ask me questions about hardware that I have never encountered before . One of them was a TI product, but I have never used TI 's MCU . However, one of the people who came to the cafe in the early days asked for help because he didn't know how to use the tool for using MCU , so I helped him by downloading the download tool .

I was happy to help him, and at the same time, I found out that the MCU was optimized for low power . After looking into it further, I found out that TI 's MCU family includes an RF MCU module with an integrated RF transceiver . Most RF models are complex internally, so combining MCUs requires decoding RF signals and handling SPI , which can be quite a complicated task. However, TI integrates both functions into the chip package, so if I use it well, I can easily implement a sensor network with RF . I was happy .

You said you like making things using MCU, but what kind of things do you make specifically?


When I was a college student, I tried to make a one-board and make it with a micro mouse that was popular at the time. I ended up graduating without making it… Back then, development itself was really hard. Now, graphic codes are out, so the basic codes are generated, and there is a debugging function inside the MCU, so you can download it right away, but back then, I not only had to hand code, but I had to plug it in with a transparent E-Pyrom window and do a few compiles. I also drew a microphone, plugged it in, tested it, and thought, ‘It doesn’t work?’ and made it.

• Your job itself is software-related, but why did you start configuring hardware?

I was in charge of engine control applications until 2013, and engine control is embedded firmware. This is because you need to know hardware to do firmware. Now, car controllers are also highly structured. In fact, in cars, the basic software is already implemented as 'autos' to reproduce some embedded level of MCU. These days, software engineers program at a high level similar to programming on a computer.

Because at a high level, the logic that cars require is the same. When I started, the controller was 8-bit and I did it in assembler. Basically, I had to be familiar with the CPU in the MCU and the registers that I wanted to peripheralize.

To send it to the next port, you need to actually print out what the output is going to the controller. Because we can't put the various analog input sensor signals of the car when testing the car. Then, to put the controller in and see if the code we wrote works well on the controller, we need to understand the hardware.

• We hold many technical seminars within the company. What are the advantages of the community for engineers?

I think it's not easy to ask questions in a company. I majored in electronic engineering and did MCU programming as a hobby, but I had a lot of difficulties when I first joined the company. The hardest part was that there was code, but in fact, that code contained know-how, so it was not easy to understand.

In the case of cars, since they are a means of transportation, safety is sensitive. If the engine suddenly stops while running, it can be dangerous. In the case of the United States, the land is large, so if the car stops in a place where help cannot be found, you can die on the spot, so the system must have high reliability of technology more than anything else. That is why there are documents, but it is difficult to understand even after looking at them. I wonder what they will think if I ask about this, so I can't even ask my seniors. But I wonder if it wouldn't be easier to ask questions online?

It's a shame that our country doesn't have a systematic MCU education curriculum.
In the case of Germany and France, students start working together through projects right after graduating from university.


• Aren’t there things you created because of that kind of experience?

Yes. Many embedded firmware developers are self-made. What this means is that there are many people in our country who have acquired the know-how from the beginning rather than receiving specialized firmware education. When I first joined the company, it was difficult for me to acquire such know-how, so it took a lot of effort to enter. So I hoped that 'this field has a high barrier to entry, so I would like to share the know-how I have so that those who are trying to enter can shorten the time.'

For reference, I have been to Germany and France. In Korea, even if you graduate from college, Europeans are good at what you can't do. Software design is important, but that's not something a software engineer can do alone. It requires collaboration among many people. In order to collaborate, it needs to be documented, so if there are functions A, B, C, and D, someone who basically knows the big picture needs to know A, B, C, and D and distribute them to each developer or team.

Europeans have been good at this since they first entered the company. There is a separate course taught in school to write requirements and design documents well. In our country, we don't have that kind of system, so we learn from scratch, so we have a lot of knowledge about certain fields, but we lack the ability to work systematically as a team.

• I think my sense of responsibility will increase as time goes by. What do you think?

As I said before, I think about the answers I post again. Since it controls the hardware, the hardware can be damaged. It didn't happen until now, but if you ask a question urgently and post it, you think about it. I post answers in the form of suggestions rather than being sure because I can't consider everything, even though I have good intentions. Also, it can vary depending on the environment where the MCU is actually applied. It's hard to approach unless you understand it clearly.

What MCU trends does the community analyze?
It seems that the vendors' own cores are limited, and the MCU will be evaluated as an ARM core.


• It is said that you have been running a cafe and making things that lead to school and work for about 3 years. How do you think MCU is changing from the operator's perspective ?

First of all, I would like to state that this is an extremely subjective opinion. MCUs are coming out from 8-bit to 32-bit. 32-bit is said to have the best performance, but the functions are about the same. These days, each vendor is making their own cores, but it seems that Amcore is taking the lead. There is no place that does not use Cortex. Freescale, Atmel, and ST are all making them using Amcore. I think the mainstream of MCU will be Armcore, and each vendor's core will be minor and flexible.


'Embedded Workshop' Cafe ( http://cafe.naver.com/embeddedworkshop)


Because until now, automotive used Freescale and Infineon a lot. Then, Recesas was used, but many applications are independent of the vendor's MCU. Even for engine controllers, 16-bit MCUs from Infineon and Siemens were used in the past. The reason is that those chips were made for engine controllers. So all applications were following the vendor's MCU.

But now, suppliers who make MCUs are disappearing. This is because the modules themselves are standardized, so MCU vendors and software companies open their codes and provide them. Now, it is the application side. The degree of freedom has increased. Therefore, the markets that use MCUs are currently concerned about supplying the cheapest MCU.

In summary, the MCU trend seems to be one where companies that can provide the same performance at the most reasonable price will survive.

• Will the price drop of MCUs also have an impact?
I think so. MCU is quantity-based, so it used to be 9,000 won, but now the price has almost come down to 7-8,000 won. In the past, MCU was the most expensive among engine controllers, so when the MCU broke, people would just say, “Oh…” and be dumbfounded.

Later, when I get the chance, I want to become someone who can teach MCU

• Lastly, what is the ultimate goal or purpose of the cafe and what would you like to say about it to e4ds readers?

Let me say it again, the goal is to share information freely. I hope anyone can ask questions and share information. And in the future, even after I quit my job, I plan to continue doing something in this field. Looking at the current trend of technological development, the demand in this field will not decrease. Even if you look at automotive, there weren't many things like engine controllers or brakes. Or, only luxury cars had 5-6, but now even mid-sized cars have about 20. It's not specific, but I want to teach this field systematically. Our cafe welcomes MCU beginners. Anyone who studies MCU or enjoys it as a hobby can get information and share it, so please come visit!
본 기사에 대한 정정·반론·추후보도 청구는 보도 청구 안내를, 그간 게재된 보도문은 정정·반론보도 모아보기를 참고해 주세요.
명세환 기자
명세환 기자