Questions tagged [firmware]

Firmware is one of the most often used terms to denote the fixed programs and/or data structures that internally control an electronic device.

The wiki page describes firmware as the combination of persistent memory and program code and data stored in it.

Typical examples of devices containing firmware are embedded systems (such as traffic lights, consumer appliances, and digital watches), computers, computer peripherals, mobile phones, and digital cameras. The firmware contained in these devices provides the control program for the device. Firmware is held in non-volatile memory devices such as , , or .

Changing the firmware of a device may rarely or never be done during its economic lifetime; some firmware memory devices are permanently installed and cannot be changed after manufacture. Common reasons for updating firmware include fixing bugs or adding features to the device. This may require physically changing ROM integrated circuits, or reprogramming flash memory with a special procedure.

Firmware such as the ROM of a personal computer may contain only elementary basic functions of a device and may only provide services to higher-level software. Firmware such as the program of an embedded system may be the only program that will run on the system and provide all of its functions.

640 questions
58
votes
6 answers

How can I use a C++11 to program the Arduino?

How can I use C++11 when programming the Arduino? I would be fine using either the Arduino IDE or another environment. I am most interested in the core language improvements, not things that require standard library changes.
walrii
  • 3,472
  • 2
  • 28
  • 47
57
votes
4 answers

How does Linux Kernel know where to look for driver firmware?

I'm compiling a custom kernel under Ubuntu and I'm running into the problem that my kernel doesn't seem to know where to look for firmware. Under Ubuntu 8.04, firmware is tied to kernel version the same way driver modules are. For example, kernel…
Robert S. Barnes
  • 39,711
  • 30
  • 131
  • 179
40
votes
6 answers

A good serial communications protocol/stack for embedded devices?

After writing several different custom serial protocols for various projects, I've started to become frustrated with re-inventing the wheel every time. In lieu of continuing to develop custom solutions for every project, I've been searching for a…
Gabe
  • 2,526
  • 1
  • 23
  • 24
36
votes
8 answers

Experiences with (free) embedded TCP / IP stacks?

Does anyone have especially good (or bad) experiences with any of the following embedded TCP / IP stacks? uIP lwIP Bentham's TCP/IP Lean implementation The TCP/IP stack from this book My needs are for a solid, easy-to-port stack. Code size isn't…
Dan
  • 10,303
  • 5
  • 36
  • 53
34
votes
5 answers

Why would I consider using an RTOS for my embedded project?

First the background, specifics of my question will follow: At the company that I work at the platform we work on is currently the Microchip PIC32 family using the MPLAB IDE as our development environment. Previously we've also written firmware for…
spade78
  • 1,939
  • 1
  • 20
  • 29
25
votes
9 answers

What can firmware engineers learn from software engineers?

Judging from my knowledge of the history of firmware engineering tools, practices etc. It has consistently lagged behind the software engineering field by several years. For example, as far as I can tell there is still a fair amount of debate in…
Gabe
  • 2,526
  • 1
  • 23
  • 24
22
votes
4 answers

Is it possible to disable Android firmware update notifications?

I have an application running on phones that aren't meant to be touched or interacted with in any way. I want my application to run correctly 24/7/365. The only issue I'm having is that every few weeks or so, a notification pops up about updating…
TomBomb
  • 3,236
  • 5
  • 31
  • 40
21
votes
2 answers

analysing packed file of unknown format, how to continue?

Im interested in taking a deeper look into the firmware of my Behringer X32 mixing console, so i downloaded the actual file from (http://www.behringerdownload.de/X32/X32_Firmware_2.10.zip) and started IDA pro. The contained .update-file inside…
rhavin
  • 1,512
  • 1
  • 12
  • 33
20
votes
6 answers

What is the difference between the firmware and the operating system?

In embedded devices such as printer, switches, I am confused what the difference between the firmware and the operating system is. Are embedded devices operating systems similar to PCs (Linux and Windows)? For example, I have a printer which has an…
19
votes
17 answers

Writing firmware: assembly or high level?

Related to: Testing firmware starting a microcontroller simulator/emulator Interpreting assembly code If you are writing code for a microcontroller is there a real difference if you write in assembly or C or some other high level language? If…
cbrulak
  • 15,436
  • 20
  • 61
  • 101
15
votes
6 answers

Arduino C++ code: can you use virtual functions and exceptions?

Following up on this comment from the question Writing firmware: assembly or high level?: When compiling C++ code for the Arduino platform, can you use virtual functions, exceptions, etc? Or would you want to (have to) use a subset of C++ (as…
cbrulak
  • 15,436
  • 20
  • 61
  • 101
15
votes
6 answers

What sort of things are UEFI "applications" actually used for?

I'm interested in PC firmware programming, and am just studying the UEFI spec. To my surprise, it seems like a spec for an entire OS which is embedded in firmware. You can even write UEFI "applications", which run directly using the UEFI boot…
Alex D
  • 29,755
  • 7
  • 80
  • 126
15
votes
17 answers

Is low-level / embedded systems programming hard for software developers?

Given my background as a generalist, I can cover much of the area from analog electronics to writing simple applications that interface to a RDBMS backend. I currently work in a company that develops hardware to solve industry-specific problems. We…
Toybuilder
  • 11,153
  • 5
  • 28
  • 33
14
votes
3 answers

Linux-Based Firmware, how to implement a good way to update?

I'm developing a linux-based appliance using an alix 2d13. I've developed a script that takes care of creating an image file, creating the partitions, installing the boot loader (syslinux), the kernel and the initrd and, that takes care to put root…
Daniele Salvatore Albano
  • 1,263
  • 2
  • 13
  • 29
14
votes
2 answers

Debian Firmware bug TSC_DEADLINE disabled due to Errata

On Debian, when machine is boots, it shows error: [Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0xb2 (or later) I did sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade and it…
Yehuda
  • 457
  • 2
  • 6
  • 16
1
2 3
42 43