For $100 you can get a PI4 with 4GB RAM and a 32GB Micro SD card as a kit at BestBuy. It's a Canakit or something like that. And it includes a case with fan, power supply, and two mini-HDMI to HDMI cables. From there, grab an old laptop SSD and throw it in an enclosure. Set up USB/SSD boot, and you've got a USB3 booting PI4. It performs very well for what it is.

After that it's up to you what you do with it. I use a PI4 as a file server and occasional alternate desktop system.

I use a PI3B+ as my 3D printer's OctoPrint platform (octopi). For that, all I needed was the PI3B+, a 32GB MicroSD (that's more storage than I need but it's cheap), power supply, heat sinks, and a small leftover fan from some old device. I 3D printed the case. I did add a $20 PI-Cam v2, and a longer cam ribbon cable so that I could use OctoLapse for time lapses of the 3D prints. But that wasn't strictly necessary. Octoprint will run on a PI4 too, but that's more hardware expense than is really needed. A four year old 3B+ is plenty for Octoprint and OctoLapse. Mine drives a Creality Ender 3 v2. But the majority of 3D printers should be compatible with Octoprint. And you can print your case, and camera mount.

Some people a PI3B+ or PI4 as a Plesk server in their homes. For one or two streams, a 3B+ is sufficient. For more than that the broader network and USB bus of the PI4 is desirable.

There seem are Perl modules already on CPAN in the RPi:: namespace that would expose the GPIO pins, etc. without getting into the Perl XS world. I suppose if you're also writing C libraries that you need to bind in, or wanting to bind existing C libraries Inline::C or another approach to XS could be useful.

Writing scripts to run on a PI is not all that different from writing code to run on any other resource-constrained linux system.

That reminds me; I've briefly thought about setting up a PI0v2 with a small LCD screen to monitor things like transmission fluid temperature while towing, oil pressure, coolant temperature, and so on in my 26 year old Bronco 5.8 since some of the gauges in its instrument cluster are dead. It seems like a fun exercise that will certainly end up being more costly than just fixing the cluster. :)


Dave


In reply to Re: XS, raspberry pi, and a hundred bucks by davido
in thread XS, raspberry pi, and a hundred bucks by Aldebaran

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.