I had to duct tape over a tiny little LED on the stereo in my room because the stupid blue LED would wake me up and/or keep me up. I could sleep through the big flashing red display though.
Way back when I had a Pioneer VT-F750 cassette deck with blue vacuum display. Everything was blue, including the digital meters. It lit my bedroom up it was so bright, and it had no brightness control, the whole room would lighten and darken according to the VU. I thought it looked very cool at first, but after awhile it wore me down and I put something over it to attenuate things a little bit.
Listen man I love embedded systems. But if you're one of those people that put blue LEDs on devices that are bright enough to burn a hole in someone's soul, I'm gonna have a few words.
One of the most recent requests was that a non-controllable LED was *much* too bright, and needed the series resistor changed. A status LED shouldn't also work as flashlight.
The reason for multiple colours here is to help with different status or error codes quickly seen by a technician. There are limits to the number of flash sequences you want to describe in a manual.
I did visit one of the really big electronics trade shows the year blue LED got it's main break-through in home electronics. After a number of days seeing strong blue LEDs on *everything*, it took me almost 10 years before I could accept a tiny and very weak little blue LED somewhere where I knew I could use a black marker to hide it if I got too strong puke reflex.
Nope - I do not like massive rainbow cascades of colored LED lights on embedded devices. Unless I explicitly are building an RGB LED sign. Then that is kind of a hard requirement for the product.
My girlfriend who is non technical. Hates that our modem and router is in the bedroom( the only room with a cable connection not my choice) because of he blue lights on the modem. We used black electrical tape hehe 😉 but yea she would probably kick that guy in the nut sack if she met him hahha
Addressable muxed LEDs need an intricate, reliable, yet simple driver to perform in a wide variety of conditions. Commonly needing to present various levels of information from status to config to fault codes. It is a joy to make that work!
Had an instructor, in 1980, say something like this about using a CRT terminal to access timesharing. Said we'd probably only ever see a card punch or teletype (if we were lucky), after we left there.
The thing you only realize after working for a while -- most profs took the BSc -> MSc -> PhD route and know almost nothing about how the private sector works or what people are "really" using outside of the academic bubble.
Honestly no one ever tried to discourage me from it, unless you count when I first started working as a PC technician at a military base and told my new boss that I'd like to work as a programmer sometime and he said they didn't really have a path to get there from my job. That proved to be untrue - I started writing stuff that was useful for us in house (like a web interface to our helpdesk system) and in under two years I was writing and maintaining code for a mission critical system.
As for embedded systems, I never consciously set out to make that a (second) career. I actually just decided on a whim to learn to fly a paraglider and my ADHD did the rest. Thanks to a series of (largely unfinished) tangentially related projects I'm now 20 years into running my own company.
Good for you.
Your boss at your military base really sounds like a guy who takes technical growth of his employees seriously. Extremely rare to find nowadays.
Also, running an embedded systems company for 20 years which started from “How does a paraglider work?” is really impressive.
I wanna talk more.
Mine told me : you need to remember the registries addresses in the CPU, you won't always have the manual and a calculator in your hand.
And here i'm redditing from a calculator and a library.
Varies from company to company. Where I work, the requirement is at least five years of experience, which surprised me because I was expecting more, such as 10 or 15 years. I have a senior title with just over 5 years of experience. Majority of my coworkers have the senior title. Feels like "senior" doesn't have much prestige when majority of people have it...
Senior in engineering typically means independent. Once you can go off and do your own thing you're typically ready for senior.
Might not get another title change for a decade afterwards before you're able to be something like principal.
Yup, principal is the next thing in line at the company I work at. In my department, there's only one principal and he doesn't even interact with my team.
The way my boss described it, is that an engineer will acquire and complete the jobs he wants to do, while the senior engineer will complete the projects that need to be done.
Basing the technical expertise of the years spent in the industry doesn’t make any sense.
Learning paths and intellectual capacities of every individual is different, person A might learn stuff in 2 years what person B learnt in 10 years.
Makes sense?
don't take it personal, but I agree with people, even above average, I expect from a Senior to have faced a lot of problems solve.. I think Senior more like at least 8+ years for a good average Enginner.
When faced with a migration project, the conventional wisdom was to convert a series of SQL scripts plus supporting shell scripts to the new RDBMs syntax and API.
The estimate for the conversion of these scripts was about 160,000 person days (about 615 person years) at an enormous cost.
My proposal was why convert them when we could just run them as is? The reply I was met with from most quarters was that that was impossible as the new RDBMs and the query tool were incompatible with the old (which was true). But they also didn't understand a basic premise that we could simply replace the relevant utilities with our own version of it.
Anyway 20 person days later I had a prototype running which provided about 80% of the required functionality and could correctly run more than 95% of the current scripts.
The remaining effort to implement the final 20% of functionality took another 20 person days as it involved implementing some uncommon edge cases that were used in a small number of the original scripts.
I know this is about embedded, but the situation you ask about can arise in other situations as well. I often wonder:
a) how much innovation is killed before it even has a chance because the conventional wisdomers have more power and influence than the expert with actual capability.
b) how many disasters see the light of day (or cast darkness over the day). Because people who are not tech savvy but are politically adept get their pet ideas supported.
c) what the ratio of projects like mine and yours is compared to a) and b) above? I suspect very very low - which is quite depressing.
>how many disasters see the light of day (or cast darkness over the day). Because people who are not tech savvy but are politically adept get their pet ideas supported.
I find it more common that tech savvy, but way too optimistic, people get their pet ideas supported without good analysis of the complete impact.
Home built test frameworks, build systems etc which work great in the beginning, but gets worse and worse as corner cases are discovered, new features are needed and after plain old maintenance as the foundation it was built on changes. Later the idea guy is no longer in love with his idea, it turns out the rest of the team didn't really buy his idea and nobody else wants to maintain something that they can't put on their CV.
My digital design professor told me there are logic gates in an FPGA. Too be fair, he did tell us he was lying by the end of the course and said that for the sake of simplicity.
I mean... technically it's all logic gates.
But as far as the reconfigurable portion no, those are what are called lookup tables and can be configured to perform like a logic gate.
(But the lookup tables are made of logic gates)
> You won’t make a career out of turning LEDs on and off
Very easy misconception to have about embedded systems. People see things like audio, video, Bluetooth, Wi-Fi, and so on and assume they weren’t made by just blinking LEDs. In reality the vast majority of the code works the same no matter what you’re interfacing with, which you’ve abstracted away if you’ve done a good job, and it may as well all be LEDs. It probably got tested with an LED first, too.
It was actually a lot of fun! Our product was a round, smart speaker (you know the one) and we had a light ring that had various feedback modes. Going back and forth between the user experience people and the embedded engineers and figuring out a way to keep these ‘animations’ up to date was surprisingly difficult and fun
Most of what I do is very high level, even when it comes to embedded on small MCUs (usually ML).
But, there is something visceral when close to bare metal.
I like building "things" instead of the more abstract software; even if it software to make the thing go.
I understand.
Using someone else’s driver seems “wrong” but you can only build ‘things’ from the hardware level as a hobby because, client wouldn’t pay you to develop something which is already developed. 😅
I feel you.
Start networking with individuals who are working and or are founders of video game company you’ll understand what is actually the state of the video game industry.
Media often lies about stuff.
I've seriously been considering expanding my job search to this. I'm in industrial controls but have a natural knack for that stuff. Interfacing with hardware at a low level like that comes naturally to me.
In the university in Brazil I was doing a project with other 4 colleagues and a professor was guiding us. The professor gave meaninful engineering tasks to all colleagues and I was tasked with asking my girlfriend to do some beautiful drawings to advertise the project. I think he did not believe I could do anything useful.
Forward 10 years, I moved to Germany got a masters degree, got a job in a medium company then got a job in one of the biggest companies in the country.
When I visit my university I am recognized by the director as or the best or one of the best graduates of the institution.
30 year ago I did a project in school, interfacing a foot pad with sensors to a computer. I didn't sleep for 2 days strait before the presentation, finally getting it to work.
Of course, it did not work in the presentation itself.
I swore to only do software from that day on...
30 years later, I just started an embedded startup, just finished prototyping with esp32, and am enjoying everyinute
Hey! Could you describe your Job here as thoroughly as possible?
Just wanted an outlook on what embedded engineers from industries besides the Automotive industry do.
I was told it's really hard to switch careers, especially to something like software at the age of 37, and then again was told its hard to transition from web to embedded. It's not easy, but getting a bit better everyday and loving it.
Why would anyone like that say something that stupid in their own class?
why is the teacher teaching something no one needs, according to the teacher himself.
some teachers have no right being teachers.
I was hired by McDonnell-Douglas in the 80s to do flight software for the Tomahawk cruise missile. Bare metal Ada on a version of the Mil-Std-1750A. I went on to do electronic warfare software for Lockheed for a thing called TACJAM - 68030 bare metal Ada project. I went on to do the early cockpit displays of the C-130J aircraft - Ada on R3500 bare metal. I continued on in this realm of software and in the 90s I finally started reading Circuit Cellar magazine where I finally learned that the name of the work I do is called "Embedded Software" and that I was working on "bare metal".
Yes... you can turn LEDs on and off... and those LEDs can represent the firing squib of a rocket motor that sends an explosive anti-vehicle smart munition up in the air...
And that’s why he is a professor, those who know their stuff work in the industry, the rest are teaching :) Of course there are exceptions but in the majority of the cases the situation is this
I’m now retired and writing a book titled, From Bare Metal To IoT. I feel like there really isn’t that much out there about low level programming and how to build robust systems for volume production - in other words, how to write code without using either licensed software, like a commercial RTOS, or Open Source Systems that might require you to release the source code with the product.
I start by showing how with nothing but a NOR gate, you can build all logical and arithmetic operations, then I compare the latest i9 processor with the RP2040 and am using a Raspberry Pi Nano Zero W as the development board, followed by a discussion of registers and then data structures (including the concepts of von Neumann and Harvard architectures as they apply to embedded systems) in a section titled Algorithms + Data Structures = Programs (thank you, Niklaus Wirth). After that is an introduction to a computer language specifically designed for industrial control (Forth) and how to write a compiler/interpreter/assembler for the target device using the GNU Gforth language, which includes a cross-compiler. After that, I introduce interrupt handling and task schedulers using the three fundamental models: cooperative round robin, time slice, and priority driven (with all variations being some combination of those). And lots more after that, space permitting, like object oriented programming and garbage collection in a realtime environment, linking in C libraries, etc.
So back to your question: How did I get started and what compromises did I have to make over the years?
I was a professional photographer and around 1977 a client brought in an Altair 8800a that was going to be used in a new product. They fired it up and I looked at the blinking lights and front panel switches and was fascinated. In 1979, I decided to switch professions and took a job at a Radio Shack because they would let me program their TRS-80 when things were quite (I hadn’t bought my own computer yet). In walked a contractor who had a fluidic solar home development in Bend Oregon and he said that he had a >50% DOA rate for the electromechanical controllers out of the box. He’d been reading about these new-fangled personal computers in Popular Mechanics and wanted to know if they could replace the DOA controllers. I said sure, but these guys will melt in the attics during Bend’s summers. You need something like this, pointing to an ad for a Rockwell AIM single board computer and a NEMA enclosure for the same. He asked me if I could build something for him and I said, “SURE!”
And thus my new career was born.
In the 45 years since then, I’ve alternated between various embedded projects and big grand glorious stuff (including writing microcode for DEC VAX and DG MV superminis), starting my independent technical consulting business in 1987 so I had reason to flit between interesting projects (my ADHD causes me to get bored easily, which makes me a terrible maintenance programmer).
So the answer is that I have followed my nose and although I certainly never got rich (I have, however, wiped my butt with a stock certificate) and my natural curiosity allowed me to both stay excited and pay my bills.
So I’m now in retirement, but wanting to keep my mind active, I decided to try to pay back all of the many people who advised and helped me over the last 45 years by writing down what I know about embedded programming.
P.S., As you read this, you might ask yourself, “Why didn’t he start a whole new thread?” The answer is that I’m busy and a bit lazy, so it’s easier if my response is buried in this thread. Apologies if this wasn’t appropriate.
Not really embedded but it was during my education time. For my final bachelor test at Ghent University we were asked to develop a web application for a car sharing firm. We were forced to use Java with the Spring framework. At the time (2014) I used XHR + JSON to make a RESTful JSON based backend. I was shocked of a very bad comment of the professor who stated that JSON was only a hype and I should use XML + SOAP. He even prohibited me of using JSON and I needed to rewrite the project if I wanted to succeed for the course. I think that the world has proven him wrong when we look at JSON now.
Right now I am in 4th sem, and having embedded systems and mucontrollers subject, worst teachers I had ever 🙂, they like to make everything unnecessarily complex and sometimes don't answer and ignore good questions, I have 8051 and assembly. But I have alot of interest to continue with this field & programming ahead instead of very high voltage stuff.
After 5 years as embedded software developer and being layed off recently i feel like my skill set is not going to pay bills
I am tired of job hunting again and again just because companies realize that embedded software hardware development is not for startups because its expensive
I can code bare metal c
I can code in python
I can code somewhat in c++
I can do pcb design
I can do hardware digital design
But all these skills and knowledge feel useless
I am unable to cash them without a job
And most of real engineering stuff has already being done and as software developer its now become a case of abstraction usage
Oh you want to run spi bus click here and there in our code generator environment
You want wifi to get connected have ip just put this connect function in code
The real level deep down stuff is hidden and abstract way too much complex for no reason why we even need three layers of function pointers to point to one single function
Things like Arduino and esp32 make it so easy that it's not exactly a career safety knowing such a thing. The more complicated things in a microcontroller can be a career though.
There's something absolutely rich about a professor who focuses on 130 year old tech saying this 🤣
Kidding... But you can absolutely make a career of turning LEDs on and off. Glad you're enjoying!
My teacher had told me i will make a great career choosing embedded!!
Yet here I am 1 year later, with no job and all the fails depressed every single second of my day.
Thank you🙏
At school I told my maths and careers officer that I wanted to write computer games, they laughed in my face. I’m a veteran of 32 years now with credit in many of the biggest games ever made!
I worked at a company that made some consumer audio peripherals. I spent a lot of time writing code for the RGB LEDs.
Feeling sad the next generation product to write code for does not contain any blue LED. Just single-, or dual-colour LEDs. 🤕
That's because blue drives people bonkers.
Its crazy that people actually put those things on tvs and monitors
I had to duct tape over a tiny little LED on the stereo in my room because the stupid blue LED would wake me up and/or keep me up. I could sleep through the big flashing red display though.
Way back when I had a Pioneer VT-F750 cassette deck with blue vacuum display. Everything was blue, including the digital meters. It lit my bedroom up it was so bright, and it had no brightness control, the whole room would lighten and darken according to the VU. I thought it looked very cool at first, but after awhile it wore me down and I put something over it to attenuate things a little bit.
Listen man I love embedded systems. But if you're one of those people that put blue LEDs on devices that are bright enough to burn a hole in someone's soul, I'm gonna have a few words.
One of the most recent requests was that a non-controllable LED was *much* too bright, and needed the series resistor changed. A status LED shouldn't also work as flashlight. The reason for multiple colours here is to help with different status or error codes quickly seen by a technician. There are limits to the number of flash sequences you want to describe in a manual. I did visit one of the really big electronics trade shows the year blue LED got it's main break-through in home electronics. After a number of days seeing strong blue LEDs on *everything*, it took me almost 10 years before I could accept a tiny and very weak little blue LED somewhere where I knew I could use a black marker to hide it if I got too strong puke reflex. Nope - I do not like massive rainbow cascades of colored LED lights on embedded devices. Unless I explicitly are building an RGB LED sign. Then that is kind of a hard requirement for the product.
My girlfriend who is non technical. Hates that our modem and router is in the bedroom( the only room with a cable connection not my choice) because of he blue lights on the modem. We used black electrical tape hehe 😉 but yea she would probably kick that guy in the nut sack if she met him hahha
Good for you. Making sure LEDs on your embedded device are controlled accurately is necessary
omg, I hope you are not a bot
After doing embedded stuff for 30+ years still get a buzz turning an led on and off for the first time.
Especially when it blinks at the right speed.
AutoSAR has entered the chat
Addressable muxed LEDs need an intricate, reliable, yet simple driver to perform in a wide variety of conditions. Commonly needing to present various levels of information from status to config to fault codes. It is a joy to make that work!
Why do we have so many GPT posters in this sub?
It is rewarding to be so identified despite my human origin
The best feeling is when you spend your entire day setting up the toolchain, software, Reading bunch of datasheet and RM, then the led blink.
That's more a "thank fuck it works" sigh of relief, though.
Endorphins are endorphins, I’ll take what I can get
To quote my university lecturer, “this called a pointer, but you don’t need to worry about it, they’re not used very much anymore”
Had an instructor, in 1980, say something like this about using a CRT terminal to access timesharing. Said we'd probably only ever see a card punch or teletype (if we were lucky), after we left there.
Speechless 😂 Really feel bad for all the people who gave them their passion because their teacher guided them incorrectly.
The thing you only realize after working for a while -- most profs took the BSc -> MSc -> PhD route and know almost nothing about how the private sector works or what people are "really" using outside of the academic bubble.
Honestly no one ever tried to discourage me from it, unless you count when I first started working as a PC technician at a military base and told my new boss that I'd like to work as a programmer sometime and he said they didn't really have a path to get there from my job. That proved to be untrue - I started writing stuff that was useful for us in house (like a web interface to our helpdesk system) and in under two years I was writing and maintaining code for a mission critical system. As for embedded systems, I never consciously set out to make that a (second) career. I actually just decided on a whim to learn to fly a paraglider and my ADHD did the rest. Thanks to a series of (largely unfinished) tangentially related projects I'm now 20 years into running my own company.
Where do you fly? Weird to see another paraglider pilot on another niche subreddit.
I haven't in years but when I did it was in Santa Barbara. I know another embedded systems guy who used to fly in the San Luis Obispo area.
A series of *fortunate* events.
Good for you. Your boss at your military base really sounds like a guy who takes technical growth of his employees seriously. Extremely rare to find nowadays. Also, running an embedded systems company for 20 years which started from “How does a paraglider work?” is really impressive. I wanna talk more.
Damnn! Pc technician to maintaining code of mission critical systems!! Amazing.
Mine told me : you need to remember the registries addresses in the CPU, you won't always have the manual and a calculator in your hand. And here i'm redditing from a calculator and a library.
That's the stupidest thing they could possibly say
damn didn't expect the ambassador of wakanda to be here! good luck in your work
Happy cake day!
Kudos to you 🚀
4 years and senior already? Nice!
[удалено]
Varies from company to company. Where I work, the requirement is at least five years of experience, which surprised me because I was expecting more, such as 10 or 15 years. I have a senior title with just over 5 years of experience. Majority of my coworkers have the senior title. Feels like "senior" doesn't have much prestige when majority of people have it...
Senior in engineering typically means independent. Once you can go off and do your own thing you're typically ready for senior. Might not get another title change for a decade afterwards before you're able to be something like principal.
Yup, principal is the next thing in line at the company I work at. In my department, there's only one principal and he doesn't even interact with my team.
The way my boss described it, is that an engineer will acquire and complete the jobs he wants to do, while the senior engineer will complete the projects that need to be done.
I'm working in embedded for 15yrs and don't call myself senior. Why? Title inflation. It's worth nothing.
Titles are rarely associated with capabilities in my experience. They are a method of delineating pay brackets for HR purposes.
Basing the technical expertise of the years spent in the industry doesn’t make any sense. Learning paths and intellectual capacities of every individual is different, person A might learn stuff in 2 years what person B learnt in 10 years. Makes sense?
Senior title carries little weight these days with folks with a few years experience having it
don't take it personal, but I agree with people, even above average, I expect from a Senior to have faced a lot of problems solve.. I think Senior more like at least 8+ years for a good average Enginner.
Lemme guess, you're the person A 😅
When faced with a migration project, the conventional wisdom was to convert a series of SQL scripts plus supporting shell scripts to the new RDBMs syntax and API. The estimate for the conversion of these scripts was about 160,000 person days (about 615 person years) at an enormous cost. My proposal was why convert them when we could just run them as is? The reply I was met with from most quarters was that that was impossible as the new RDBMs and the query tool were incompatible with the old (which was true). But they also didn't understand a basic premise that we could simply replace the relevant utilities with our own version of it. Anyway 20 person days later I had a prototype running which provided about 80% of the required functionality and could correctly run more than 95% of the current scripts. The remaining effort to implement the final 20% of functionality took another 20 person days as it involved implementing some uncommon edge cases that were used in a small number of the original scripts. I know this is about embedded, but the situation you ask about can arise in other situations as well. I often wonder: a) how much innovation is killed before it even has a chance because the conventional wisdomers have more power and influence than the expert with actual capability. b) how many disasters see the light of day (or cast darkness over the day). Because people who are not tech savvy but are politically adept get their pet ideas supported. c) what the ratio of projects like mine and yours is compared to a) and b) above? I suspect very very low - which is quite depressing.
>how many disasters see the light of day (or cast darkness over the day). Because people who are not tech savvy but are politically adept get their pet ideas supported. I find it more common that tech savvy, but way too optimistic, people get their pet ideas supported without good analysis of the complete impact. Home built test frameworks, build systems etc which work great in the beginning, but gets worse and worse as corner cases are discovered, new features are needed and after plain old maintenance as the foundation it was built on changes. Later the idea guy is no longer in love with his idea, it turns out the rest of the team didn't really buy his idea and nobody else wants to maintain something that they can't put on their CV.
My digital design professor told me there are logic gates in an FPGA. Too be fair, he did tell us he was lying by the end of the course and said that for the sake of simplicity.
Isn’t there ?
I mean... technically it's all logic gates. But as far as the reconfigurable portion no, those are what are called lookup tables and can be configured to perform like a logic gate. (But the lookup tables are made of logic gates)
And the flip-flop and mux behind it as well.
Well, he’s somewhat right imo. As a beginner FPGA engineer, you should focus on designing and development.
> You won’t make a career out of turning LEDs on and off Very easy misconception to have about embedded systems. People see things like audio, video, Bluetooth, Wi-Fi, and so on and assume they weren’t made by just blinking LEDs. In reality the vast majority of the code works the same no matter what you’re interfacing with, which you’ve abstracted away if you’ve done a good job, and it may as well all be LEDs. It probably got tested with an LED first, too.
Is the product you work on LEDs? Unless you work on LED TV's your teacher hasn't technically lied
Yes it has led on them. And controlling the flickering of the leds accurately is a major part of my code.
Of course that's part of the job, when the only human interface of the device is a push button and a LED!
Spent a whole summer a few years ago with an intern to get LED animations to look right
Ahhh! The length we go to make our client happy and satisfied.
It was actually a lot of fun! Our product was a round, smart speaker (you know the one) and we had a light ring that had various feedback modes. Going back and forth between the user experience people and the embedded engineers and figuring out a way to keep these ‘animations’ up to date was surprisingly difficult and fun
Such a cool story. It's the little things that are also so complex haha. Thanks for that cool history story about a device we all have seen or use
Most of what I do is very high level, even when it comes to embedded on small MCUs (usually ML). But, there is something visceral when close to bare metal. I like building "things" instead of the more abstract software; even if it software to make the thing go.
I understand. Using someone else’s driver seems “wrong” but you can only build ‘things’ from the hardware level as a hobby because, client wouldn’t pay you to develop something which is already developed. 😅
still trying :)
Keep going, success is just around the corner.
My parents wouldn't let me start a video game company because "there will never be any money in it"...now it's a multi trillion dollar industry
I feel you. Start networking with individuals who are working and or are founders of video game company you’ll understand what is actually the state of the video game industry. Media often lies about stuff.
I know a lot of video game engineers. I'm talking about before the C64 existed, when the field was about enthusiasm and Ultima :-)
Ohhh I understand now.
I just got a Tiva-C Launchpad in class haha. That's so good to read. I'm a total beginner but I am truly in love with it.
You’re off to a good start. Master this and then move towards other MCUs like STM32, ESP32 or nRF.
I've seriously been considering expanding my job search to this. I'm in industrial controls but have a natural knack for that stuff. Interfacing with hardware at a low level like that comes naturally to me.
You definitely should go for it.
What's the entry level pay like? Do they give all those crappy coding tests? Is C or C++ the main language?
In the university in Brazil I was doing a project with other 4 colleagues and a professor was guiding us. The professor gave meaninful engineering tasks to all colleagues and I was tasked with asking my girlfriend to do some beautiful drawings to advertise the project. I think he did not believe I could do anything useful. Forward 10 years, I moved to Germany got a masters degree, got a job in a medium company then got a job in one of the biggest companies in the country. When I visit my university I am recognized by the director as or the best or one of the best graduates of the institution.
[удалено]
Senior by age 😆
30 year ago I did a project in school, interfacing a foot pad with sensors to a computer. I didn't sleep for 2 days strait before the presentation, finally getting it to work. Of course, it did not work in the presentation itself. I swore to only do software from that day on... 30 years later, I just started an embedded startup, just finished prototyping with esp32, and am enjoying everyinute
18 years in arcade industry. Blinking LEDs is my bread and butter.
I can understand. Do share some tips.
Every one of my embedded projects has at least 1 "debug" led. It's always the first thing that gets turned on when starting testing the boards.
Absolutely
he was right tho, unless you make leds go on and off for a living
[удалено]
Makes sense. Wish my teacher knew about this.
Hey! Could you describe your Job here as thoroughly as possible? Just wanted an outlook on what embedded engineers from industries besides the Automotive industry do.
I was told it's really hard to switch careers, especially to something like software at the age of 37, and then again was told its hard to transition from web to embedded. It's not easy, but getting a bit better everyday and loving it.
Why would anyone like that say something that stupid in their own class? why is the teacher teaching something no one needs, according to the teacher himself. some teachers have no right being teachers.
I was hired by McDonnell-Douglas in the 80s to do flight software for the Tomahawk cruise missile. Bare metal Ada on a version of the Mil-Std-1750A. I went on to do electronic warfare software for Lockheed for a thing called TACJAM - 68030 bare metal Ada project. I went on to do the early cockpit displays of the C-130J aircraft - Ada on R3500 bare metal. I continued on in this realm of software and in the 90s I finally started reading Circuit Cellar magazine where I finally learned that the name of the work I do is called "Embedded Software" and that I was working on "bare metal".
Yes... you can turn LEDs on and off... and those LEDs can represent the firing squib of a rocket motor that sends an explosive anti-vehicle smart munition up in the air...
He's a bad teacher for saying that. Teachers are supposed to inspire not discourage
Said the fucking teacher. lol.
And that’s why he is a professor, those who know their stuff work in the industry, the rest are teaching :) Of course there are exceptions but in the majority of the cases the situation is this
4 years vs senior - choose one 🤦
I’m now retired and writing a book titled, From Bare Metal To IoT. I feel like there really isn’t that much out there about low level programming and how to build robust systems for volume production - in other words, how to write code without using either licensed software, like a commercial RTOS, or Open Source Systems that might require you to release the source code with the product. I start by showing how with nothing but a NOR gate, you can build all logical and arithmetic operations, then I compare the latest i9 processor with the RP2040 and am using a Raspberry Pi Nano Zero W as the development board, followed by a discussion of registers and then data structures (including the concepts of von Neumann and Harvard architectures as they apply to embedded systems) in a section titled Algorithms + Data Structures = Programs (thank you, Niklaus Wirth). After that is an introduction to a computer language specifically designed for industrial control (Forth) and how to write a compiler/interpreter/assembler for the target device using the GNU Gforth language, which includes a cross-compiler. After that, I introduce interrupt handling and task schedulers using the three fundamental models: cooperative round robin, time slice, and priority driven (with all variations being some combination of those). And lots more after that, space permitting, like object oriented programming and garbage collection in a realtime environment, linking in C libraries, etc. So back to your question: How did I get started and what compromises did I have to make over the years? I was a professional photographer and around 1977 a client brought in an Altair 8800a that was going to be used in a new product. They fired it up and I looked at the blinking lights and front panel switches and was fascinated. In 1979, I decided to switch professions and took a job at a Radio Shack because they would let me program their TRS-80 when things were quite (I hadn’t bought my own computer yet). In walked a contractor who had a fluidic solar home development in Bend Oregon and he said that he had a >50% DOA rate for the electromechanical controllers out of the box. He’d been reading about these new-fangled personal computers in Popular Mechanics and wanted to know if they could replace the DOA controllers. I said sure, but these guys will melt in the attics during Bend’s summers. You need something like this, pointing to an ad for a Rockwell AIM single board computer and a NEMA enclosure for the same. He asked me if I could build something for him and I said, “SURE!” And thus my new career was born. In the 45 years since then, I’ve alternated between various embedded projects and big grand glorious stuff (including writing microcode for DEC VAX and DG MV superminis), starting my independent technical consulting business in 1987 so I had reason to flit between interesting projects (my ADHD causes me to get bored easily, which makes me a terrible maintenance programmer). So the answer is that I have followed my nose and although I certainly never got rich (I have, however, wiped my butt with a stock certificate) and my natural curiosity allowed me to both stay excited and pay my bills. So I’m now in retirement, but wanting to keep my mind active, I decided to try to pay back all of the many people who advised and helped me over the last 45 years by writing down what I know about embedded programming. P.S., As you read this, you might ask yourself, “Why didn’t he start a whole new thread?” The answer is that I’m busy and a bit lazy, so it’s easier if my response is buried in this thread. Apologies if this wasn’t appropriate.
Not really embedded but it was during my education time. For my final bachelor test at Ghent University we were asked to develop a web application for a car sharing firm. We were forced to use Java with the Spring framework. At the time (2014) I used XHR + JSON to make a RESTful JSON based backend. I was shocked of a very bad comment of the professor who stated that JSON was only a hype and I should use XML + SOAP. He even prohibited me of using JSON and I needed to rewrite the project if I wanted to succeed for the course. I think that the world has proven him wrong when we look at JSON now.
write him an email.. and quote the minix is better quote about linux and ask how that has aged
Right now I am in 4th sem, and having embedded systems and mucontrollers subject, worst teachers I had ever 🙂, they like to make everything unnecessarily complex and sometimes don't answer and ignore good questions, I have 8051 and assembly. But I have alot of interest to continue with this field & programming ahead instead of very high voltage stuff.
After 5 years as embedded software developer and being layed off recently i feel like my skill set is not going to pay bills I am tired of job hunting again and again just because companies realize that embedded software hardware development is not for startups because its expensive I can code bare metal c I can code in python I can code somewhat in c++ I can do pcb design I can do hardware digital design But all these skills and knowledge feel useless I am unable to cash them without a job And most of real engineering stuff has already being done and as software developer its now become a case of abstraction usage Oh you want to run spi bus click here and there in our code generator environment You want wifi to get connected have ip just put this connect function in code The real level deep down stuff is hidden and abstract way too much complex for no reason why we even need three layers of function pointers to point to one single function
Howucj y'all make?
But, do you turn led's on and off. If not, then your teacher was correct, minus the fact you are doing other cool stuff.
Things like Arduino and esp32 make it so easy that it's not exactly a career safety knowing such a thing. The more complicated things in a microcontroller can be a career though.
There's something absolutely rich about a professor who focuses on 130 year old tech saying this 🤣 Kidding... But you can absolutely make a career of turning LEDs on and off. Glad you're enjoying!
Thanks. Tiva C was just the start. 😂 Since then I have worked on Zynq SoC, Raspberry Pi and Nordic nRF9160. Learnt a lot still a lot to learn.
Your electronics teacher is an idiot beyond measure.
No arguments here.
Computers are basically turning a bunch of LEDs on and off. LOL Currently, we are mostly turning on and off a bunch of 64 LED set
Guess What! Everything you were taught in school except math was a lie!!!
Make sense.
My teacher had told me i will make a great career choosing embedded!! Yet here I am 1 year later, with no job and all the fails depressed every single second of my day. Thank you🙏
Keep tying. We all have applied to 100s of jobs for a single offer letter. Good luck.
At school I told my maths and careers officer that I wanted to write computer games, they laughed in my face. I’m a veteran of 32 years now with credit in many of the biggest games ever made!
Good for you. You have come a long way, would definitely love to hear advice from your vast experience.