newsletters:2024-04
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
newsletters:2024-04 [2024/05/01 21:44] – [folk-cnc] osnr | newsletters:2024-04 [2024/05/02 02:07] (current) – Add NYU specifics admin | ||
---|---|---|---|
Line 24: | Line 24: | ||
Omar: as part of getting the CNC project (next section) polished and distributed for a wider audience, I've been making a [[https:// | Omar: as part of getting the CNC project (next section) polished and distributed for a wider audience, I've been making a [[https:// | ||
- | It just uses display 0 and webcam 0, so the live USB stick (plugged in on the right) | + | It just uses whatever is display 0 and whatever is webcam 0, so the live USB stick (plugged in on the right) |
{{: | {{: | ||
Line 30: | Line 30: | ||
(You can think of this as a replacement for most of the traditional [[https:// | (You can think of this as a replacement for most of the traditional [[https:// | ||
- | It's in pretty good shape now -- you can flash the image to a USB stick, configure/ | + | It's in pretty good shape now: you download |
+ | |||
+ | {{: | ||
+ | |||
+ | Then you plug the USB stick into the PC that you want to run Folk, and the PC should boot right to a working network-connected Folk as long as you configured | ||
Some problems I encountered while building the live USB: | Some problems I encountered while building the live USB: | ||
Line 39: | Line 43: | ||
* although the writable partition has ended up being pretty cool and useful and inspiring | * although the writable partition has ended up being pretty cool and useful and inspiring | ||
* way easier to update the live USB / live image and iterate on it since the OS doesn' | * way easier to update the live USB / live image and iterate on it since the OS doesn' | ||
- | * makes Folk feel much more stable and appliance-like; | + | * makes Folk feel much more stable and appliance-like; |
* feels kind of like microPython or something in how you can program it like a USB drive | * feels kind of like microPython or something in how you can program it like a USB drive | ||
* Memory leak freezes/ | * Memory leak freezes/ | ||
Line 46: | Line 50: | ||
Remaining to do on live USB (although it's already pretty useful): | Remaining to do on live USB (although it's already pretty useful): | ||
- | * Support configuring which display & camera to use at minimum, ideally support multiple | + | * Support configuring which display & camera to use at minimum, ideally support multiple |
- | * Build out the setup process (calibration, | + | * Build out the setup process (calibration, |
* Build/test the process of permanent installation to hard drive -- we've just been using it in live mode so far | * Build/test the process of permanent installation to hard drive -- we've just been using it in live mode so far | ||
* Debug memory leak | * Debug memory leak | ||
Line 55: | Line 59: | ||
==== folk-cnc ==== | ==== folk-cnc ==== | ||
- | Omar: I've been porting [[https:// | + | Omar: I've been porting [[https:// |
- | Then (at least for now) you use a Web UI (much like the one in Owen's system) to calibrate the preview to your projector & camera & CNC machine and the material that you want to cut, and you upload a gcode file to preview. Here's the Web UI: | + | Then, at least for now, you use a Web frontend |
{{: | {{: | ||
Line 137: | Line 141: | ||
I wanted to count inter-frame delays on various subprocesses: | I wanted to count inter-frame delays on various subprocesses: | ||
- | perf should provide a whole suite to count and plot and correlate | + | perf should provide a whole suite to count and plot and correlate |
Here's how you provide an event to perf in your Folk code: | Here's how you provide an event to perf in your Folk code: | ||
Line 153: | Line 157: | ||
(although it took a bit [[https:// | (although it took a bit [[https:// | ||
- | Counting perf events immediately paid off, because I figured out that (part of) the reason that folk2 is slow is probably that it does AprilTag detection in an infinite '' | + | Counting perf events immediately paid off, because I figured out from the above that (part of) the reason that folk2 is slow is probably that it does AprilTag detection in an infinite '' |
and the reason I made the detection process an infinite loop was because the AprilTag detector, like all C objects, was only callable from the thread it was created on. So I decided it was time to do a C refactor I'd been meaning to do for a while, to make the detector callable from any thread, so we can call it from a normal When body that responds to the camera frame (which can get scheduled onto any thread). | and the reason I made the detection process an infinite loop was because the AprilTag detector, like all C objects, was only callable from the thread it was created on. So I decided it was time to do a C refactor I'd been meaning to do for a while, to make the detector callable from any thread, so we can call it from a normal When body that responds to the camera frame (which can get scheduled onto any thread). | ||
Line 211: | Line 215: | ||
It feels uglier now that 1. the C library object needs to get stored in the Tcl object so that Tcl methods can call into the C library and 2. we need to hook the '' | It feels uglier now that 1. the C library object needs to get stored in the Tcl object so that Tcl methods can call into the C library and 2. we need to hook the '' | ||
- | At the very least, it would be good to make a construct on top of '' | + | At the very least, it would be good to make a construct on top of '' |
==== Friends and outreach ==== | ==== Friends and outreach ==== | ||
Line 226: | Line 231: | ||
* Continue to improve new parallel evaluator, especially performance, | * Continue to improve new parallel evaluator, especially performance, | ||
* Maybe revisit RFID | * Maybe revisit RFID | ||
- | * FIXME Andrés ITP show? | + | * Andrés |
===== Links we've enjoyed ===== | ===== Links we've enjoyed ===== |
newsletters/2024-04.1714599867.txt.gz · Last modified: 2024/05/01 21:44 by osnr