Category: Embedded Development

RS485 Timing Protocol

One of the challenges with classic RS485 is that we use Master/Slave protocol that introduce a lot of waiting latency. We simply use most of the bandwith waiting. I want to try implementing a timing protocol as illustrated below: This is only an idea at present, but I believe it is doable with a STM32…

Read the full article

RTOS part 3 – CLI

A RTOS is at the end of the day only a library intended to assist in making your application, meaning that much of the focus on yX is to be able to adapt to your needs and guarantee portability on source code modules. With yX being able to compile on Linux and Windows this also…

Read the full article

RTOS, part 2

yX kernel focus on linear scheduling, meaning that it will run tasks in a time-controlled loop. It is typically used with two cycles, one running in the main loop and a second running on SysTick. Systick on STM32 works well at 1000 times per second using < 1 % CPU load which gives a rather…

Read the full article

RTOS, part 1

A RTOS (Real-Time Operating System) library consist of several components that most often are compiled or linked into embedded applications as a library. You don’t really need a RTOS in embedded systems as many are happy running things in a loop (also called Round Robin) and timing things themselves. However, as applications get more complex…

Read the full article

RS485 Timing Protocol

A classic RS485 2-wire network consist of a Master and multiple Slaves. The master query each slave ensuring that only one device communicate at the time. This makes it an easy network to implement, but the bandwidth usage is low due to all the waiting time. The second issue is that a device needing to…

Read the full article

NRF24L01+

The schematics for the NRF24L01+ breakout boards are not the most interesting. It’s a standard SPI with an interrupt pin and two enable pin’s this time. I am using two different footprints that will support 4 different break out boards available. The classic have a range of 100 meters, while the more advanced claim a…

Read the full article

Isolated RS485

Isolated RS485. I seldom bother with terminator resistor on RS485 because I never have errors due to this below 10 meters. Bias is a different issue as I experience problems without bias resistors on one side even on very short distances. The main difference between RS485 and CAN is that CAN uses arbitration and is depending on better…

Read the full article

Isolated CAN

This is an isolated CAN-HS interface. ADM3053 offer a all-in-one package that cost a bit, but I decided to try it out. As for cost we are talking about 5.- USD rather than 0,5 USD. A normal transceiver will give some protection while ADM3053 protect against much larger pulses, but it is not unlimited. Your…

Read the full article