4 ms·
Interesting. I'm considering doing the exact opposite (10 years web/server-side development - switching to embedded). Currently, I'm taking some extension eng
by weej 16y ago
Interesting. I'm considering doing the exact opposite (10 years web/server-side development - switching to embedded). Currently, I'm taking some extension engineering classes at UC Irvine while still working full-time.
Any ideas on where to start to get my foot in the door in the embedded world? I was thinking newbie kernel bugs and eventually Linux drivers.
- deleted 16y ago[deleted]
- pocoloco 16y agoThe linux drivers idea is good particularly if you want to learn about communication with embedded system. But there are other approaches too. You'll need to ask yourself how low-level do you want to go. For example: Do you want to work on a system that has an OS, utilities, filesystem, etc such as the ELDK[1]? Or a little more stripped down with only the OS such as FreeRTOS[2], uClinux[3], or uC/OS[4]? Or even lower and use no OS at all. Use instead a foreground-background system--basically a forever loop. Another way of doing this is to select the hardware first according to what you would like to do. You must keep in mind that you will most likely not have access to all the debugging tools that you're used to. This translates into very expensive compilers and debuggers for the high end hardware. But these days it seems that there is something for every taste and wallet. Two particular development kits that come to mind are Arduino boards [5] and TI's MSP430 development kits [6]. I find the wireless watch development kit [7] particular interesting. I haven't used either. If you see something that you like, try to find the corresponding development kit that comes with a development board, cables, and software. A good place to start is by checking DIY or hacker magazines such as Make[8]. I hope this gives you an idea. [1] http://www.denx.de/wiki/DULG/ELDK http://www.denx.de/wiki/DULG/ELDK [2] http://www.freertos.org/ http://www.freertos.org/ [3] http://www.uclinux.org/ http://www.uclinux.org/ [4] http://micrium.com/page/home http://micrium.com/page/home [5] http://www.arduino.cc/ http://www.arduino.cc/ [6] http://focus.ti.com/mcu/docs/mcuprodoverview.tsp?sectionId=95&tabId=140&familyId=342&DCMP=MCU_other&HQS=Other+IL+msp430 http://focus.ti.com/mcu/docs/mcuprodoverview.tsp?sectionId=9... [7] http://focus.ti.com/docs/toolsw/folders/print/ez430-chronos.html http://focus.ti.com/docs/toolsw/folders/print/ez430-chronos.... [8] http://makeprojects.com/ http://makeprojects.com/
- weej 16y agoIn most of my course work to-date it's been with no OS and just a while (forever loop) driven by interrupt service routines. Currently, I use an AMTEL AVR 2560; however, I've heard good things about the TI ones. I honestly don't know where I want to focus yet. I figured I'll continue to take some more classes to get some breadth on the subject. Once I have a better idea of what peaks my interest I'll jump into the depth for a more specialized approach when I can make a better educated decision. Good call on Make. I've been meaning to check it out, but haven't gotten around to it. Thank you for all the resource links. I really appreciate your response. Cheers!
- pocoloco 16y agoI'm glad that you like the info. I see that you're working on very low level stuff. Can you go even lower and deal with sensors, resistors, capacitors, opamps, and the like? These days there is a reference design in white papers somewhere so you don't need to be and expert in electronics to get away with something that works. You just need access to the tools such as multimeters and oscilloscopes. I'm thinking sensor networks. If you can, then I would recommend to try something using the MSP430 for example, given its low power requirements. Take the microcontrollers and pair them with different sensors (eg., IR, temperature, etc) and an RF module such as xbee [9] in order to create a mesh network [10]. You'll need to work on the protocol and management side too-- a linux box somewhere with a database but that should not be a problem for you. But I realize that is more of a team project given the amount of work. I mention this because I see some activity in this field and lately I've seen several articles, mostly in The Economist, that talk extensively on how sensor networks and the system that manage them will encroach our daily life. So if you can't figth them, might as well join them. [9] http://www.digi.com/products/wireless/point-multipoint/xbee-series1-module.jsp#overview http://www.digi.com/products/wireless/point-multipoint/xbee-... [10] http://en.wikipedia.org/wiki/Wireless_mesh_network http://en.wikipedia.org/wiki/Wireless_mesh_network
- weej 16y agoI'll be taking a DSP and RF class soon - so, yes, I'll be able to go lower eventually :-) My background is in CS with the bare minimum of EE. For the most part, this is all new to me. I'll take a look at the sensor networks. Thanks again.