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
8
votes
4 answers

What is the difference between the Lego Mindstorms 1.0 and 2.0

I am thinking about buying a mindstorms kit (I don't currently own one but I have used 1.0 at university) and I am a bit unsure as to the benefits of 2.0 over 1.0. I have seen other posts on the subject all saying generally 2.0 is better but I have…
Gavimoss
  • 365
  • 2
  • 4
  • 22
8
votes
2 answers

Two sequential branch instructions in MIPS assembly?

I am trying to reverse engineer a MIPS firmware. The firmware is big endian encoded, for a 32bit r4kec processor. I have disassembled (using objdump) the binary to see what the assembly looks like, and everything looks like valid code, but right at…
gorby
  • 83
  • 3
8
votes
1 answer

Is there a reply to AT+GCAP & co. to tell "I'm not a modem, go away"?

I'm working on the firmware of a device that is going to be connected to PCs using Bluetooth in serial port emulation mode. During testing, I found out that modem-manager on Linux "helpfully" tries to detect it as a modem, sending the AT+GCAP…
Matteo Italia
  • 123,740
  • 17
  • 206
  • 299
8
votes
2 answers

Firmware and drivers in Linux

As per my understanding, the firmware is what controls the hardware, and drivers interacts with the firmware to control the hardware. Is that correct? In Linux, what are the APIs or functions which interact with the firmware? Is the firmware code…
foo_l
  • 591
  • 2
  • 10
  • 28
8
votes
1 answer

How do you hack/decompile Camera firmware? (w/ decompiling tangent)

I wanted to know what steps one would need to take to "hack" a camera's firmware to add/change features, specifically cameras of Canon or Olympus make. I can understand this is an involved topic, but a general outline of the steps and what I issues…
user1229895
  • 2,259
  • 8
  • 24
  • 26
7
votes
2 answers

Understanding linker script NOLOAD sections in embedded software

According to the GNU documentation for ld, a NOLOAD section works as following: The `(NOLOAD)' directive will mark a section to not be loaded at run time. The linker will process the section normally, but will mark it so that a program loader will…
Dan
  • 2,452
  • 20
  • 45
7
votes
3 answers

#define vs enum in an embedded environment (How do they compile?)

This question has been done to death, and I would agree that enums are the way to go. However, I am curious as to how enums compile in the final code- #defines are just string replacements, but do enums add anything to the compiled binary? Or are…
Alexander Kondratskiy
  • 4,156
  • 2
  • 30
  • 51
6
votes
1 answer

How to upgrade openwrt without losing the configuration?

I need to make a script to upgrade my router without losing the configuration files and packages installed on the router. I tried to repeat the same behavior of the interface in my script (I used the command sysupgrade) but I lost the…
developer
  • 4,744
  • 7
  • 40
  • 55
6
votes
1 answer

Implementing Wi-Fi Direct for ESP32

First, I'm referring to the Wi-Fi P2P standard as described here, and specified here. I'm not referring to the method of creating an AP and station pair. Second, if an implementation of Wi-Fi Direct for the ESP32 already exists, please share. I've…
Ababwa
  • 131
  • 1
  • 8
6
votes
3 answers

kernel module cannot find firmware file on Android device; where should it be?

I am having trouble placing firmware properly on an Android device, I keep getting: <3>[ 3590.997375] usb 3-1.4: ath9k_htc: Firmware - htc_7010.fw not found If on a standard linux machine running Ubuntu, I place htc_7010.fw in /lib/firmware then I…
gnychis
  • 7,289
  • 18
  • 75
  • 113
6
votes
1 answer

XCode 4 and iOS 4.2.1

I've installed XCode4 and I need to build for iOS 4.2.1 is there a possibility to install the "old" firmware 4.2.1 and build against it?
Chris
  • 2,296
  • 4
  • 27
  • 46
6
votes
3 answers

Is there a open source firmware for any low end cell phone (non smart phone)?

This question is about low end mobile phones which cost around $50 to $100, unlike Smart Phones like iPhone or the ones that support Android. Nokia 1280, 1800 are some examples. I want to customize the basic features such as Contacts, SMS in such…
Jagan
  • 447
  • 5
  • 12
6
votes
2 answers

PIC16F1829 UART RX Interrupt not working using MPLABX and XC8 compiler

I am new to writing firmware for 8-bit PICs and could use some help with my code. I am using a PIC16F1829 for an LED module which gets RX commands. I am just trying to get the basics setup like turn on LEDs when a certain value is received on RX…
humanistscience
  • 119
  • 1
  • 8
6
votes
2 answers

Why do we need AML - ACPI Machine Language?

As I understand, ACPI defines a generic hardware programming model where operating system relies on the OEM firmware provided AML (ACPI machine language) code to manipulate the hardware. In order to execute the AML code, operating system has to…
smwikipedia
  • 61,609
  • 92
  • 309
  • 482
6
votes
4 answers

Debian 8. Failed to load iwlwifi

I used the netdisk iso to install debian, which apperently is missing the firmware files: rtl_nic_rtl8411-2.fw and iwlwifi, so I can't get my wifi working. My laptop uses intel wireless-AC 8260, and I have updated my kernel to 4.8 Dmesg output: …
M.hjespersen
  • 81
  • 1
  • 2
  • 9
1 2
3
42 43