Drone OS

137 Members
An Embedded Operating System for writing real-time applications in Rust.21 Servers

Load older messages

24 Apr 2021
In reply to @robbym:matrix.org
valff: Cool. Although it is not ideal, will fake atomic support (via interrupt disabling) still work? I wanted to add support for the RP2040 for fun, but it is an ARM Cortex-M0+, which doesn't seem to have atomics.
RP2040 is a dual core Cortex-M0, disabling interrupts do not give atomicity guarantees, so you would need to stop in some way the other core during the atomic operation. I believe (unable to refute) disabling interrupts in a single core system could be used for implementing atomic operations.
@llamp:matrix.orgllampI think Cortex M0+ is interesting in ultra low power contexts, and note there are chips with big-little cores using M0 for low power. Additionally, note that in a product-development context a few bucks less is the difference between success or failure.21:49:11
25 Apr 2021
@moerk:matrix.orgmoerkValff have you had any though about firmware update? 13:15:13
@valff:matrix.orgvalff moerk: I will be experimenting with bootloaders soon. Will let you know the result. 16:10:53
26 Apr 2021
@robbym:matrix.orgrobbymI like Nordic's bootloader. They have one that has signing and it wasn't too difficult to add AES encryption utilizing their hardware support. They let you update the application, SoftDevice (their wireless stack), and even the bootloader itself. They have a UART and BLE example in their SDK.01:41:54
@moerk:matrix.orgmoerkHi robbym, have you got it to work with drone? 08:38:57
@moerk:matrix.orgmoerkThere is also mcuboot08:41:36
@robbym:matrix.orgrobbym moerk: Haven't tried. I only mentioned it as it was one of the better bootloaders that I've interacted with. I don't have much experience with Drone yet and the development board and BMP I ordered for my first Drone project just arrived (NUCLEO-L4R5ZI-P). MCUboot looks interesting, I'll have to try that out. 23:10:42
27 Apr 2021
@singularpoint:matrix.orgsingularpoint joined the room.23:01:55
28 Apr 2021
@sentient_devil:matrix.orgKanishkar J joined the room.18:30:22
1 May 2021
@johniac52:matrix.org@johniac52:matrix.org joined the room.17:15:41
4 May 2021
@valff:matrix.orgvalffAfter looking more closely at RP2040, I started liking it. It turned out that ARMv6-M is not an outdated architecture, it was actually created after ARMv7-M. ARMv6-M is a simplified subset of ARMv7-M, with much less transistors (12k according to some sources.) I just ordered a pair of Picos and will try to experiment with them.15:31:07
@valff:matrix.orgvalffI listened this podcast with Raspberry Pi guys: https://theamphour.com/529-embedded-hardware-with-the-raspberry-pi-team/ And they promise to sell the bare RP2040 chips at "much lower than $4", which sounds very interesting.15:35:07
@valff:matrix.orgvalffThe absence of atomics will increase interrupt latency (jitter if more precisely). But it is compensated with increased frequency. My current MCU of choice STM32F401 is 84 MHz, while RP2040 is 133 MHz.15:38:43
@valff:matrix.orgvalffAnd for inter-core communication there are a few hardware spinlocks and FIFOs.15:40:29
5 May 2021
@rmja:matrix.orgrmja moerk: valff: It won't be that long before I get back to some drone app dev. :) Before I paused I was already doing some bootloader programming. I will let you know how that proceeds when it is time:) 06:08:30
6 May 2021
@johniac52:matrix.org@johniac52:matrix.org left the room.19:42:17
@yet-another-tim:matrix.org@yet-another-tim:matrix.org left the room.21:45:19
10 May 2021
@foundation_ken:matrix.orgfoundation_ken joined the room.16:47:58
11 May 2021
@david_li:matrix.orgdavid joined the room.03:59:46
19 May 2021
@alvinhochun:kde.orgalvinhochun set a profile picture.15:01:13
22 May 2021
@jschievink:matrix.org@jschievink:matrix.org left the room.10:58:27
@aleksandr90:matrix.org‏    ‏  ‏    ‏  ‏    ‏    ‏ ‏    ‏‏    ‏  ‏    ‏  ‏    ‏  ‏ ‏ ‏     ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏  ‏  ‏    ‏     ‏  ‏    ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏  ‏    ‏     ‏  ‏   ‏ ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏  ‏   ‏ joined the room.20:48:38
28 May 2021
@maxchill:matrix.orgmaxchill joined the room.06:46:51
29 May 2021
@fynzh:matrix.orgfynzh joined the room.22:14:00
3 Jun 2021
@rmja:matrix.orgrmja valff: I am now finally getting into rust/drone again, and I am aligning my drone sandbox projects with the updated drone source and rust toolchain. 10:14:23
@rmja:matrix.orgrmjaSo expect this forum to be busy again:)10:14:52
@rmja:matrix.orgrmjaI already have a question. It seems that something has happened in the bitfield definition so that the member cannot be public anymore. Before I had:10:17:46
#[derive(Clone, Copy, Bitfield)]
    reserved(r, 0, 4),
    state_bits(r, 4, 3, "Indicates the current main state machine mode."),
    chip_rdy(r, 7, 1, "Stays high until power and crystal have stabilized. Should always be low when using the SPI interface."),
pub struct StatusByte(pub u8);
@rmja:matrix.orgrmja But this cannot compile anymore. It will only compile if I replace line 7 with pub struct StatusByte(u8);, but I do want the member to be public. 10:18:54

Show newer messages

Back to Room List