:: Re: [DNG] Information request (mayb…
Top Page
Delete this message
Reply to this message
Author: onefang
Date:  
To: dng
Subject: Re: [DNG] Information request (maybe OT - - - dunno)
On 2023-05-13 06:46:51, jeremy ardley via Dng wrote:
>    On 13/5/23 03:43, o1bigtenor via Dng wrote:

>
> Greetings
>
> (Is this OT - - - - dunno - - - that's why the goofy label!)
>
> I am in the beginning throes of an embedded system (SoC, and/or
> microcontroller) design.
>
> Have been reading somewhat on the use of RTOS vs and OS (thinking
> perhaps FreeRTOS and Devuan). My initial problem is a weighing 'cell'
> where I'm weighing liquids being deposited in a 'jar'.
> (A second would be items deposited (and then removed in stages) from a
> 4 wheel cart.)
>
>    You only need to use RTOS etc when you are doing actions that require
>    repeatable millisecond timings across multiple threads of execution and
>    with hardware interrupts.


Linux has a RT kernel, I use it on my Devuan desktop for music
production. Did I bring this back on topic? B-)

>    Even then RTOS etc aren't absolutely required. For instance ArduPilot in
>    the original form doesn't have any form of RTOS and instead relies on a
>    cooperative apartment threaded model where each function advertises how
>    long it will take to run and a scheduler function calls each in turn based
>    on time slots.

>
>    For most use cases its easier to go the really simple route and use
>    Arduino, or the slightly more complex route with a full Linux SOC using
>    Raspberry Pi OS or Armbian or even Devuan.

>
>    The only issue is Arduino is reliable with multiple I2C devices while the
>    Linux derived systems can have minor problems where an I2C interface is
>    done in software. Conversely Arduino requires a lot of effort on
>    communication protocols of any complexity.

>
>    An option can be to use an Arduino for low level control under command of
>    a Linux based SOC board.


That's what I did for my last embedded project. Linux on the the SOC
board with the application written in C, and assembler on a PIC
controller for the hardware interface. The PIC could have been done in
C, but I decided assembler would be more interesting.

--
A big old stinking pile of genius that no one wants
coz there are too many silver coated monkeys in the world.