
Forums More Forums
Matrix math C++ class library for MCUs?
inHi Guys - I'm searching for a C++ matrix math library suitable for Kalman filter implementation on MCUs. I found a few but they may be...
Hi Guys - I'm searching for a C++ matrix math library suitable for Kalman filter implementation on MCUs. I found a few but they may be zombies, for example Eigen https://stackoverflow.com/questions/73883276/eigen-matrix-template-library-over-arm-cmsis-dsp got crickets. What do you guys use? Thanks in advance, Best Regards, Dave
Embedded Linux processors
inI was idly looking to see what was out there in the low end Linux space - something bigger than an ESP32 but more production friendly than a...
I was idly looking to see what was out there in the low end Linux space - something bigger than an ESP32 but more production friendly than a Raspberry Pi. I came across this excellent guide: https://jaycarlson.net/embedded-linux/ He builds dev boards for 10 different chips from 7 vendors, just to see how it all goes - both hardware and software. The results are quite interesting. An...
QFN packages and layout on crowded PCBs
I've been looking at alternative chip packages to improve routing on tight boards. It seems like the issue is space for vias. Leaded surface mount...
I've been looking at alternative chip packages to improve routing on tight boards. It seems like the issue is space for vias. Leaded surface mount parts have space under the chip body for vias. Most QFN devices do not, they have a thermal pad. A 16 pin TSSOP has a solder pad footprint of 5 mm x 7.3 mm, leaving a 5 mm x 4.3 mm space underneath for routing. I can fit a bunch of routin
Override libc functions
inMany times I'd like to replace libc functions in embedded systems, because of some tests or because I need a different implementation. For...
Many times I'd like to replace libc functions in embedded systems, because of some tests or because I need a different implementation. For example, sprintf implementation of newlib uses malloc and I can't use it many times. It sometimes happens that I can use malloc, with some restrictions. Just for test or optimization, I replace libc malloc with my own implementation. In these cas...
Run-time diagnostics in deliverables
I design with a real-time, live "monitor" in my projects. It gives me low level access to everything happening in the device AS it is happening....
I design with a real-time, live "monitor" in my projects. It gives me low level access to everything happening in the device AS it is happening. I can attach to a particular process and examine/alter objects in its address space, pause/resume, stop/restart, etc. It's a poor-man's ICE with limited footprint (unlike supporting a full debugger in the release). For certain classes of projec...
Useful bonus feature
inI'm just doing some rough prototyping at the minute and to save squinting I put a identifying label on the MCU showing part no and orientation,...
I'm just doing some rough prototyping at the minute and to save squinting I put a identifying label on the MCU showing part no and orientation, from one of those thermal Dymo-style labelling machines. What I hadn't anticipated is the bonus feature - these are thermal labels so of course give a visual indication when the magic smoke gets let out. http://andrews.freeshell.org/news/20220821.c...
IAR ARM Cortex-M compiler does not align stack on 8-byte boundary
inARM ABI says that the stack should be 8-byte aligned, but I see cases where the stack is aligned only to 4-byte boundary. For example, I have...
ARM ABI says that the stack should be 8-byte aligned, but I see cases where the stack is aligned only to 4-byte boundary. For example, I have the following simple busy-delay function: void delay(int iter) { int volatile counter = 0; while (counter < iter) { // delay loop ++counter; } } This compiles with IAR EWARM 9.10.2 on ARM Cortex-M to the following
Why use non-free compilers (Keil, etc) for architectures supported by SDCC?
inI wonder why some developers choose non-free compilers (Keil, IAR, Cosmic, Raisonance, etc) when targeting architectures supported by the free...
I wonder why some developers choose non-free compilers (Keil, IAR, Cosmic, Raisonance, etc) when targeting architectures supported by the free Small Device C Compiler (SDCC). Answears that also mention the architecture besides the reasons would be particularly helpful.
Help with a HardFault on Cortex-M3
I'm stuck with a stupid issue on a Cortex-M3 (LPC1788 by NXP). It's a classical issue that happens randomly and in different ways when the...
I'm stuck with a stupid issue on a Cortex-M3 (LPC1788 by NXP). It's a classical issue that happens randomly and in different ways when the code is slightly changed, so it's very difficult to debug. MCUXpresso (IDE from NXP) and Ozone (a software from Segger) says that IBUSERR and FORCED are set when HardFault exception occurs. I understand it is related to a program counter with a wron...
Wide frequency range, arbitrary waveform DDS
inTo generate frequencies from approximately 0.5 mHz to 12 MHz with a DDS a minimum clock of > 24, say 25 MHz, is required. To be able to go...
To generate frequencies from approximately 0.5 mHz to 12 MHz with a DDS a minimum clock of > 24, say 25 MHz, is required. To be able to go down to 0.5 mHz, a phase accumulator of at least 36 bits is required. This will give sub mHz resolution over the entire range. Nice for the low frequencies, but not of much use for MHz frequencies (in this application). Is there any objection to using a
Ask a Question to the EmbeddedRelated community
To significantly increase your chances of receiving answers, please make sure to:
- Use a meaningful title
- Express your question clearly and well
- Do not use this forum to promote your product, service or business
- Write in clear, grammatical, correctly-spelled language
- Do not post content that violates a copyright
