• 1 Post
  • 107 Comments
Joined 2 years ago
cake
Cake day: June 12th, 2023

help-circle

  • I use Code OSS with clangd and the nvim extension (because Microsoft disabled their c/c++ tools) because i want access to the nrfconnect extension pack as a beginner. I don’t have to go searching in the documentation and compiling, then recompiling 10 times to self-discover the required devicetree parameters and figure out what drivers are available vs mainline zephyr.

    Plus the debug interface works well.

    For everything else possible it is vim/neovim, but I haven’t been able to find good neovim setup for nrfconnect.


  • No, ssds have a ton of wear leveling where data is shifted around and not deleted. Deleting data wears out the SSD, so it is held as much as possible with the controller. SSDs are like 10% bigger than advertised just to prolong the life.

    Even if you write the whole thing with random data then zeros, it will still have blocks in unaccessible (to normal users) places that contain old data.

    Always best to use disk encryption or keep any sensitive data in filesystem encryption like plasma vaults or fscrypt.




  • I am doing something similar. I use OIDC for everything possible.

    Authelia is quite picky about everything being correctly populated, but if I remember right, the documentation doesn’t do a great job of explaining different variables for someone outside of the security industry (similar with traefik). I found a good tutorial via search that got all of the defaults set up, then playing with the options to my liking and now it is just copy pasting the condiguration per app that I want to enable, generating an key and hashing it.

    If you want, I can sanitize my config and share it?


  • Hmmm, I used littlefs for SD card writing at work with an STM32F0 chip. It was hell working with files when tons of essential functions like appending and seeking simply didn’t work in the STM HAL… Plus dealing with opening and closing files and appending files and having to seek in them to find what you want, parsing results, cleaning old files, etc… compared to simple circular buffer and a start and end address of relevant data that can be erased once every day or week depending on use. Even with a daily erase of the NOR chip, they are rated for 100k program/erase cycles which would be over 250 years before degradation starts. I am not dealing with a ton of data nor the flexibility of a full UI/ app storage where I would definitely just use littlefs.


  • Thanks for taking a look!

    Intuitively for me, steps + bpm should be next to each other because the compiler will use bpm as the padding for the 24 bit steps. I intentionally did it that way. At least when I checked the memory addresses when testing it that was the case (there was no padding added). Wouldn’t it be potentially more problematic to have a bit field with a weird bit number, 24, followed by a 16 bit member that can’t be “fit” into the 32 bits that the compiler wants to assign? or is that not how it works.

    I’m not quite sure what you mean by your last point. The flow would go: acquire data -> add to structure -> fill up a page worth of data (or a sector) -> write to memory. Then pulling it out would be: read from memory -> put in structure -> process -> send data via bluetooth. If I change the layout of anything, that would require a reflash of the MCU and previous data would already have been transferred over bluetooth (assuming end-user OTA flashing or just being in a vicinity of a phone and not out and about where memory saving is necessary) and would no longer be needed to be stored/pulled from memory. Or is there another case that I am totally missing?













  • That is true, but for embedded development it sucks because of specialty drivers, access to dbus, udev rules, etc… And distrobox with vscodium or code oss has some big big slowdowns that I can’t figure out.

    Saleae software simply won’t work consistently in distrobox, for example. Luckily they have an app image so I could just install it there and set a few settings and now it works well. Sigrok Pulseview is better but needs a few not-dependency packages to work around it.

    There is some weirdness to atomic distros and bazzite, but I am pretty happy with it!


  • JustEnoughDucks@feddit.nltoDeGoogle Yourself@lemmy.ml*Permanently Deleted*
    link
    fedilink
    arrow-up
    18
    arrow-down
    1
    ·
    edit-2
    24 days ago

    Sorry but YouTube is such a wealth of tutorial information that quitting it cuts you off from huge amounts of info that you (nowadays) can’t really find through search engines.

    Tutorials for self-hosting, embedded development, analog design, gardening tutorials, etc…

    A lot of these you literally cannot find online anywhere except for tiny bits and pieces through forum posts that take hours just to put them all together. Most blog posts nowadays are so horribly written on technical subjects and leave so much out as “implicit knowledge” that they are mostly unusable except by people who are already experts, which negates the point. (Shout out to gamersnexus which has a fast, no-ad website with all of the results from their lab testing on their with text write-ups and charts)

    YouTube is expensive as all fuck to run. This is why alternatives will never take off unless they have a solid monetization model (e.g. floatplane). Sorry, but people on home internet with 100 down and 30 up aren’t going to be able to host peertube nodes and stream 4k video to more than a couple people. Text and music work well decentralized, but people start to become a lot less able to contribute when hosting costs become hundreds per month and their home internet is saturated and barely usable instead of single digits with light traffic. This isn’t even mentioning content creators’ monetization.