Subject Spotlight: Embedded System Design

Welcome to a series covering the variety of electrical engineering subjects available at Melbourne Uni. This series hopes to give those who have not done the subjects a more overall outlook of what the subject entails, tips and more interesting information that is only known by those who have done the subject.

Disclaimer: These articles are written from past experiences and may not reflect what the subject is currently like or will be like in the future. The opinions expressed are purely the authors’ and not representative of the Melbourne Uni Electrical Engineers Club or the University of Melbourne. In no way is anything here presented as fact. Do not come complaining to us if after reading something you think the subject is easy and then you fail or if something crucial has changed in the subject.

Year this subject was taken: 2016 (and 2017 as demonstrator)

Embedded System Design is a practical subject, where students get to experience an engineering project first hand. The goal is to design, build and program an embedded device.

In recent years the project has been a game console, a small handheld device with a screen and buttons, powered by a single AA battery. Students have to create the circuit schematic and the PCB layout. Its purpose is to run a simple game that also needs to be programmed by the student. This is an individual project.

The schematic and PCB must be designed using the software Altium Designer, which is installed in the PCs of the rooms where the workshops take place. This is a professional software for PCB design, students will spend a lot of hours working with it, so it is highly recommended to get a copy of the software to work at home. Unfortunately, the University does not provide a free version for students, however a student license is available for around $150 and it lasts 1 year.

To program the microcontroller, each student receives an AVR JTAG ICE clone, but is not that easy. Students get a blank PCB and the components, they have to assemble the board by hand, this is considered the practice to the assembly of the game console.

Topics:

  • Product development process
  • Basic electronic components (Diodes, BJT Transistors, MOSFETs, etc.)
  • Microcontrollers (Architecture, programming, I/O, etc.)
  • Other digital components (Logic gates, memory, LCD display)
  • Switching power supply
  • Schematic design
  • PCB Layout
  • Component selection
  • Manufacturing process
  • Firmware development
  • Internet of Things (IoT)

Lectures:

The subject has two lectures a week. In 2016 the lecturer was David Jahshan. In 2017 David is teaching the first half of the semester, while Prof. Marimuthu Palaniswami (Palani) and Dr. Aravinda Rao are the lecturers for the second half, focusing also on the topic of IoT.

Workload:

There are two lectures a week and one three hour workshop. This subject is all about the project, so the assessment is basically split into the Schematic design, PCB design and Software design. There are detailed guidelines and checklists for each of them, that also helps to stay on the right track.

In practice, this subject takes a lot of time, especially for people who are not familiar with electronic design and programming.

Tips:

The project covers a lot of different topics, the game console is a quite complex system, it takes a lot of time to get everything done and is easy to make mistakes. So the first tip is the obvious one, allocate a good amount of time for it and start working as soon as you can.

Lectures are highly related to what you should be doing for your project, but the contents are not always covered at the same time you are working on them. Keep an eye on the lectures, they have a lot of useful tips if you pay enough attention.

Be careful! Double check, triple check and then check again! Spend some time going through every part of the schematic after you finish it and make sure you understand concepts like pull-up resistors, boost converter, why you need a MOSFET to drive the backlight, etc.

Make sure the reset pin of your microcontroller is pulled high when the reset button is not pressed (seriously!)

There is a NAND gate in the design for interrupts, pull high all the inputs that are not in use.

The Same checking policy applies for the PCB, you want to get it right at the first attempt, which can be quite challenging even for experienced people.

Pay special attention to the routing tips and guidelines for the boost converter, this part is especially sensitive to bad layout.

Spend a lot of time placing your components, PCB layout is an iterative process. Don't be afraid of deleting 2 hours of routing if you realize that there is a different way of placing the components that will make your life easier, routing again will be much faster than the first attempt.

Don't spend too much time either! This advice is for people who want to get full marks. It is always possible to improve a layout, but it can take too much time if you are too picky. If you can tick most of the items in the marking sheet and are confident that it will work, you should start thinking about the software with time.

Do NOT use autorouter! It will be terribly obvious to identify for demonstrators and is very likely that your boost converter won't work at all.

Go to one of the MUEEC's soldering sessions 😉 😉 😉

 


BY Rodrigo Maureira

Melbourne University Electrical Engineering Club

2017

Comments are closed.