Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.
Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.
Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.
Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.
Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinek a poznámkách k vydání.
Příspěvek na blogu Truffle Security: Kdokoli může přistupovat ke smazaným a privátním repozitářům na GitHubu.
Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.
Byla vydána verze 1.80.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.
Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.
/* defines for backward compatibility */ #ifndef cbi #define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) #endif #ifndef sbi #define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) #endif int main(void) { /* UART init */ UBRRH=0; UBRRL=51; sbi(UCSRB,RXEN); sbi(UCSRB,TXEN); cbi(UCSRC,UMSEL); //asynchornni prenos cbi(UCSRC,UPM1); cbi(UCSRC,UPM0); //odd parity cbi(UCSRC,USBS); //1 stop bit cbi(UCSRC,UCSZ2); sbi(UCSRC,UCSZ1); sbi(UCSRC,UCSZ0);//8 datovych bitu while (1) { loop_until_bit_is_set(UCSRA, UDRE); UDR = "5"; } return 0; }Potom jsem nastavil port na PC:
stty -F /dev/ttyS1 9600 cs8 clocal cread -cstopb parenb parodd
a napsal jsem: cat /dev/ttyS1 a čekal...a ono prd.
#include <avr/io.h> void print (char *string){ while (*string) { loop_until_bit_is_set(UCSRA, UDRE); UDR = *string; string++; } return; } int main(void) { /* UART init */ sbi(UCSRB, RXEN); sbi(UCSRB, TXEN); UCSRC = (1 << URSEL) | (1 << USBS) | (3 << UCSZ0); UBRRH = 0x01; /*479 is baud rate 1200*/ UBRRL = 0xdf; /*479 is baud rate 1200*/ while (1) { print ("Hello world.\n"); } return 0; }A do toho svého kódu napiš raději
UDR = '5';Nedokážu říct přesně kde máš chybu, protože používáme příliš odlišné postupy. Sériový port nastavuju jiným způsobem (viz mé články o sériové komunikaci), na programování jednočipu používám
uisp
a ani by mě nenapadlo si nadefinovávat makra cbi a sbi pro "zpětnou kompatibilitu"
UCSRB = (1 << RXEN) | (1 << TXEN);. Procesor beží na vnitřní oscilátor (8Mhz).(CKSEL = 4 ) Port jsem nastavil takto:
stty -F /dev/ttyS1 1200 -parenb -cstopb cs8Tedy: Baudrate 1200, bez parity, 8datových bitů a 2 stopbity.
TEXT TEXT TEXT TEXTKmitá určitě. Zkoušel jsem tam nahrát program na blikání ledkama. (tím vylučuju problém se softem a programátorem).
loop_until_bit_is_set(ten bit, co se nastavi když jsou v UDR nepřečtený data);Ale ted je možný, že už to půjde dobře.
stty -F /dev/ttyS1 1200 clocal cread -crtscts cs8 -cstopb hup -parenb parodd -brkint -icrnl ignbrk -igncr ignpar imaxbel -inlcr inpck -istrip -iuclc -ixany ixoff -ixon bs0 cr0 ff0 nl0 -ocrnl -ofdel -ofill -olcuc -onlcr -onlret onocr -opost tab0 vt0 -crterase crtkill -ctlecho -echo -echok -echonl -echoprt -icanon -iexten -isig -noflsh -tostop -xcase time 5 min 1
cat vyhodi:
śĄ×Ö.6!B td▒7FkZ.H.
stty -F /dev/ttyS1 -a speed 1200 baud; rows 0; columns 0; line = 0; ... -parenb parodd cs8 hupcl -cstopb cread clocal -crtscts ignbrk -brkint ignpar -parmrk inpck -istrip -inlcr -igncr -icrnl -ixon ixoff -iuclc -ixany imaxbel -opost -olcuc -ocrnl -onlcr onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 -isig -icanon -iexten -echo -echoe -echok -echonl -noflsh -xcase -tostop -echoprt -echoctl echoke
ľś@nşśşśnşľ@ş@şś@ş@şľ@nşľśşś@şľś@nľśşľ@nşľśşľ@núşľś@şľś^▒^sTo se normálně vypisuje za chodu. Pokud jednocip vypnu, tak to jeste hodi tak 7-8 znaku a prestane. Pokud ho zapnu, zase zacne. Kdyby to misto tech kravin psalo normalni text, byl by maximalne spokojen.
˛`N N ˛`N ˛N ˛N ˛`N N ˛ ˛N N ˛`NNastavovani poctu stop-bitu nema vliv na predchozi dva pripady. Pokud zapnu jeden stop-bit v pripade s vyplou paritou, vysledek je:
]YŽ:śĄĄ v&▒twtkd×Ale zase se to vypise az po vypnuti. Nevim, jak je to mozne. Vsadil bych se, ze mikrokontroler je nastavenej tak, ze tam neni parita, dva stop-bity, rychlost 1200.
Tiskni
Sdílej: