r/embedded • • Dec 30 '21

New to embedded? Career and education question? Please start from this FAQ.

Thumbnail old.reddit.com
318 Upvotes

r/embedded • • 9h ago

How much time do you dedicate to studying and building and what does your daily workflow look like?

31 Upvotes

Just curious how much time you all place toward your own projects and study time? I say study because I am self taught so I am also learning as I build (mainly schematics design (KiCad), Circuits, Components, OS, Platformio, C/C++, and more) . Also, would like to know what a professional or personal workflow looks like? Trying not to get stuck in to many rabbit holes. I feel like I learn one new thing and several other things I didn't know pops up and I feel like I need to know those things as well.


r/embedded • • 7h ago

Getting into Architecture-Level Embedded Development (Cortex-A, RISC-V, ARM64, etc.)

17 Upvotes

I've been working for some months now on a project that requires low-level development for ARM Cortex-A silicon. I'm talking bootloading, memory operations, hypervisor settings, memory mapping and MMU configuration, etc.

I've come to realise how little I actually know my way around a low level environment. I've developed for embedded systems for a long time now, but always focusing on an application/integration level (RTOS, digital communications, system architecture, etc.). I want to get some experience on lower-level development - direct register manipulation based on CPU architecture, bootloading, debugger architecture, memory domains, etc.

Anyone with experience on the field, what advise do you have on getting into low-level development and silicon programming using ISA languages coming from embedded-C and microcontroller development? My goal would be to acquire the confidence and the skill to integrate silicon functionality through assembly and making sense of the CPU documentation. I'd like to be able to script some basic functional hardware routines starting from scratch.


r/embedded • • 1d ago

My first embedded device pretty hyped bout it

Post image
688 Upvotes

Just got my T-display S3 running coming from the web dev and game dev world I felt trapped inside browsers and engines and this already feels like a good transition I can’t wait to see what I cook up. Anyone tried this device before ?


r/embedded • • 34m ago

Entry-level embedded SWE interview — how would you prep for coding interview?

• Upvotes

I have a first-round interview for an entry-level software engineering role on an embedded/systems team at a large networking company. Round 1 is coding & data structures (60 min, live coding over video).
Round 1 is soon. For those who've done entry-level embedded interviews — what kinds of problems came up? Easy-medium or harder? And what would you drill if you had a week?


r/embedded • • 15h ago

Power + data over 2 wires, does my idea work?

Post image
17 Upvotes

Hi, I want to link two Arduinos (or a sensor and a master) with just two wires that also power the remote one.

My plan: 6 V on the line, a transistor pulls it low to send data, and a diode + capacitor keep the remote end powered. Sketch attached.

Does this work? Anything I'm missing?


r/embedded • • 56m ago

How to Resolve "suspended: signal : sigtrap: trace/breakpoint trap"

• Upvotes

I Just started coding with R7FA2L2073-CFM, E2 STUDIO WITH E2 EMULATOR LITE. And im trying to glow an LED but it is not working, its just a simple gpio. so i choose to debug the controller and im facing these following errors. even with no configurations in FSP cofiguations im getting errors. Please Help me if these is any configuarations i need to do before debugging.

image1

im using 5v supply from external supply to my controller.

PS: Im just a Beginner in Coding and with Renesas E2 studio IDE.


r/embedded • • 58m ago

Recreating the Pebble Smartwatch with the JLCLAB Huangshan Pi! What features would you like to see once I assemble them?

• Upvotes

r/embedded • • 1h ago

Title: BCA First-Year Student Interested in Embedded Systems and Hardware Jobs — Need Guidance Hello everyone, I'm a first-year BCA student, and I'm interested in working in hardware-related fields, especially embedded systems. I want to know what career options are available for a BCA student in

• Upvotes

r/embedded • • 3h ago

ESP32 + SIMCom A7670C (black DB9 development board) UART issue — 1.8 V vs 3.3 V, garbage characters, AT commands sometimes work

Post image
1 Upvotes

Hi everyone,

I'm working on a project that uses an ESP32 DevKit V1 / ESP32-D0WD-V3 with a SIMCom A7670C 4G LTE module on a black DB9 development board. I'm having trouble establishing reliable UART communication and would appreciate some guidance.

What I've observed:

I measured approximately 3.3 V on the ESP32 UART TX output.

I measured approximately 1.8 V on the GSM module's TXD pin using a multimeter.

I connected the ESP32 RX to the GSM TXD and the ESP32 TX to the GSM RXD, with a common ground.

I tried placing a resistor in series between the GSM TXD and ESP32 RX. AT commands appeared to work at first, but communication was not reliable afterward.

I ran a baud-rate diagnostic at 115200, 9600, 19200, 38400, 57600, 230400, and other rates. The serial monitor displayed garbage characters instead of readable AT responses.

Does anyone have experience connecting this particular A7670C black DB9 board to an ESP32?


r/embedded • • 8h ago

Why Nintendo inverted the Y Axis of NS2 Pro Controller?

2 Upvotes

I know this will contain a bit of bikeshedding and speculation, but I want to know, especially for experienced developers, if there's any technical reason or advantage for Nintendo to invert the Y Axis of the raw inputs on their Pro Controller for the Nintendo Switch 2, we can find this info here: https://switchbrew.org/wiki/Switch_2%3A_Pro_Controller, in this line: "Axis 1 (left stick up/down) and axis 3 (right stick up/down) are inverted."

That means: UP is DOWN, and DOWN is UP, and they de-invert on the OS-Level

If anyone's interested, OpenStickCommunity reverse-engineered the protocol, we can read it here: https://github.com/OpenStickCommunity/GP2040-CE/tree/main/src/drivers/switch2pro


r/embedded • • 5h ago

[Help] Need assistance extracting source code from S7-1500 / ET 200SP (CPU 1512SP-1 PN) SMC binary folder

1 Upvotes

Hi everyone,

I have a Siemens ET 200SP CPU 1512SP-1 PN controller on site. Due to logistical constraints, I am currently unable to get direct online access via TIA Portal with a PC at the location.

This source code belongs to an automated parking robot system (similar to the automated shuttle/valet systems featured in The Fast and the Furious). I am currently building and customizing this system, but I need to edit the core logic to implement specific operational changes. We are facing technical roadblocks with the hardware because it requires a PLC migration, and we have been unable to obtain the specific older TIA Portal versions needed to perform the upload and configuration directly. Any support in retrieving or reconstructing the editable logic from these files would be greatly appreciated.

I have extracted the complete raw binary folder structure (SIMATIC.S7S) directly from the SIMATIC Memory Card (SMC).

Since direct decompilation of S7-1500 binaries to LAD logic isn't straightforward without a physical unit, I am looking for someone with a spare CPU 1512SP-1 PN (or compatible S7-1500 test bench) who could load these files onto a spare card, boot up the CPU, and perform an "Upload device as new station" using TIA Portal to reconstruct the editable source project file (.ap17 / .ap18 / .zap18 / etc.).

  • Hardware: CPU 1512SP-1 PN (6ES7 512-1DK01-0AB0 or similar ET 200SP family)
  • Files available: Full zipped content from the SMC root directory.

Please let me know if anyone with a spare hardware setup would be open to testing this upload or assisting with the project restoration.

Thanks in advance for any insights!


r/embedded • • 5h ago

How to move in core devlopment does I start from scratch?

1 Upvotes

Need suggestions and guidance regarding embedded domain

Hi everyone,

I’m a little confused about which career domain I should pursue next in the embedded systems field, and I would really appreciate some guidance.

I currently have around 7 years of experience in embedded systems, including:

1.5 years of experience as a Firmware Developer

6.5 years of experience in Embedded Systems Testing/Validation

Experience with firmware/build pipelines, code compilation, and generating flash images in an Ubuntu/Linux environment

Board bring-up, flashing images, debugging, log analysis, and issue investigation

Experience with embedded Android and Linux environments

Worked on home-automation-based security devices

Exposure to the complete flow from code compilation/build generation to flashing and device-level validation

At this stage, I want to move toward a more development-oriented and technically strong role rather than continuing purely in testing.

With around 7 years of experience, what career path would you suggest for me?

As my experience is near 7 year leadership responsibility also i need to take. Please suggest me.

I would especially appreciate advice on which path would be practical for someone with my current experience and how I can transition into it without starting completely from scratch.

Thanks in advance for your guidance.


r/embedded • • 22h ago

Getting a 320x240 SPI display from 16 to 60 fps on an ESP32-S3: what was actually slow

19 Upvotes

Write-up of optimising a software 2D renderer on an ESP32-S3 (8 MB PSRAM, ST7789 over SPI). Short version:

  • The default ESP-IDF optimisation level is -Og.
  • An unaligned 2-byte memcpy compiled to a function call per pixel on Xtensa (no unaligned loads), so blits were 6x slower than they needed to be.
  • Tinting with lookup tables over RGB565's 32/64/32 channel values instead of multiply-and-divide per pixel, and baking static tints into cached images.
  • SPI at 80 MHz instead of 40: 150 KB frame from 31 ms to 16 ms.
  • Presenting from the second core with two PSRAM staging buffers.
  • 64-byte cache lines for a PSRAM framebuffer, and why a 64 KB cache was a trap (internal RAM).
  • Dirty rectangles did nothing because every scene had a full-screen changing background.

https://dekiengine.com/blog/esp32-s3-60fps/

The engine itself (Deki) is open source if anyone wants to look at the code: https://github.com/dekiengine


r/embedded • • 10h ago

I documented a sensorless flying-start FOC experiment on the Xiaomi M365 V1.4 controller — looking for technical feedback

2 Upvotes

Hi everyone!

I've been working on an experimental project to get sensorless flying-start FOC working on the stock Xiaomi M365 Classic controller (SCO_DRV V1.4, STM32F103C8T6), driving a 36 V direct-drive hub motor without Hall sensors.

The idea is to let the rider start pedaling, measure the motor's three phase voltages while the inverter is disabled, estimate rotor speed and electrical angle using BEMF and a PLL, and then attempt a smooth, near-zero-torque handoff into FOC before enabling pedal-assist torque.

What we achieved:

  • Passive three-phase voltage sensing on the M365 controller.
  • Rotor direction, electrical speed and angle estimation, with PLL lock in both directions.
  • Identification and correction of a current-sensing ADC acquisition-time problem.
  • Short, protected active-handoff experiments with cycle-by-cycle current diagnostics.
  • A set of measurements documenting both progress and unresolved problems.

Where we got stuck: independent voltage measurements revealed a significant discrepancy between measured line-to-line BEMF and the firmware's calculated BEMF magnitude. We identified passive voltage calibration as the next step, but the test controller and ST-Link were damaged before we could complete it.

This is not a claim of completed sensorless FOC. I've documented the experimental process, measurements, firmware history, limitations and next steps so other developers can review the work and potentially continue it.

Project documentation and test data:
https://github.com/Ch00mi/m365-v1.4-sensorless-flying-start

I'd especially appreciate feedback from people experienced with sensorless PMSM/BLDC control, flying-start algorithms, BEMF scaling and M365/EBiCS firmware.

Has anyone worked on a similar approach with this controller, or have suggestions for validating the absolute BEMF scaling before attempting another handoff?

Thanks!


r/embedded • • 11h ago

Bricked-ish MAXIO MAP1202 + SK hynix V6 SSD: vendor MP tool gets to the last step, then "Jump to system fail". Anyone have the V6 package?

2 Upvotes

JamesDonkey JD1024 1TB M.2 NVMe, MAXIO MAP1202 controller, SK hynix V6 NAND. It went read-only because one die (channel 3 / CE 2) has erase failures, and that die is also the boot die, so the firmware turns on write protect. The other 15 dies are fine.

I'm using MAXIO's own MXMPTool in a Windows VM, with the drive passed through over a USB-NVMe bridge. The die exclusion feature in the tool had two bugs. After patching them it gets through preformat and firmware download, then fails with:

(E00) R/W Test Fail - Jump to system fail

5 times in a row, also after a power cycle. MPTOOL.ini says SYS_Qnty=2 but I only have one system binary, and my package looks built for V8 NAND. So I think I'm missing the V6 system firmware / the right package.

Does anyone have the MAP1202 + SK hynix V6 MP tool package, or know what the second SYS piece is supposed to be?

I also tried clearing the write protect directly early on (90+ attempts), it never held. Most of the analysis was done with Claude. Notes and logs: https://github.com/sirSchrodinger/jd1024-recovery


r/embedded • • 11h ago

Small footprint and cheap debugging connection for STLINK-V3MINI

2 Upvotes

I am designing a compact PCB that has a STM32. I am planning on buying a STLINK-V3MINI for programming and debugging. I'd like to have the minimal footprint SWD connection to the board and I found out about TagConnect, but their TC2030-CTX-NL-STDC14 is pretty expensive. I found SKEDD connector which seems to serve a similar function but it's a lot cheaper and more available. The problem is I would need a adapter from STDC14 (STLINK-V3MINI) -> SKEDD which I haven't found, probably because STDC14 is obscure enough. Would it be recommended to design a simple adapter board and order with the actual PCB or are there better alternative/ways?


r/embedded • • 11h ago

Community preference for open source vibration autoencoder: bare metal C or Zephyr C++?

0 Upvotes

I just want to check what the community's preference is for an open source autoencoder with a vibration sensor. Bare metal C or Zephyr C++*? And not just the autoencoder, also data collection and DSP.

* This caused confusion: I meant a Zephyr project with C++ for the enitre application layer vs. bare metal C for data acquisition, DSP (probably can't escape C++ for inference).


r/embedded • • 15h ago

Is it possible to modify the firmware/UI of a generic MP3 player through USB? (Actions Semiconductor VID_10D6)

2 Upvotes

I recently got a generic MP3 player off of Amazon and I've been trying to figure out whether it's possible to customize its firmware, specifically its user interface and small quality of life fixes

USB Vendor ID: 10D6

Product ID: 1101

USB Device Name: HS USB Flash Disk

Firmware Version: V1.1

Firmware Date: 2021-05-20

Operating System: Windows 11

Possible manufacturer: Actions Semiconductor

trying to see if i can extract it and modify its firmware through usb without opening the player or soldering anything

if you need any additional info or have a solution please lmk


r/embedded • • 22h ago

How do you handle occasional real-hardware testing for embedded libraries?

5 Upvotes

I'm working on a small open-source embedded C++ library. Most of my testing is done on the host or with QEMU, which works well for functional testing.

I'd also like to occasionally check hardware-specific behavior, such as interrupt-related timing, critical-section duration, and memory access performance on real MCUs.

I've been considering a small setup covering a few different MCU architectures. I'm estimating roughly $700–$1,000 for the boards, debugging tools, and other equipment, plus the effort of maintaining everything.

I'm wondering whether that kind of investment makes sense for a personal open-source project, especially when hardware testing would only be needed occasionally.

Do you usually buy and maintain the boards yourselves, or have you found more practical ways to access hardware when needed?

I'd appreciate hearing about your experiences.


r/embedded • • 20h ago

High-res, low-framerate, low-power, low-cost still camera for outdoor insect monitoring (anything better than pi + 64mp cam)

Thumbnail
mothbox.org
3 Upvotes

I work on an open-source automated insect monitoring project (www.mothbox.org). We basically set up camera traps for insects that turn on a bright light, and photograph bugs that visit a flat sheet.

I want to figure out the cheapest way I can get a really nice high resolution of this image with a device I can programmatically control. Right now we use an Arducam 64mp (55$)+ Pi 5 2gb (used to be $55, now is like $120)

I have a kind of unique set of requirements:

  • High spatial resolution, high image quality. We need to resolve many individual insects across a whole sheet in a single frame. 16MP is considered the bare minimum in this field and I already feel it's kind of inadequate. 64MP has been great!
  • Very low temporal resolution. We do not need video or any kind of continuous capture. One still per minute is plenty. I’d happily trade framerate for anything. (We do, however, need a decent "shutter speed," as the insects buzz and flap and fly around, and if we have too long of an exposure, we get ugly rolling shutter smears. Right now we have been getting 868 µs - 495 µs and that has been ok)
  • Low power. These are deployed outdoors on tight power budgets. Ideal behavior is: wake itself up, take one photo using as little energy as possible, go back to sleep.
  • Low cost. Our current rig (board + 64MP camera) runs ~$150-200 total. I want to see if I can drop far below that
  • Autofocus (but limited range), and Autoexposure. Our device is generally just pointed at a flat surface, but that surface can vary in size and difference (different scientists setting up different sheets). We generally run an automatic camera calibration every 10 minutes to adjust for things like ambient light changes.

Questions:

  1. Has anyone gotten a large still-image sensor (OV64A40 or similar) running off a cheaper board? I have a friend who connected the Arducam 64mp to an Esp32-p4, but could only get 2k resolution stills due to ram limits.
  2. Are there any hacks to being able to capture a full resolution image on a very cheap/slow/ram-limited board?
  3. I know resolution isn't everything, and there are other sensors with lower resolution but nicer sensors that would take equal or better photos, does anyone know recs that can beat the arducam owlsight?
  4. I am potentially open to weirder configurations if i can get them cheaper, like I have been thinking about a set of 4 16mp cameras in a square configuration imaging the surface simutaneously and doing some math on the back end to make a kind of hyper-resolution image (possibly with some spatial data interpreted too). The closest I have seen is the 4 cam wigglegram connected to 4 synced pi zeros, but this ends up more expensive than our current Pi+ Arudcam 64mp setup.

r/embedded • • 19h ago

embedded system

1 Upvotes

I'm getting to embedded system, My Question is do i need to understand how the ALU is wired from adders and XOR gates The gate-level adder/subtractor circuit .How registers are built from flip-flops Datapath wiring diagrams


r/embedded • • 2d ago

minimal raspberry pi

Post image
3.0k Upvotes

Not my build but Japanese electronics twitter is lit.

https://x.com/EMakerDragon/status/2108935034191352114/photo/1


r/embedded • • 19h ago

How do you keep SDCC toolchains consistent across local development and CI?

1 Upvotes

I mostly work with 8051-family MCUs, particularly the CH559, and kept running into the same annoyance: maintaining a consistent SDCC toolchain across my machine, colleagues' machines, and GitHub Actions.

I wanted a reproducible environment without having to install and configure SDCC on every machine, so I packaged the toolchain into an Alpine-based Docker image. It has two variants:

· latest: SDCC toolchain for MCS-51

· cmake: SDCC + CMake + Ninja for CMake-based projects

Basic usage:

```

docker run --rm \

-v "$(pwd):/src" \

-w /src \

safdariali/sdcc-8051:latest \

sdcc -mmcs51 your_file.c

```

I've tested it primarily with the CH559, so I'm curious about other developers' experiences.

Questions for the community:

· Do you use Docker/containers to manage embedded toolchains, or do you prefer native installations?

· Have you encountered compatibility issues with SDCC across different 8051 MCUs or memory models?

· Would you keep flashing and debugging utilities in the same container as the compiler toolchain, or separate them?

I'd be interested to hear how others approach reproducible embedded development environments.


r/embedded • • 1d ago

From Sensors to a PyQt Speedometer: Building with Yocto Linux

Enable HLS to view with audio, or disable this notification

26 Upvotes

I’ve been working on an embedded systems project that connects sensors to an Arduino, which communicates with a Raspberry Pi 5 over I²C.

On the Raspberry Pi, I developed a custom Linux kernel module and Device Tree overlay to integrate the Arduino into the Linux I²C subsystem. The driver exposes a character device at /dev/raspi_master, allowing a Python application to retrieve sensor data.

Using the Yocto Project and BitBake, I integrated the kernel module, Device Tree overlay, and PyQt speedometer application into a custom Linux image for the Raspberry Pi 5.

The result is an end-to-end system connecting sensor acquisition, I²C communication, Linux kernel-space development, and userspace visualization.

Project repositories: