środa, 30 kwietnia 2025

Czujnik ciśnienia klimatyzacji 3 pinowy

 gniazdo czujnika ciśnienia klimatyzacji:

od prawej:
1 - zasilanie +5V DC
2 - masa
3 - górny pin - sygnał powrotny maks 3V V DC

schemat wewnątrz czujnika:

[pin2]---dioda1>---[pin1]---dioda2>---[pin3]

[pin2]---dioda3>---kondensator---[pin3]


napięcie przewodzenia dioda 1:
*4,01 V
3,56 V
napięcie przewodzenia dioda 2:
*1,20 V
1,19V
nap. przewodzenia dioda 3
*4,04 V
3,2 V
kondensator
*48 nF
174 nF

* - pomiar dla 95skv106
bez gwiazdki - 7700417506 (nie wiem czy sprawny)

źródło dodatkowe:
https://autoklimatyzacja.blogspot.com/2014/07/jak-sprawdzic-czujnik-klimatyzacji-3.html

sobota, 23 września 2023

Brak otoczenia sieciowego w Xubuntu Thunar

 Po wpisaniu w pasek adresu smb:// pokazuje się wykrzyknik obok tj. nie ma możliwości przeglądania zasobów samba.

Rozwiązanie:
sudo apt install gvfs-fuse

Po tym powinno zamiast wykrzyknika pokazać się ikona listy zamiast wykrzyknika.

wtorek, 16 maja 2023

Instalacja z nowym dyskiem PS4

 Formatujemy pendrive do FAT32, w nim tworzymy folder PS4\UPDATE i tam się wrzuca to co się ściągnie z
https://pc.ps4.update.playstation.net/update/ps4/image/2023_1127/sys_d96a04b7ec460adf69a14d541031e9d4/PS4UPDATE.PUP
https://www.playstation.com/pl-pl/support/hardware/ps4/system-software/#latest

poniedziałek, 1 maja 2023

Instalowanie na świeżo Windowsa 10 [dziesięć]. Propozycja podania.

Na czysto Windows 10 dogrywanie softu trochę szybsza metoda:

Wchodzimy na:
https://ninite.com/

Stamtąd wybieramy/zaznaczamy co tam chcemy, bo na końcu po kliknięciu w Get Your Ninite dostaniemy/ściągniemy wybraną paczkę i instalator sam sobie pościąga i zainstaluje nasz wybór z naszą pomocą. Z tego polecam:

Firefox lub Chrome - przeglądarki (lepiej mieć 2 różne w razie W)
Krita lub Gimp - edytor grafiki bitmapowej
Inkscape - edytor grafiki wektorowej
Irfanview - przeglądarka obrazków/zdjęć
Notepad++ - edytor tekstowy
LibreOffice - pakiet biurowy lżejsza wersja
Thunderbird - klient poczty e-mail
VLC - odtwarzacz audio/video + strumieni
Foobar - szybki odtwarzacz audio
7-Zip - paker/depaker

---
Opcjonalnie wchodzimy na:
https://portableapps.com/

i dociągamy co tam chcemy, chociaż to już nie jest szybki proces, bo tego jest mnóstwo. Wszystko jest w wersji przenośnej tj. na pendrive lub lokalnie na dysku można trzymać.

Tryb ciemny lub Dark mode dla Firefox bez wtyczek

Problem:
różne wtyczki dla trybów ciemnych średnio działają, na niektórych serwisach nawet w trybie ciemnym potrafi strona mrugnąć białym.

Rozwiązanie:
wymuszona zmiana kolorów tła, czcionek i odnośników

Wchodzimy w 3 kreski (menu) > Ustawienia
lub
lewy alt > Edycja > Ustawienia
w polu Język i wygląd jest pole Kolory i klikamy Zarządzaj kolorami...

wybieramy kolory:
Tekst polecam trochę ciemniejszy niż biały, tło czarne, a odnośniki takie same jak tekst lub wg uznania i kw. gustu. Pole wyboru Zastępuj kolory określone w treści wybranymi powyżej: wybieramy Zawsze i klikamy OK.

Wszystkie strony nawet te odporne na wtyczki powinny korzystać z tego schematu kolorów.
Poniżej fragment z Onet.pl z 01.05.2023 (Firefox 112.0.2 dla Debian)

środa, 27 kwietnia 2022

Wyszukiwarka adresów I2C w Arduino pro micro

Problem:

Brak komunikacji Arduino pro micro (24 pin) z wyświetlaczem 16x2 kontroler I2C PCF8574
wg rozpiski urządzenia arduino:

https://simba-os.readthedocs.io/en/latest/boards/arduino_pro_micro.html

potrzebujemy piny/sygnały: SDA, SCL, VCC, GND
! jeśli macie inną płytkę to nie sugerować się tym co piszą w tabelach zwykle tj. pin A4/A5 dla SDA/SCL. dobrym przykładem jest ww. płytka, gdzie takich oznaczeń nie ma.

Budowa skanera polega na podpięciu urządzenia I2C (w tym przypadku wyświetlacza) do Arduino prawidłowo (tj. 1:1), następnie kopiujemy kod znajdujący się poniżej do IDE Arduino > wgrywamy na urządzenie > w menu programu IDE Arduino klikamy Narzędzia > Monitor portu szeregowego > i powinno coś wypluwać (przykład):

I2C Scanner
Scanning...
I2C device found at address 0x38  !
done
---
w tym przypadku adresem jest 0x38

kod skanera, który trzeba wrzucić do IDE, a później do urządzenia (bez łapek):
👇

/*I2C_scanner
  This sketch tests standard 7-bit addresses.
  Devices with higher bit address might not be seen properly.*/
  
#include <Wire.h>

void setup() {
  Wire.begin();

  Serial.begin(9600);
  while (!Serial);
  Serial.println("\nI2C Scanner");
}

void loop() {
  byte error, address;
  int nDevices;

  Serial.println("Scanning...");

  nDevices = 0;
  for (address = 1; address < 127; address++ ) {
    Wire.beginTransmission(address);
    error = Wire.endTransmission();

    if (error == 0) {
      Serial.print("I2C device found at address 0x");
      if (address < 16)
        Serial.print("0");
      Serial.print(address, HEX);
      Serial.println("  !");

      nDevices++;
    }
    else if (error == 4) {
      Serial.print("Unknown error at address 0x");
      if (address < 16)
        Serial.print("0");
      Serial.println(address, HEX);
    }
  }
  if (nDevices == 0)
    Serial.println("No I2C devices found\n");
  else
    Serial.println("done\n");

  delay(5000);
}


👆

Powyższy kod nie jest mojego autorstwa
źródło: https://gist.github.com/jmas/01280e8c1aae8060c90c029e59647cd9
lub
https://www.makerguides.com/character-i2c-lcd-arduino-tutorial/

Adres gdzie szukać adresu I2C we właściwym kodzie i w moim przypadku trzeba zamienić 0x27 na 0x38 (zaznaczono na czerwono):


//...............JehanKandy........................ //...........www.jehankandy.com.................... //........www.github.com/JehanKandy................ //include liquidCrystal_I2C.h //Tools -> Manage Libraries and type liquidCrystal_I2C #include <LiquidCrystal_I2C.h> //define I2C address...... LiquidCrystal_I2C lcd(0x27,16,2); void setup() { lcd.init(); lcd.clear(); lcd.backlight(); lcd.setCursor(2,0); lcd.print("Hello World"); lcd.setCursor(2,1); lcd.print("JehanKandy"); } void loop() { } //.........coded by : JehanKandy.... //...........Thank You..............

źródło kodu:
https://create.arduino.cc/projecthub/jehankandt/arduino-16x2-lcd-display-with-i2c-hello-world-4b1a41

środa, 31 lipca 2019

Wake On LAN, czyli wybudzanie komputera po sieci

Solucja jest dla Ubuntu czy Mac, potrzebny jest jeden komputer z włączoną obsługą Wake On LAN i to będzie ten nasz śpiący.

Po stronie śpiącego komputera [tego co będziemy chcieli wybudzić]:
w terminalu
sudo apt install ethtool
ifconfig

z polecenia wybieramy interfejs ethernet, który chcemy wybudzić oraz mac adres i sekcję broadcast:
enp2s0f0: flags=4163  mtu 1500
        inet 192.168.1.123  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 ----::----:----:----:----  prefixlen 64  scopeid 0x20
        ether 98:f2:b3:e7:00:00  txqueuelen 1000  (Ethernet)
        RX packets 48  bytes 6817 (6.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 82  bytes 12600 (12.6 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 33  


z tego powyżej w naszym przypadku będzie to enp2s0f0 [nazwa interfejsu]broadcast 192.168.1.255 [rozgłaszanie], ether 98:f2:b3:e7:00:00 [czyli mac adres]

następnie tworzymy serwis/usługę do nasłuchiwania wybudzania, żeby była dostępna.
przechodzimy do 
/etc/systemd/system

w katalogu tworzymy plik o nazwie wol.service
poleceniem 
sudo nano wol.service
przepisujemy to poniżej oraz zmieniamy enp2s0f0 na własną z ifconfig:
---

[Unit]
Description=Configure Wake-up on LAN

[Service]
Type=oneshot
ExecStart=/sbin/ethtool -s enp2s0f0 wol g

#w ExecStart wpisujemy nazwę swojego interfejsu zamiast przykładowego enp2s0f0

[Install]
WantedBy=basic.target

---
ctrl-o [zapisujemy] ctrl-x [wychodzimy]

Dodajemy poleceniem naszą usługę:
systemctl daemon-reload
włączamy usługę:
systemctl enable wol.service
uruchamiamy:
systemctl start wol.service

==koniec zabaw po stronie śpiącego i po spisaniu nazwy interfejsu, adresu broadcast, mac adresu można go wyłączyć, po wyłączeniu lampka od ethernetu powinna się świecić [przynajmniej w moim przypadku tak jest i nie jest to wina usługi, a funkcji Wake On LAN zaszytej w BIOS]==

Po stronie wybudzacza potrzebujemy skrypt pythona tworzymy plik sudo nano wol.py lub dowolnym edytorem tekstu "dla ludzi", a w nim po hashu wyjaśniam co zmieniać:
---

#! /usr/bin/python

# wol
#
# Wake on LAN
#
# Use:
# wol computer1
# wol computer1 computer2
# wol 00:11:22:33:44:55
#
# Author: San Bergmans
#         www.sbprojects.net
#

import sys, struct, socket

# Configuration variables - z ifconfig pomiędzy '' wpisujemy nasz adres broadcast
broadcast = ['192.168.1.255', '192.168.0.255']
wol_port = 9

# w tej części wpisać nazwę komputera oraz jego mac adres format trzeba zachować czyli 'mariola' : 'ma:ca:dr:es:s0' nazwa komputera może być dowolna, mac musi być zgodny z tym komputerem co mamy wybudzić. jak widać poniżej takich komputerów można mieć 4 w tym skrypcie tj. mercury, venus, earth, mars

known_computers = {
    'mercury'    : '98:F2:B3:E7:00:00',
    'venus'      : '98:F2:B3:E7:00:00',
    'earth'      : '00:10:60:15:97:fb',
    'mars'       : '00:10:DC:34:B2:87',
    }

def WakeOnLan(ethernet_address):

    # Construct 6 byte hardware address
    add_oct = ethernet_address.split(':')
    if len(add_oct) != 6:
        print "\n*** Illegal MAC address\n"
        print "MAC should be written as 00:11:22:33:44:55\n"
        return
    hwa = struct.pack('BBBBBB', int(add_oct[0],16),
        int(add_oct[1],16),
        int(add_oct[2],16),
        int(add_oct[3],16),
        int(add_oct[4],16),
        int(add_oct[5],16))

    # Build magic packet

    msg = '\xff' * 6 + hwa * 16

    # Send packet to broadcast address using UDP port 9

    soc = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    soc.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST,1)
    for i in broadcast:
        soc.sendto(msg,(i,wol_port))
    soc.close()

if len(sys.argv) == 1:
    print "\n*** No computer given to power up\n"
    print "Use: 'wol computername' or 'wol 00:11:22:33:44:55'"
else:
    for i in sys.argv:
        if i[0] != '/':
            if ":" in i:
                # Wake up using MAC address
                WakeOnLan(i)
            else:
                # Wake up known computers
                if i in known_computers:
                    WakeOnLan(known_computers[i])
                else:
                    print "\n*** Unknown computer " + i + "\n"
                    #quit()

    if len(sys.argv) == 2:
        print "\nDone! The computer should be up and running in a short while."
    else:
        print "\nDone! The computers should be up and running in a short while."
    print

---
następnie zapisujemy i wychodzimy z edytora nano lub innego dozwolonego. Nadajemy prawa wykonywania naszego skryptu:
sudo chmod +x wol.py
Uruchamiamy skrypt poleceniem:
python wol.py mercury
lub
python wol.py ma:ca:dr:es:s0
lub
python wol.py mercury venus [wybudzi 2 komputery]

Parametry zależą od tego co wpisaliśmy w skrypcie wol.py w sekcji known_computers

Komputer z włączoną obsługą Wake On LAN powinien nam się wybudzić, oczywiście jak jest wyłączony. Skrypty nie są mojego autorstwa i pochodzą ze stron poniżej, ja jedynie pozmieniałem co jest dla mnie ważne czyt. dodałem polskie komentarze.

Jest jeszcze dostępny nieco prostszy skrypt pod tym adresem:
https://scripts.itarian.com/frontend/web/topic/wake-on-lan
wystarczy mac adres zmienić w sekcji list1 i powinno działać [oczywiście trzeba dać prawa wykonywania takiego skryptu].

źródła: