Miniszámítógépek, SBC-k

Raspberry PI 4B

Sziasztok,

Raspberry PI 4B-t szeretnék vásárolni. Az egyik hivatalos magyar viszonteladói oldalon nincs készleten (https://malnapc.hu), a másikon (https://www.rpibolt.hu) elméletileg van (nem írja, hogy nincs), de gyanakszom. Van tapasztalatotok? Érdemes előre utalom és várnom, reménykednem?

Előre is köszi a tanácsokat!

Edit:

Végül is 2-án megrendeltem az rpibolt.hu-ban, ma kaptam értesítést, hogy Fehérváron feladták. Szóval van készlet ezek szerint (ha az érkezik amit rendeltem :)).

systemd service leállítása ha nincs hálózat (wifi) - SteamOS/Arch

Van egy systemd service (resilio sync), amit nem szeretnék futva hagyni, ha nincs hálózat. Azaz ideális esetben ha leállítom a wifit, akár úgy, hogy magát a wifit kapcsolom le, akár úgy, hogy repülőmódba váltok, akkor álljon le, illetve induljon el, ha ezeket visszakapcsolom.

Amit találtam:

BindsTO=sys-subsystem-net-devices-wlan0.device
Ez vicces, a wlan0 mindig aktív, még repülőmódban is, de ennek még lehet értelmes oka.

PropagatesStopTo= StopPropagatedFrom=

Nem találtam olyat, amire ráakaszthatnám (ezt kifelejtettem).

A systemctl --all egyezik, ha offline a masina, ha nem.

systemd-rfkill

Ez a service aktív, amikor le van lőve a wifi. Arra látok esélyt, hogy valahogy el lehet magyarázni a systemd-nek, hogy ennek pont az ellentettje kell, azaz ha ez fut, akkor a másik álljon, és vice versa. de nekem nem ment

Na, ezt benéztem, csak egy ideig aktív.

Conflicts=

Ez meg másra való.

systemctl list-units --type=socket

Nem találtam hasznos socketet.

StopCondition

Na, ilyen nincs. ExecCondition van, de stopra nincs ilyen.

dbus

Gondoltam hogy valami dbus eventre lehetne figyelni, de nem találtam erre megoldást.

Fontos, hogy a gyári service-ket nem akarom módosítani (sőt, a resilio sync eleinte user unitként futott, de ha jól értem, akkor végképp esélytelen, hogy a system unitokra dependáljon).

Illetve ideális esetben a hálózat levágása illedelmesen megvárná előbb hogy a resilio sync megáll (pár másodperc).

Amit nem szeretnék, az a taknyolás, pl. hogy crontabból pingetni, és stop-start. Ha már a systemd annyira csodálatos, akkor azzal szeretnén megoldani, és nem az elavult (lol) módszerekkel.

Ha valakinek van jó ötlete, ne tartsa magában, de ha lehet, akkor ne a google első találata legyen, hogy "eztpóbáldki".

nodemcu webserver + led villogás

Sziasztok!

 

Kezdő vagyok a nodemcu világában. arduino ide -t használok a nodemcu v3.0 (8266) programozására. A legutóbb amit megnéztem kódot és kipróbáltam az egy egyszerű webserver implementáció amit ha megnyitok a nodemcu-ról a D0-ra kötött ledet egy a felületen lévő ON/OFF kapcsolóval tudok be- illetve kikapcsolni. Teljesen jól működött, de elgondolkoztam azon, hogy ha nem be- illetve kikapcsolni szeretném, hanem villogtatni, tehát az ON gomb hatására ne bekapcsoljon, hanem villogjon, az OFF-ra pedig kapcsoljon ki, akkor azt hogyan lehet megoldani? A webserver kódja vár a kliens kapcsolatra, ha ez meg van akkor vár a kliens interakciójára. Ha kattint, akkor állítja a statikus státuszt. Hol és hogyan lehet ezt a kódot úgy átírni, hogy ne statikus legyen a led státusza, hanem valamilyen frekvencián villogjon? Hogyan tud a villogtató kód folyamatosan futni akkor is, amikor a void loop éppen arra vár, hogy a weben csatkakozott kliens valamit nyomjon? Megszakítás? időzítő?

Ezt a kódot írtam át 2 ledról 1 ledre és most azt szeretném, hogy ON -> villog a led, OFF -> kikapcsol a led

https://www.electronics-lab.com/project/nodemcu-esp8266-webserver-tutor…

előre is köszi a segítséget!

Thin client otthonra (Citrix)

Szeretnék a laptop dokkolóba dugdosása helyett egy fix workstationt otthonra. Esetünkben ez azt jelenti, hogy el kell futnia rajta egy db Citrix Receivernek, amin elérem a céges gépemet. Más tevékenység ezen a gépen nem történne, arra ott van a privát laptop, ergo tetszőlegesen tróger hardverrel kiegyeznék.

Spec:

  • Van jelenleg 1 db HDMI-s és egy db displayportos monitor, amit nem szeretnék lecserélni, utóbbihoz értelemszerűen DP vagy USB-C port is oké.
  • Jelenleg be van dugva egy-egy db USB-A webkamera és headset a dokkba, ez kiegészülne 1 db billentyűzettel, ami eddig a laptop sajátja volt
  • 1 db BT-s egér, szóval a BT must-have, nem akarok receivert, mert hordom máshova is.

Asszem ennyi. Nekem gyakorlatilag a teljes thin client világ kimaradt, beleértve a RPi-szerű megoldásokat, úgyhogy megköszönném, ha valaki (ELI5 :)) adna egy bevásárlólistát, hogy mit vegyek meg, amit ha utána otthon összedugdosok, működni fog. :)

update: van egy Oneplus Nord 2T és egy iPad Pro is kéznél, ha ilyesmire is lehet építeni

[ Megoldva ] Raspberry Pi microseconds

Még csak ismerkedem a Raspberry Pi-vel, de sehogyan sem tudom C-ben megmérni két programpont között eltelt időt minél nagyobb pontossággal.

Azokat a példákat, amiket találtam, nem sikerült valós működésre bírnom.

Tudna valaki mondjuk arra egy példakódot adni, hogy hogyan kaphatom meg az aktuális timestamp-et micro- vagy nanosec pontossággal? Nem kell a valós idő, nekem elég csak egy relatív idő - nem tudom, itt a real time clock hogyan van.

[Megoldva] Arduino C++ iterate objectumokon

Sziasztok

A kérdésem a következő:

#include <Adafruit_MCP23008.h>

Adafruit_MCP23008 mcp0; // Create mpc instance
Adafruit_MCP23008 mcp1; // Create mpc instance
Adafruit_MCP23008 mcp2; // Create mpc instance

#define button 0                // PushButton
#define laser 1                 // Laser Diode On
#define redLedO 2                // Red Led OUT
#define greenLedO 3              // Green Led OUT
#define photoDiode 5            // Photo Diode
#define redLedI 6                // Red Led IN
#define greenLedI 7              // Green Led IN

void setup() {

  char mcpName0 = "mcp0";
  char mcpName1 = "mcp1";
  char mcpName2 = "mcp2";
  String *Names[3] = { &mcpName0, &mcpName1, &mcpName2 };

  int i = 0;
  for (auto a : Names) {
    *a -> begin(i); // 0,1,2 = 0x20,0x21,0x22   address
    *a -> pinMode(button, INPUT);
    *a -> pullUp(button, HIGH);

    // vagy így
    
    *a.pinMode(laser, OUTPUT);
    *a.pinMode(redLedO, OUTPUT);
    *a.pinMode(greenLedO, OUTPUT);
    *a.pinMode(photoDiode, INPUT);
    *a.pinMode(redLedI, OUTPUT);
    *a.pinMode(greenLedI, OUTPUT);
    i++;
  }
}

A fenti módszer nem működik.
Így működik:
mcp0.begin(0);
mcp0.pinMode(button, INPUT);
Elég macerás volt háromszor minden szenzort led-et meg nyomógombot lekezelni.

Nem élet-halál kérdés csak érdekelne a megoldás (ha van), de semmilyen módszert nem találtam rá.

Előre is köszönöm a segítséget.

Kíméletes SD backup hogyan?

Mediaboxot SD kártyára telepített oprendszerrel használok. Erről az SD kártyáról szeretnék disk image típusú mentést, anélkül, hogy a használaton kívüli területeket is írnám, olvasnám. (32GB-ból kb 1GB használt.) Jó lenne, ha olyan mentés lenne, amit más, eltérő méretű SD kártyára is vissza lehetne tölteni. (Gondolom nem minden 32GB-os SD kártya bájtra ugyanakkora.)

Tehát a dd helyett valamennyivel intelligensebb/művelettakarékosabb SD másolót/image készítőt tudtok ajánlani?

PC Engines APU2 alternatíva

Sziasztok!

Nagyon sok APU2-t használunk router, határvédelmi eszköz, etc … szerepkörben.
Az eszköz korlátai figyelembe véve, egy nagyon megbízható, stabil board, nagyon szeretjük.
Sajnos Covid óta polcon lévő példányok elfogytak, beszerzése iszonyat macera, inkább csak használtak érhetőek el, azok is kb. új árban.

Keresnénk hasonló, ELÉRHETŐ eszközt, az elvárások:
    • x86 CPU, legalább 4 core
    • legalább 3v. 4 gigabit eth port (ha több, vagy van SFP|SFP+ az előny)
    • cserélhető háttértár, SATA, m.2 – ha ebből kettő is bele megy az a legjobb

Tudom hogy ebay, aliexpress, etc … kismillió ilyen PC-t lehet rendelni, de olyan típust keresünk, ami folyamatosan elérhető, nem kell rá 1 hónapot várni.

Ha tudsz ilyet, akkor ne tartsd magadban, linkel pls! :)