Каждый Новый Год, как вы помните, я пытаюсь придумать какую-то новую технологическую фишечку к празднику. Идея вот этого у меня возникла еще год назад, но ни времени, ни знаний для реализации толком не было. В этот же раз поставил себе цель обязательно разобраться и добить. Демка на видео, без звука будет непонятно.
Из недостатков, конечно, нужно калибровать под каждые светодиоды то, как визуально будет выглядеть тот или иной цвет. Я этого не делал, поэтому попадание не чтоб прям идеальное, особенно для сложных сцен типа «осенний лес».
Из крутого внезапно узнал, что ESP32 двухъядерная! Не знаю, как я это пропустил в своё время. Но тут прям можно одним потоком читать сеть, а другим драйвить ленту и не делать паузы.
В целом мне всё равно нравится. Работает под управлением DeepSeek. В первой версии был GigaChat, он отвечает где-то вдвое быстрее, но слишком часто предлагает цвета совершенно мимо того, что я назвал.
Репозиторий с не слишком аккуратным кодом, если кому не лень будет возиться :) С наступающим!
#dev@clockstackwheels#gadgets@clockstackwheels#diy@clockstackwheels
[Reddit] Why derive(Copy, Clone) is different with derive(Clone) + impl Copy
Hi, I've encountered an unexpected but explainable case, that
#derive(Clone)
enum A {
A = 1,
B = 2,
C = 3,
}
impl Copy for A {}
#derive(Clone, Copy)
enum B {
A = 1,
B = 2,
C = 3,
}
Expanded code as
impl ::core::clone::Clone for A {
#inline
fn clone(self: &Self)