Iniciativa Open Device Partnership (ODP) nedávno představila projekt Patina. Jedná se o implementaci UEFI firmwaru v Rustu. Vývoj probíhá na GitHubu. Zdrojové kódy jsou k dispozici pod licencí Apache 2.0. Nejnovější verze Patiny je 13.0.0.
Obrovská poptávka po plynových turbínách zapříčinila, že datová centra začala používat v generátorech dodávajících energii pro provoz AI staré dobré proudové letecké motory, konvertované na plyn. Jejich výhodou je, že jsou menší, lehčí a lépe udržovatelné než jejich průmyslové protějšky. Proto jsou ideální pro dočasné nebo mobilní použití.
Typst byl vydán ve verzi 0.14. Jedná se o rozšiřitelný značkovací jazyk a překladač pro vytváření dokumentů včetně odborných textů s matematickými vzorci, diagramy či bibliografií.
Specialisté společnosti ESET zaznamenali útočnou kampaň, která cílí na uživatele a uživatelky v Česku a na Slovensku. Útočníci po telefonu zmanipulují oběť ke stažení falešné aplikace údajně od České národní banky (ČNB) nebo Národní banky Slovenska (NBS), přiložení platební karty k telefonu a zadání PINu. Malware poté v reálném čase přenese data z karty útočníkovi, který je bezkontaktně zneužije u bankomatu nebo na platebním terminálu.
V Ubuntu 25.10 byl balíček základních nástrojů gnu-coreutils nahrazen balíčkem rust-coreutils se základními nástroji přepsanými do Rustu. Ukázalo se, že nový "date" znefunkčnil automatickou aktualizaci. Pro obnovu je nutno balíček rust-coreutils manuálně aktualizovat.
VST 3 je nově pod licencí MIT. S verzí 3.8.0 proběhlo přelicencování zdrojových kódů z licencí "Proprietary Steinberg VST3 License" a "General Public License (GPL) Version 3". VST (Virtual Studio Technology, Wikipedie) je softwarové rozhraní pro komunikaci mezi hostitelským programem a zásuvnými moduly (pluginy), kde tyto moduly slouží ke generování a úpravě digitálního audio signálu.
Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 25.10. Podrobný přehled novinek v poznámkách k vydání.
V Londýně probíhá dvoudenní Ubuntu Summit 25.10. Na programu je řada zajímavých přednášek. Zhlédnout je lze také na YouTube (23. 10. a 24. 10.).
Gemini CLI umožňuje používání AI Gemini přímo v terminálu. Vydána byla verze 0.10.0.
Konference OpenAlt 2025 proběhne již příští víkend 1. a 2. listopadu v Brně. Nabídne přibližně 80 přednášek a workshopů rozdělených do 7 tematických tracků. Program se může ještě mírně měnit až do samotné konference, a to s ohledem na opožděné úpravy abstraktů i případné podzimní virózy. Díky partnerům je vstup na konferenci zdarma. Registrace není nutná. Vyplnění formuláře však pomůže s lepším plánováním dalších ročníků konference.
#!/usr/sbin/python import tsl2591 tsl = tsl2591.Tsl2591() # initialize full, ir = tsl.get_full_luminosity() lux = tsl.calculate_lux(full, ir) print luxSe skriptem budes v Bash zachazet jako s prikazem:
#!/bin/sh LUX = `/root/lux'
i2cget -y 1 0X29 přečíst data ze senzoru světla, ale vrací mně to Error: Read failed
Mám vůbec i2cget příkaz správně? Abych vyloučil vadu na senzoru.
i2cget -y 1 0x29 0xb4a pro 'full':
i2cget -y 1 0x29 0xb6Zbytek si musis dopocitat, nebo pouzit python skript ktery uz mas. Nebo si precit originalni arduino knihovnu podle ktere byl prepsan..
pi@raspberrypi:~ $ i2cdump -y 1 0x29 w
0,8 1,9 2,a 3,b 4,c 5,d 6,e 7,f
00: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
08: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
10: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
18: XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX
20: XXXX XXXX 0022 0023 0024 0025 0026 0027
28: 0028 0029 002a 002b 002c 002d 002e 002f
30: 0030 0031 0032 0033 0034 0035 0036 0037
38: 0038 0039 003a 003b 003c 003d 003e 003f
40: 0040 0041 0042 0043 0044 0045 0046 0047
48: 0048 0049 004a 004b 004c 004d 004e 004f
50: 0050 0051 0052 0053 0054 0055 0056 0057
58: 0058 0059 005a 005b 005c 005d 005e 005f
60: 0060 0061 0062 0063 0064 0065 0066 0067
68: 0068 0069 006a 006b 006c 006d 006e 006f
70: 0070 0071 0072 0073 0074 0075 0076 0077
78: 0078 0079 007a 007b 007c 007d 007e 007f
80: 007f 0000 0000 0000 0000 0000 0000 0000
88: 0000 0000 0000 0000 0000 0000 0000 0000
90: 0100 5001 0050 0000 0000 0000 0000 1a00
98: e01a c0e0 41c0 0041 0000 0000 0000 0000
a0: 007f 0000 0000 0000 0000 0000 0000 0000
a8: 0000 0000 0000 0000 0000 0000 0000 0000
b0: 0100 5001 0050 0000 0000 0000 0000 1a00
b8: e01a c0e0 41c0 0041 0000 0000 0000 0000
c0: 0000 0000 0000 0000 7f00 007f 0000 0000
c8: 0000 0000 0000 0000 0000 0000 4400 0044
d0: 0000 0000 0000 0000 0000 0000 0000 0000
d8: 0000 0000 0000 0000 0000 0000 0000 7f00
e0: 7f00 7f00 7f00 7f00 7f00 7f00 7f00 7f00
e8: 7f00 7f00 7f00 7f00 7f00 7f00 7f00 7f00
f0: 7f00 7f00 7f00 7f00 7f00 7f00 7f00 7f00
f8: 7f00 7f00 7f00 7f00 7f00 7f00 7f00 7f00
(0 << 7) | (1 << 5) | (reg_addr & 0x1f)Ještě bych možná bylo dobrý zapnout ten čip PON. Takže já bych to zkusil nějak takle:
i2cset -y 1 0x29 $(( (0 << 7) | (1 << 5) | 0 )) $(( (1 << 1) | ( 1 << 0 ) )) #power on, ALS enable i2cget -y 1 0x29 $(( (0 << 7) | (1 << 5) | 0x12 )) #ID registr, mel by vratit 0x50
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
10: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f !"#$%&'()*+,-./
30: 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 0123456789:;<=>?
40: 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f @ABCDEFGHIJKLMNO
50: 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f PQRSTUVWXYZ[\]^_
60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f `abcdefghijklmno
70: 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f pqrstuvwxyz{|}~?
80: 7f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ?...............
90: 00 01 50 00 00 00 00 00 1a e0 c0 41 00 00 00 00 .?P.....???A....
a0: 7f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ?...............
b0: 00 01 50 00 00 00 00 00 1a e0 c0 41 00 00 00 00 .?P.....???A....
c0: 00 00 00 00 00 7f 00 00 00 00 00 00 00 00 00 44 .....?.........D
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Chtěl jsem načíst jen status ze senzoru, který jsem vyčetl v datasheet jako:
Address | Register | Name | R/W | Register Function | Reset Value 0x13 | STATUS | R | Device | status | 0x00S příkazem: i2cget -y 1 0x29 0x13 Bohužel jsem dostal opět Error: Read failed
pi@raspberrypi ~ $ dmesg|grep i2c [ 3.982111] bcm2708_i2c 3f804000.i2c: BSC1 Controller at 0x3f804000 (irq 79) (baudrate 100000) [ 6.420761] i2c /dev entries driver
i2cset -y 1 0x29 $(( (0 << 7) | (1 << 5) | 0 )) $(( (1 << 1) | ( 1 << 0 ) ))
i2cset -y 1 0x29 $(( (0 << 7) | (1 << 5) | 0 )) $(( (1 << 1) | ( 1 << 0 ) ))Aby byl příkaz se 7 bity, tak co mám přesně udělat? Bohužel I2C není moje parketa a už tak tápu nad tím senzorem. Je pravda, že možná senzor nekomunikuje, protože mu chybí power ON. Každopádně jsem zkusil i2cdump 2x po sobě, kdy na podruhé jsem senzor zakryl hadrou pro vytvoření tmy. i2cdump výsledek byl různý. Tak že nevím, jestli power ON bude stačit.
(0 << 7)Na
(1 << 7)Takže oba příkazy takhle:
i2cset -y 1 0x29 $(( (1 << 7) | (1 << 5) | 0 )) $(( (1 << 1) | ( 1 << 0 ) )) #power on, ALS enable i2cget -y 1 0x29 $(( (1 << 7) | (1 << 5) | 0x12 )) #ID registr, mel by vratit 0x50
pi@raspberrypi ~ $ i2cset -y 1 0x29 $(( (1 << 7) | (1 << 5) | 0 )) $(( (1 << 1) | ( 1 << 0 ) )) Error: Write failed pi@raspberrypi ~ $ i2cget -y 1 0x29 $(( (1 << 7) | (1 << 5) | 0x12 )) Error: Read failed
.
Když pustíš po těch selhaných i2cget a i2cset znova i2cdump, pojede, nebo selže taky (stav kdy by chybnej příkaz zablokoval sběrnici/senzor)?
Po úspěšném i2cdump (nebo prostě ve výchozím stavu), co ohlásí tenhle samotnej příkaz?
i2cset -y 1 0x29 $(( (1 << 7) | (1 << 5) | 0 ))Pokud by prošel, tak zkus:
i2cset -y 1 0x29 $(( (1 << 7) | (1 << 5) | 0x12 )) i2cget -y 1 0x29P.S. jinak ten odkazovanej python skript ti funguje nebo ne?
).
BTW různé verze rpí můžou mít různé konfigurace I2C. Teoreticky může něco to zařízení blokovat. Jsi si jistý, že to je správná adresa a adaptér? (to spíš jo, viz i2cdump, ale radši bych to ověřil) Máš správné zapojené piny, napájecí a datové napěťové úrovně? Kompletní dmesg, lsmod, apod.
Tiskni
Sdílej: