당일 처갓댁 왕복하니 가서 기절하고
와서 또 기절하고 그냥 하루가 훅~ 가버리네
5일장에서 정작 가장 사려고 했던 계란은 안나오고 -_ㅠ
'개소리 왈왈 > 육아관련 주저리' 카테고리의 다른 글
| 아 몰라 또 질러 ㅋㅋㅋ (0) | 2026.08.31 |
|---|---|
| 피아노 줍줍 (0) | 2026.08.30 |
| 와.. 설마 에어컨 고장? (2) | 2026.08.24 |
| 입추 그리고 시원해짐 (2) | 2026.08.10 |
| 멍빨 (0) | 2026.08.09 |
당일 처갓댁 왕복하니 가서 기절하고
와서 또 기절하고 그냥 하루가 훅~ 가버리네
5일장에서 정작 가장 사려고 했던 계란은 안나오고 -_ㅠ
| 아 몰라 또 질러 ㅋㅋㅋ (0) | 2026.08.31 |
|---|---|
| 피아노 줍줍 (0) | 2026.08.30 |
| 와.. 설마 에어컨 고장? (2) | 2026.08.24 |
| 입추 그리고 시원해짐 (2) | 2026.08.10 |
| 멍빨 (0) | 2026.08.09 |
blisk의 협박에 hud로 bt가 믿으랜다.

믿으랬지 눈뽕하라곤 안했자나!!!

하지만 결국 ark 털리고
slone이라는 놈이 타이탄 타고 와서는

bt를 벌집으로 만들어 버린다.

목표 : 생존

SERE 키트를 가지고 가랜다

읭 눈깔을 떼어주는데

권총

칼

BT-7274 라고 써있는 부품. 본체인가?

시시하게 무슨 권총인가 싶었고
스샷 정리하다 보니 SERE가 Survive Evade Resist Escape 의 약자인걸 보게 되네
그 와중에 BT를 라이트 처럼 파지하고 소심하게(!) 권총이라니 ㅠㅠ

칼은 해킹을 위한거였으니 인정!

스마트 권총이라더니 다중, 자동 조준! 크~~ 짱인데?

타이탄을 보내준단다. 오오 만세

먼가 프라스틱이나, 카본으로 덕지덕지 한 느낌 -ㅁ- 내 bt 돌려줘 ㅠㅠ

bt 본체를 꽂아주니

bt 부활!

그러고 보니 스샷도 안찍고 지워버렸네. 마지막 무기 체인건

BT의 복수!! slone과 싸울때인가 보다.
치사하게(!) 쫄따구들에 스파이더 자폭 까지 우르르르.. 야이 너무 하지 않냐?
그 와중에 slone이 쓰는 레이저는 겁나 아프다 스페이스 눌러서 피해있다가 짤짤이로 잡아야 하는데
쫄따구들 보다 보스 잡는게 유리할지도?

ark 발사하기 전에 언넝 빼내려는것 같은데


인젝터(아마도 ark 발사할 레일건?) 에서 전기가 역류해서 인지 bt가 맛이 간다.

복구한다고 골골대고 있는데 blisk 와서 널 죽이지 않겠다 선언하고 다행히 간다.

아무튼 골골대며 임무완수를 위해 올라타는데




갑자기 날 꺼내더니

믿으란다. 아니 믿으면 던질거잖아? 그런데 저거 파괴하러 날 보내버리겠다는 거...냐?!

비티 돌아오면 너에게 꼭 복수하겠다!!!! (그런 대사 없음)

폴드 웨폰을 지나서 다른 공간으로 온건가..?

아무튼 저 멀리 까지 가랜다 길이 없는데 으아아

가다보면 길이 생기는데
어디로 가야한다고 설명하기도 힘들정도로 그냥 정신없이 뛴다 ㅠㅠ



포켓몬 넌 이제 내꺼야!


번쩍! 하더니 행성이 분해된다 ㄷㄷ




엔딩 크레딧








망할 중간 보스들




먼가 쫑알쫑알 말 많던 노친네. 얼굴 첨 보는 느낌인데?






죽어서 재시작한데 도대체 몇번일까 ㅠㅠ
10시간 플레이. 즐거웠다 BT!

아래는 스팀과 연동된 EA origin에서 스샷찍음

| titanfall 2 진행중 - trial by fire, the ark, the fold weapon (0) | 2026.08.26 |
|---|---|
| titanfall2 진행중 - the beacon (0) | 2026.08.23 |
| titanfall2 진행중 - effect and cause (0) | 2026.08.23 |
| titanfall2 진행중 (0) | 2026.08.22 |
| titanfall 2 진행중 - into the abyss (0) | 2026.08.17 |
diffusion model 이 원조
data에 noise를 끼얹고 data를 완전한 noise로 만들고, 그걸 반대로 noise로 부터 data를 복원해가는
forward process(diffusion process)와 reverse process를 확용한다고 한다.
노이즈가 확산된다는건가.. 그럼 노이즈에 대한 패턴이 랜덤일텐데 그 패턴을 학습해서 역함수를 구하는 걸려나?
GAN이 diffusion 인줄 알았는데 그건 또 아닌가 보다.
[링크 : https://process-mining.tistory.com/182]
GAN - Generative adversarial network
[링크 : https://process-mining.tistory.com/169]
VAER - Variational autoencoder
[링크 : https://process-mining.tistory.com/161]
latent diffusion model의 일종
diffusion model 은 노이즈에서 원본을 복구했다면
얘는 text encoder 가 들어가는게 차이점이려나? (즉, 테스트로 프롬프트 가능해짐)

[링크 : https://github.com/CompVis/latent-diffusion]
[링크 : https://pitas.tistory.com/9]
| llama.cpp vulkan / intel uhd 630 (0) | 2026.09.01 |
|---|---|
| llama swap matrix (0) | 2026.08.28 |
| claude code with local LLM (0) | 2026.08.24 |
| Qwen3.8-27B-UD-IQ2_XXS / 1080ti 11GB (0) | 2026.08.19 |
| lambda.ai gpu 클라우드 (0) | 2026.08.11 |
llama-swap을 써도 vllm과 같이 대규모 서빙은 취약한데
그걸 조금 완화시켜줄 옵션이라고 하면되려나?
matix 혹은 group이라고 불렀다는것 같은데 써봐야겠다.
| ✅ Customization Switch model ID routing at runtime with profiles Run concurrent models with a custom DSL swap matrix (#643) Almost all configuration settings are optional and can be added one step at a time: Advanced features matrix to run concurrent models with a custom swap logic DSL hooks to run things on startup macros reusable snippets How does llama-swap work? When a request is made to an OpenAI compatible endpoint, llama-swap will extract the model value and load the appropriate server configuration to serve it. If the wrong upstream server is running, it will be replaced with the correct one. This is where the "swap" part comes in. The upstream server is automatically swapped to handle the request correctly. In the most basic configuration llama-swap handles one model at a time. For more advanced use cases, using a matrix allows multiple models to be loaded at the same time. You have complete control over how your system resources are used. |
[링크 : https://github.com/mostlygeek/llama-swap]
| # yaml-language-server: $schema=https://raw.githubusercontent.com/mostlygeek/llama-swap/refs/heads/main/config-schema.json sendLoadingState: true models: "load-1s-A": cmd: build/fake-model -listen localhost:${PORT} -load 1s -tokens 50 -tps 25 "load-1s-B": cmd: build/fake-model -listen localhost:${PORT} -load 1s -tokens 50 -tps 25 "load-1s-C": cmd: build/fake-model -listen localhost:${PORT} -load 1s -tokens 50 -tps 25 "load-1s-D": cmd: build/fake-model -listen localhost:${PORT} -load 1s -tokens 50 -tps 25 "load-1s-E": cmd: build/fake-model -listen localhost:${PORT} -load 1s -tokens 50 -tps 25 "load-1s-F": cmd: build/fake-model -listen localhost:${PORT} -load 1s -tokens 50 -tps 25 matrix: vars: A: load-1s-A B: load-1s-B C: load-1s-C D: load-1s-D E: load-1s-E F: load-1s-F sets: s1: (A & B & C) | (D & E) | F |
[링크 : https://gist.github.com/mostlygeek/106f0145ff7d71136f4cfb1af58526ce]
| llama.cpp vulkan / intel uhd 630 (0) | 2026.09.01 |
|---|---|
| stable diffusion model 이란 (0) | 2026.08.28 |
| claude code with local LLM (0) | 2026.08.24 |
| Qwen3.8-27B-UD-IQ2_XXS / 1080ti 11GB (0) | 2026.08.19 |
| lambda.ai gpu 클라우드 (0) | 2026.08.11 |
오래되서 기억도 안나네 ㅋㅋ
PB5 - SW (스위치) <- 먼가 오작동. + 쪽 3V3과 연결되지 않고 따로 전원 연결해줘야 하는 듯.
PB4 - CLK (로터리)
PB3 - DT (로터리)

귀찮아서 USB CDC 를 통해서 출력하게 함.
| #define BUF_SIZE 50 uint8_t usb_buf[BUF_SIZE]; uint32_t count = 0; int prev_gpio = 0; void gpio_proc() { int curr_gpio = 0; GPIO_PinState gpios[3]; curr_gpio |= (gpios[0] = HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_3)); curr_gpio |= (gpios[1] = HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_4)) << 1; curr_gpio |= (gpios[2] = HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_5)) << 2; if(prev_gpio != curr_gpio) { sprintf((char*)usb_buf, "%ld %d %d %d\r\n", count, gpios[2], gpios[1], gpios[0]); CDC_Transmit_FS(usb_buf, BUF_SIZE); memset(usb_buf,0,BUF_SIZE); count++; prev_gpio = curr_gpio; } } |
시계방향 회전. 두 번 딱딱 걸리고 다시 0 0 0 으로 돌아온다.
| [2026-08-28 12:20:17.496] 1897 0 0 0 [2026-08-28 12:20:20.417] 1898 0 0 1 [2026-08-28 12:20:20.469] 1899 0 1 1 [2026-08-28 12:20:20.735] 1900 0 1 0 [2026-08-28 12:20:20.767] 1901 0 0 0 |
반시계방향 회전
| [2026-08-28 12:20:20.767] 1901 0 0 0 [2026-08-28 12:20:21.906] 1902 0 1 0 [2026-08-28 12:20:21.959] 1903 0 1 1 [2026-08-28 12:20:22.202] 1904 0 0 1 [2026-08-28 12:20:22.233] 1905 0 0 0 |
정방향 0 - 1 - 3 - 2 - 0 으로
역방향 0 - 2 - 3 - 1 - 0 으로
표현되긴한데.. gray code 같기도 하고?
[링크 : https://woodforest.tistory.com/147]
그래서 저 값을 가지고 판단을 하면 이제 CW 방향인지 CCW 방향인지 판단이 가능해진다.
| char prev_gpio = 0; void gpio_proc() { char curr_gpio = 0; GPIO_PinState gpios[3]; curr_gpio |= (gpios[0] = HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_3)); curr_gpio |= (gpios[1] = HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_4)) << 1; // curr_gpio |= (gpios[2] = HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_5)) << 2; char lut[4] = {0, 1, 3, 2}; if(prev_gpio != curr_gpio) { char isCW = 0; char prev = lut[prev_gpio]; char curr = lut[curr_gpio]; if((prev + 1) % 4 == curr) { isCW = 1; } sprintf((char*)usb_buf, "%ld %d %d %s\r\n", count, gpios[1], gpios[0], isCW?"CW":"CCW"); CDC_Transmit_FS(usb_buf, BUF_SIZE); memset(usb_buf,0,BUF_SIZE); count++; prev_gpio = curr_gpio; } } |
테스트 끝!
| [2026-08-28 12:33:57.522] 0 0 1 CW [2026-08-28 12:33:57.555] 1 1 1 CW [2026-08-28 12:33:58.521] 2 1 0 CW [2026-08-28 12:33:58.553] 3 0 0 CW [2026-08-28 12:33:59.452] 4 1 0 CCW [2026-08-28 12:33:59.496] 5 1 1 CCW [2026-08-28 12:34:00.156] 6 1 0 CW [2026-08-28 12:34:00.178] 7 0 0 CW [2026-08-28 12:34:00.729] 8 1 0 CCW // 반시계 방향 한번 돌리기 [2026-08-28 12:34:00.779] 9 1 1 CCW [2026-08-28 12:34:04.895] 10 0 1 CCW // 드륵 느낌이 안나게 반시계 방향으로 천천히 돌림 [2026-08-28 12:34:06.098] 11 1 1 CW // 드륵 느낌이 날때까지 시계 방향으로 돌림 [2026-08-28 12:34:07.518] 12 0 1 CCW // 드륵 느낌이 안나게 반시계 방향으로 천천히 돌림 [2026-08-28 12:34:08.590] 13 1 1 CW // 드륵 느낌이 날때까지 시계 방향으로 돌림 [2026-08-28 12:34:09.858] 14 0 1 CCW [2026-08-28 12:34:09.916] 15 0 0 CCW [2026-08-28 12:34:11.124] 16 1 0 CCW [2026-08-28 12:34:11.154] 17 1 1 CCW [2026-08-28 12:34:12.087] 18 1 0 CW [2026-08-28 12:34:12.127] 19 0 0 CW [2026-08-28 12:34:12.444] 20 0 1 CW [2026-08-28 12:34:12.476] 21 1 1 CW [2026-08-28 12:34:12.673] 22 1 0 CW [2026-08-28 12:34:12.693] 23 0 0 CW [2026-08-28 12:34:12.746] 24 0 1 CW [2026-08-28 12:34:12.778] 25 1 1 CW [2026-08-28 12:34:12.913] 26 1 0 CW |
역시 딴짓은 시원한 에어컨과
회사 전기와, 월급을 받으면서 딴짓을 해야 잘됨 ㅋㅋㅋ
| 로터리 엔코더.. 2? (0) | 2026.08.31 |
|---|---|
| stm32 port 전체 한번에 출력 변경하기 (0) | 2026.06.22 |
| stm32 uart data bit (0) | 2026.03.17 |
| stm32 다른 영역으로 점프(부트로더) (0) | 2026.03.06 |
| stm32cubeide cpp 변환이후 generate code (0) | 2026.02.25 |
창을 띄우고 모델을 불러오고

창 크기 조절하듯 경계선 밖에 가서 + 로 커서가 바뀌었을 때 우클릭하면

아래처럼 split / join이 뜬다.
그럼 split 해주고

원하는 창을 나누고 클릭하면 된다.

오른쪽 창은 숫자키패드 0 눌러서 카메라 뷰로 바꾸고
왼쪽에서 조절하면 렌더하면서 일일이 안봐도 되서 딱이네

| blender sculpting - dynatopo, grab (0) | 2026.08.06 |
|---|---|
| blender 5.x sculpting (0) | 2026.07.29 |
| blender export render/viewport (0) | 2026.07.29 |
| blender 떼어내기, 때우기 (0) | 2026.07.29 |
| blender 보이지 않는 면까지 선택하기 (0) | 2026.07.29 |
이게 리비전이 다른가 모양이 다른게 있네
버전에 따라 USB-C 커넥터에 연결된 포트가 완전 다르니 주의가 필요할 듯.
내가 하나 얻은건 레딧의 것과 동일한 디자인이고
사진 기준 오른쪽 USB-C (USB OTG)
| $ sudo dmesg [108206.360152] usb 1-2: new full-speed USB device number 12 using xhci_hcd [108206.487718] usb 1-2: New USB device found, idVendor=303a, idProduct=1001, bcdDevice= 1.01 [108206.487738] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [108206.487745] usb 1-2: Product: USB JTAG/serial debug unit [108206.487750] usb 1-2: Manufacturer: Espressif [108206.487756] usb 1-2: SerialNumber: 98:A3:16:E3:50:EC [108206.492137] cdc_acm 1-2:1.0: ttyACM0: USB ACM device $ lsusb Bus 001 Device 021: ID 303a:1001 Espressif USB JTAG/serial debug unit |
사진 기준 왼쪽 USB-C (TTL to UART)
| $ sudo dmesg [108220.479842] usb 1-2: USB disconnect, device number 12 [108221.700959] usb 1-2: new full-speed USB device number 13 using xhci_hcd [108221.829581] usb 1-2: New USB device found, idVendor=1a86, idProduct=55d3, bcdDevice= 4.45 [108221.829604] usb 1-2: New USB device strings: Mfr=0, Product=2, SerialNumber=3 [108221.829614] usb 1-2: Product: USB Single Serial [108221.829621] usb 1-2: SerialNumber: 5A46054847 [108221.834111] cdc_acm 1-2:1.0: ttyACM0: USB ACM device $ lsusb Bus 001 Device 020: ID 1a86:55d3 QinHeng Electronics USB Single Serial |

[링크 : https://www.reddit.com/r/esp32/comments/1gewov4/how_do_2_usbc_ports_relate_to_power_supply/?tl=ko]

[링크 : https://www.devicemart.co.kr/goods/view?no=14585830]
이걸 기반으로 작동하는걸려냐?
[링크 : https://github.com/espressif/esp-usb/tree/master/host/class/uvc/usb_host_uvc]
| esp32 s3 n16r8 / n9r2 (0) | 2026.08.26 |
|---|---|
| esp32cam 영상인식 (0) | 2026.05.24 |
| platform.io + vscode + esp32 (0) | 2026.02.18 |
| esp32 on arduino ide (0) | 2026.02.18 |
| esp component 와 idf.py create-project-from-example (0) | 2026.02.10 |
아따 돌아갈길 못 찾아서 한참 헤맸네

엄청 오랫만에 보는 BT 반가워!

BT 손에 오르란다. 또 던지겠군 ㅋㅋ


안테나 수리하고

떨어져서 BT가 낚아준다.

음..

따봉

이제 숨좀 돌리나 싶었더니

또 다시 돌아온 중간보스의 타임

보스 잡고 통신성공!

아군(그러니까 반란군) 함선들이 몰려온다

사령관이 제대로 된 파일럿으로 해준다니까 BT가 거부하면서 감싸준다.

그나저나 저 함선은 어떻게 떠있는겨

미니 로봇들도 따봉 ㅋㅋ

적진에서 레일건(저격) 획득!

레일건으로 하니 살살 녹는다. 좋아!
그 와중에 ark 들도 토끼는 나쁜놈들!

slone 저 녀석도 중간 보스로 나오려나?

둘이 같은 모습으로 달리는군 ㅋㅋ

오오 바주카!?

ark 다시 뺏으려는데 갑자기 막 격추된다

이름있는거 보니 또 중간 보스군
그와중에 묘~하게 니어 오토마타 기계생명체 닮은 느낌

그래 아주 던지는거 재미들렸지?


적들을 제압하고 칼꽂아서 해킹하고 우주선 몰고 어딘가 가려는데

역시 중간보스 등장!
처음에 쫄따구 둘인가 데리고 오는데 드럽게 튼튼하고
3페이즈로 진행되었던가?
쫄따구 2잡으면 viper 랑 1:1인데
먼가 묘한 체크 포인트가 있었던것 같다.
실드도 빠르게 잘차고 먼가 빡치는..
간간히 바닥에서 나오는 배터리 잘 수급해어 어찌어찌 이긴다.

viper를 무찌르고, 이제 ark 강탈하러 가려는데


죽은줄 알았던 viper가 돌아와서는 bt를 패기 시작한다.


viper도 앞에 장갑판 날아가서 타이탄을 공격하다 보면 BT가 죽으니
후다닥 정면에서 viper를 직접 죽이면 끝
그 와중에 우리 BT 왼팔 하나 날아감 ㅠㅠ

아까 싸우던 배에서 ark를 강탈하러 가는데
자폭인지 다들 탈출하고 있다.

팔이 하나뿐이라 부수긴 했는데 닿지 않아서 쿠퍼 헬프!

ark를 회수하고

BT안에 넣고

비행기가 못 버티니 BT 라도 탈출하라고 시키지만

아 똥꼬집 AI!!
프로토콜 3

파일럿을 다신 잃지 않을 것이다.

음 난 잡혔고. BT도 잡혔나 보다.

The Fold Weapon

기계답게(?) 개겨 본다.

일단 여기까지~
| titanfall2 싱글 플레이 끝 (0) | 2026.08.29 |
|---|---|
| titanfall2 진행중 - the beacon (0) | 2026.08.23 |
| titanfall2 진행중 - effect and cause (0) | 2026.08.23 |
| titanfall2 진행중 (0) | 2026.08.22 |
| titanfall 2 진행중 - into the abyss (0) | 2026.08.17 |
n00r0 에서
n은 Flash 용량(MB 단위)
r은 PSRAM 용량(MB 단위)
[링크 : https://www.etei.com/comparison/esp32-s3-wroom-1-n16r8_esp32-s3-wroom-1u-n8r2]
일단.. stm32f4 계열 보단 싸지만 얘도 싸지는 않고..
그 와중에 가격 차이 왜이래 오히려 역전?

[링크 : https://itempage3.auction.co.kr/DetailView.aspx?itemno=F455981092]
| esp32-s3 / n16r8 (0) | 2026.08.27 |
|---|---|
| esp32cam 영상인식 (0) | 2026.05.24 |
| platform.io + vscode + esp32 (0) | 2026.02.18 |
| esp32 on arduino ide (0) | 2026.02.18 |
| esp component 와 idf.py create-project-from-example (0) | 2026.02.10 |
sync 패키지
[링크 : https://pkg.go.dev/sync]
Mutex.Lock() 은 Mutex.Unlock()으로 풀수 있다.
[링크 : https://pkg.go.dev/sync#Mutex.Lock]
[링크 : https://pkg.go.dev/sync#Mutex]
RWMutex.RLock() / RWMutex.Lock() - RWMutex.RUnlock() / RWMutex.Unlock()
abc 순으로 정렬되어있다보니 보기가 어렵네
아무튼 Lock - Unlock / RLock - RUnlock 으로 pair가 된다.
| func (rw *RWMutex) Lock() Lock locks rw for writing. If the lock is already locked for reading or writing, Lock blocks until the lock is available. func (*RWMutex) Unlock ¶ func (rw *RWMutex) Unlock() Unlock unlocks rw for writing. It is a run-time error if rw is not locked for writing on entry to Unlock. As with Mutexes, a locked RWMutex is not associated with a particular goroutine. One goroutine may RWMutex.RLock (RWMutex.Lock) a RWMutex and then arrange for another goroutine to RWMutex.RUnlock (RWMutex.Unlock) it. func (*RWMutex) RLock ¶ func (rw *RWMutex) RLock() RLock locks rw for reading. It should not be used for recursive read locking; a blocked Lock call excludes new readers from acquiring the lock. See the documentation on the RWMutex type. func (*RWMutex) RUnlock ¶ func (rw *RWMutex) RUnlock() RUnlock undoes a single RWMutex.RLock call; it does not affect other simultaneous readers. It is a run-time error if rw is not locked for reading on entry to RUnlock. |
[링크 : https://pkg.go.dev/sync#RWMutex.Lock]
[링크 : https://pkg.go.dev/sync#RWMutex]
[링크 : https://www.jaenung.net/tree/28536]
[링크 : https://rainbow96bear.tistory.com/entry/Go-고루틴-이해하기-뮤텍스-데드락]
+
2026.08.26
| Usage¶ To help diagnose such bugs, Go includes a built-in data race detector. To use it, add the -race flag to the go command: $ go test -race mypkg // to test the package $ go run -race mysrc.go // to run the source file $ go build -race mycmd // to build the command $ go install -race mypkg // to install the package |
| golang channel..2 방향, select 등 (0) | 2026.08.25 |
|---|---|
| golang Init() (0) | 2026.08.20 |
| golang git commit hash (0) | 2025.11.24 |
| golang 정적웹 파일 포함하기 (0) | 2025.11.24 |
| go vet (golang 정적분석) (0) | 2025.10.02 |