home.social

#i2c — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #i2c, aggregated by home.social.

  1. Создаем I2C Master Controller на Verilog. Создаем контроллер ядра I2C

    Я продолжаю описывать создание I2C-контроллера на Verilog. В предыдущих статьях мы протестировали ядро контроллера который выполняет атомарные функции работы с шиной в т.ч. в пограничных ситуациях типа clock stretching и пр. Теперь необходимо разработать управляющий контроллер для этого ядра, чтобы выполнять необходимые нам функции, но уже на следующем уровне абстракции и стать на шаг ближе к нашей цели - к рабочему коду I2C Controller который мы будем использовать с EEPROM и OLED SSD1306, а далее все это переиспользуем в Zynq и подключим к Linux. Всем заинтересовавшимся - добро пожаловать под кат!

    habr.com/ru/companies/beget/ar

    #verilog #quartus #i2c #i2c_master_controller #testbench #alinx_ax301 #fpga

  2. Создаем I2C Master Controller на Verilog. Создаем контроллер ядра I2C

    Я продолжаю описывать создание I2C-контроллера на Verilog. В предыдущих статьях мы протестировали ядро контроллера который выполняет атомарные функции работы с шиной в т.ч. в пограничных ситуациях типа clock stretching и пр. Теперь необходимо разработать управляющий контроллер для этого ядра, чтобы выполнять необходимые нам функции, но уже на следующем уровне абстракции и стать на шаг ближе к нашей цели - к рабочему коду I2C Controller который мы будем использовать с EEPROM и OLED SSD1306, а далее все это переиспользуем в Zynq и подключим к Linux. Всем заинтересовавшимся - добро пожаловать под кат!

    habr.com/ru/companies/beget/ar

    #verilog #quartus #i2c #i2c_master_controller #testbench #alinx_ax301 #fpga

  3. Создаем I2C Master Controller на Verilog. Создаем контроллер ядра I2C

    Я продолжаю описывать создание I2C-контроллера на Verilog. В предыдущих статьях мы протестировали ядро контроллера который выполняет атомарные функции работы с шиной в т.ч. в пограничных ситуациях типа clock stretching и пр. Теперь необходимо разработать управляющий контроллер для этого ядра, чтобы выполнять необходимые нам функции, но уже на следующем уровне абстракции и стать на шаг ближе к нашей цели - к рабочему коду I2C Controller который мы будем использовать с EEPROM и OLED SSD1306, а далее все это переиспользуем в Zynq и подключим к Linux. Всем заинтересовавшимся - добро пожаловать под кат!

    habr.com/ru/companies/beget/ar

    #verilog #quartus #i2c #i2c_master_controller #testbench #alinx_ax301 #fpga

  4. Создаем I2C Master Controller на Verilog. Создаем контроллер ядра I2C

    Я продолжаю описывать создание I2C-контроллера на Verilog. В предыдущих статьях мы протестировали ядро контроллера который выполняет атомарные функции работы с шиной в т.ч. в пограничных ситуациях типа clock stretching и пр. Теперь необходимо разработать управляющий контроллер для этого ядра, чтобы выполнять необходимые нам функции, но уже на следующем уровне абстракции и стать на шаг ближе к нашей цели - к рабочему коду I2C Controller который мы будем использовать с EEPROM и OLED SSD1306, а далее все это переиспользуем в Zynq и подключим к Linux. Всем заинтересовавшимся - добро пожаловать под кат!

    habr.com/ru/companies/beget/ar

    #verilog #quartus #i2c #i2c_master_controller #testbench #alinx_ax301 #fpga

  5. Hardware Interconnect Buses | STM32 Basics #6 This video provides an overview of the mode common hardware interconnect busses now and in the past. #STM32 #Basics #Busses #UART #I2C #SPI www.youtube.com/watch?v=YwPb...

    Hardware Interconnect Buses | ...

  6. Hardware Interconnect Buses | STM32 Basics #6

    This video provides an overview of the mode common hardware interconnect busses now and in the past.

    #STM32 #Basics #Busses #UART #I2C #SPI

    youtube.com/watch?v=YwPbKwh9Xkk

  7. Hardware Interconnect Buses | STM32 Basics #6

    This video provides an overview of the mode common hardware interconnect busses now and in the past.

    #STM32 #Basics #Busses #UART #I2C #SPI

    youtube.com/watch?v=YwPbKwh9Xkk

  8. Hardware Interconnect Buses | STM32 Basics #6

    This video provides an overview of the mode common hardware interconnect busses now and in the past.

    #STM32 #Basics #Busses #UART #I2C #SPI

    youtube.com/watch?v=YwPbKwh9Xkk

  9. Создаем I2C Master Controller на Verilog. Переходим на новый уровень

    Наконец-то нашлось вдохновение и время вернуться к старой статье, в которой я изобретал I2C Master Controller, но так и не довел задачу до логического конца. Спустя почти три года много воды утекло, появилось множество возможностей и ряд компетенций и я хотел бы реанимировать решение этой задачи и продолжить рассказ. Перечитав старый материал, я сформулировал обновленную группу задач: переделать I2C Master Controller, снабдив его функциями, которых не было в первой версии, типа clock stretching и burst-режима при этом сопроводив это детальным описанием процесса реализации и объяснением почему были предприняты те или иные действия. После все это воплотить сначала в симуляции, а потом и на реальном железе, с использованием EEPROM и OLED-дисплея SSD1306. Вобщем, всем неравнодушным к теме цифровой схемотехники, ПЛИС и шине I2C - добро пожаловать под кат! :)

    habr.com/ru/companies/beget/ar

    #I2C #i2c_master_controller #verilog #howto #tutorial #quartus

  10. This might be an incredibly dumb question, but I'm trying to get an I²C keyboard working with this thing: espboards.dev/esp32/esp32-lite

    It says "I²C: Default SDA (GPIO21) and SCL (GPIO22)." I can find GPIO22 easily enough - it's there in the diagram and printed right on the board - but where on Earth is GPIO21?
    #programming #ESP32 #I2C

  11. HOWTO I2C EEPROM - STM32 Tutorial #86

    This video will cover using I2C EEPROM's such as the M24M01 or M24Cxx. We will cover the I2C setup and configuration as well as the M24Cxx library. Finally we will be putting an actual file system (LittleFS) on top of the library.

    #STM32 #GettingStarted #Tutorial #STM32CubeMX #STM32CubeIDE #I2C #EEPROM #M24Cxx

    youtube.com/watch?v=iAjY9P2lb5s

  12. As for me and my house, we will use blue wires for the clock signal because it reminds me of water clocks.

  13. Как разрабатывать утилиты для тестов embedded-прошивок без железа: практика Test Driven Development

    Часто SDET-инженеры, работающие со встраиваемыми системами, не приступают к работе, пока не получат реальное железо: датчик, микроконтроллер или плату с новым чипом. Такой подход обычно оправдывают тем, что без физического девайса «на столе» писать корректно работающий софт невозможно. Очевидный минус: увеличивается время выхода продукта и нового функционала на рынок. Но разработку можно начать, даже не имея в своем распоряжении устройства: все дело в договоренности между командами. Меня зовут Рустам Ахмадуллин, я старший инженер по системной верификации аппаратуры в YADRO. Расскажу на примере датчика температуры LM75A, как написать API без физического доступа к устройству и его прошивке. Разберем методологию Test Driven Development, при которой разработка начинается с написания автоматизированных тестов, а не самого кода.

    habr.com/ru/companies/yadro/ar

    #tdd #pytest #embedded #i2c #test_driven_development #sdet #uv #system_software_development #python #aqa

  14. Как разрабатывать утилиты для тестов embedded-прошивок без железа: практика Test Driven Development

    Часто SDET-инженеры, работающие со встраиваемыми системами, не приступают к работе, пока не получат реальное железо: датчик, микроконтроллер или плату с новым чипом. Такой подход обычно оправдывают тем, что без физического девайса «на столе» писать корректно работающий софт невозможно. Очевидный минус: увеличивается время выхода продукта и нового функционала на рынок. Но разработку можно начать, даже не имея в своем распоряжении устройства: все дело в договоренности между командами. Меня зовут Рустам Ахмадуллин, я старший инженер по системной верификации аппаратуры в YADRO. Расскажу на примере датчика температуры LM75A, как написать API без физического доступа к устройству и его прошивке. Разберем методологию Test Driven Development, при которой разработка начинается с написания автоматизированных тестов, а не самого кода.

    habr.com/ru/companies/yadro/ar

    #tdd #pytest #embedded #i2c #test_driven_development #sdet #uv #system_software_development #python #aqa

  15. Как разрабатывать утилиты для тестов embedded-прошивок без железа: практика Test Driven Development

    Часто SDET-инженеры, работающие со встраиваемыми системами, не приступают к работе, пока не получат реальное железо: датчик, микроконтроллер или плату с новым чипом. Такой подход обычно оправдывают тем, что без физического девайса «на столе» писать корректно работающий софт невозможно. Очевидный минус: увеличивается время выхода продукта и нового функционала на рынок. Но разработку можно начать, даже не имея в своем распоряжении устройства: все дело в договоренности между командами. Меня зовут Рустам Ахмадуллин, я старший инженер по системной верификации аппаратуры в YADRO. Расскажу на примере датчика температуры LM75A, как написать API без физического доступа к устройству и его прошивке. Разберем методологию Test Driven Development, при которой разработка начинается с написания автоматизированных тестов, а не самого кода.

    habr.com/ru/companies/yadro/ar

    #tdd #pytest #embedded #i2c #test_driven_development #sdet #uv #system_software_development #python #aqa

  16. Как разрабатывать утилиты для тестов embedded-прошивок без железа: практика Test Driven Development

    Часто SDET-инженеры, работающие со встраиваемыми системами, не приступают к работе, пока не получат реальное железо: датчик, микроконтроллер или плату с новым чипом. Такой подход обычно оправдывают тем, что без физического девайса «на столе» писать корректно работающий софт невозможно. Очевидный минус: увеличивается время выхода продукта и нового функционала на рынок. Но разработку можно начать, даже не имея в своем распоряжении устройства: все дело в договоренности между командами. Меня зовут Рустам Ахмадуллин, я старший инженер по системной верификации аппаратуры в YADRO. Расскажу на примере датчика температуры LM75A, как написать API без физического доступа к устройству и его прошивке. Разберем методологию Test Driven Development, при которой разработка начинается с написания автоматизированных тестов, а не самого кода.

    habr.com/ru/companies/yadro/ar

    #tdd #pytest #embedded #i2c #test_driven_development #sdet #uv #system_software_development #python #aqa

  17. And:
    - do not directly use files generated by Claude; simply work its suggestions into your files, and upload your files to Claude every now and then
    - resyncing both files and conversation keeps Claude focused and compensates for context compression

    #ClaudeAI #AI #copilot #AVR8 #I2C

  18. Some lessons learned so far:
    - Claude is bad at architecture, orthogonal design, separation of concerns, and signaling corner cases (as in: it needs hints)
    - Claude is good at filling in details, signaling typos, following paths, comparing code to a specification document, and checking for completeness and correctness (as far as specified)

    #ClaudeAI #AI #copilot #AVR8 #I2C

  19. used Claude.AI as a copilot for finalizing a fully interrupt-driven I2C library for the AVR8 MCUs I've been working on. Took me only days instead of weeks to get this library done!

    #ClaudeAI #AI #copilot #AVR8 #I2C

  20. I am using the Seeed XIAO nRF52840 kit as a solar powered Meshtastic node with LiFePo4 batteries. These batteries have a nominal voltage of 3.2V and the node is even still running at around 2.9V until it dies.

    But does it run "well" with these low voltages? Maybe not...

    So I added a MT3608 step up converter which gives me a steady 5V voltage now. To keep track of the real battery voltage I added a INA226 sensor which reads the voltage and current.

    Unfortunately it doesn't work out of the box as mentioned here: https://github.com/meshtastic/firmware/issues/7670

    The SDA/SCL pins as shown in this diagram are by default found at D4 and D5 as shown here: https://wiki.seeedstudio.com/XIAO_BLE/

    Those are already in use by the LoRa hat and don't work. If you are not using the L76K GPS modules you can use the pins D6 (SDA) and D7 (SCL) instead after recompiling the firmware:

    git clone https://github.com/meshtastic/firmware.git
    cd firmware
    git submodule update --init --recursive
    
    # maybe checkout the latest release tag if you don't want to compile bleeding edge:
    git checkout v2.7.18.fb3bf78
    
    # to prevent hitting the flash size limit edit this file
    vim variants/nrf52840/seeed_xiao_nrf52840_kit/platformio.ini 
    
    ; Seeed Xiao BLE but with GPS undefined, and therefore i2c active
    [env:seeed_xiao_nrf52840_kit_i2c]
    extends = env:seeed_xiao_nrf52840_kit
    board_level = extra
    build_flags = ${env:seeed_xiao_nrf52840_kit.build_flags}
      -DSEEED_XIAO_NRF52840_KIT
      -UGPS_L76K
    ;build_unflags = -DGPS_L76K
    
    # now compile
    pio run -e seeed_xiao_nrf52840_kit_i2c
    
    # flash this file the usual way
    .pio/build/seeed_xiao_nrf52840_kit_i2c/firmware-seeed_xiao_nrf52840_kit_i2c-2.7.19.a092f6b.uf2
    

    #Meshtastic #I2C #INA226 #MT3608

  21. Forever will stubbornly say "eye too see", not "eye squared see".

    I get it, and sure, that's great, but no. Can't make me do it.

    #electronics #i2c #microcontrollers

  22. ah yes, the #sc16is750 uses bits [6:3] of the transmitted #I2C data byte for the sub-address of the #UART register you want to acces. So $18 will access register number 3 since bit 3 and 4 are set. Forgot about that. And here I am wondering what the heck I did back then ...

    #coding

  23. Чип, который умеет говорить (SI4703)

    В этом тексте я хотел бы рассказать про свой опыт работы с однокристальным радио приёмникои SI4703 от компании Silicon Laboratories. SI4703 - это миниатюрный настраиваемый FM радио приемник c DSP обработкой, управляемый по I2C, с возможностью принимать бинарные данные от радиостанций по протоколу RDS . Чип производит демодуляцию частотно модулированного сигнала, пропускает его через цифровой гетеродин и выдает на наушники аналоговый сигнал. Тут есть два смесителя: первый аналоговый, второй цифровой. Аналоговый смеситель снимает FM сигнал с несущей. Цифровой смеситель подстраивает цифровой гетеродин на конкретную радиостанцию. Это классический гетеродинный приемник.

    habr.com/ru/articles/970446/

    #si4703 #i2c #spi #Silicon_Laboratories #sparkfun #FMradio #asic #multimedia #infotainment

  24. How to Use the AT24C32 EEPROM for 4KB External Memory for Microcontrollers - Over on YouTube [Electronic Wizard] explains how to use the AT24C32 EEPROM for ext... - hackaday.com/2025/09/08/how-to #microcontrollers #hardware #at24c32 #eeprom #i2c

  25. CW: re: cbt abbreviation [literally]

    @alexmush NXP's datasheet for "PCA9549 Octal bus switch" claims that the closest meaning of "CBT" to the I²C context is "crossbar technology".
    datasheet4u.com/datasheet/NXP-

    Other meanings that I found in a web search for "i2c" "cbt" included a "core body temperature" sensor and "computer-based training". It's not related to cognitive behavioral therapy nor 🐓️⚽️🗜️ if that's what you're thinking.

    #datasheet #i2c #cbt #abbreviation #electronics

  26. CW: re: cbt abbreviation [literally]

    @alexmush NXP's datasheet for "PCA9549 Octal bus switch" claims that the closest meaning of "CBT" to the I²C context is "crossbar technology".
    datasheet4u.com/datasheet/NXP-

    Other meanings that I found in a web search for "i2c" "cbt" included a "core body temperature" sensor and "computer-based training". It's not related to cognitive behavioral therapy nor 🐓️⚽️🗜️ if that's what you're thinking.

    #datasheet #i2c #cbt #abbreviation #electronics

  27. CW: re: cbt abbreviation [literally]

    @alexmush NXP's datasheet for "PCA9549 Octal bus switch" claims that the closest meaning of "CBT" to the I²C context is "crossbar technology".
    datasheet4u.com/datasheet/NXP-

    Other meanings that I found in a web search for "i2c" "cbt" included a "core body temperature" sensor and "computer-based training". It's not related to cognitive behavioral therapy nor 🐓️⚽️🗜️ if that's what you're thinking.

    #datasheet #i2c #cbt #abbreviation #electronics

  28. CW: re: cbt abbreviation [literally]

    @alexmush NXP's datasheet for "PCA9549 Octal bus switch" claims that the closest meaning of "CBT" to the I²C context is "crossbar technology".
    datasheet4u.com/datasheet/NXP-

    Other meanings that I found in a web search for "i2c" "cbt" included a "core body temperature" sensor and "computer-based training". It's not related to cognitive behavioral therapy nor 🐓️⚽️🗜️ if that's what you're thinking.

    #datasheet #i2c #cbt #abbreviation #electronics

  29. CW: re: cbt abbreviation [literally]

    @alexmush NXP's datasheet for "PCA9549 Octal bus switch" claims that the closest meaning of "CBT" to the I²C context is "crossbar technology".
    datasheet4u.com/datasheet/NXP-

    Other meanings that I found in a web search for "i2c" "cbt" included a "core body temperature" sensor and "computer-based training". It's not related to cognitive behavioral therapy nor 🐓️⚽️🗜️ if that's what you're thinking.

    #datasheet #i2c #cbt #abbreviation #electronics

  30. День 19

    Вот, читал сегодня про интерфейсы #i2c #usart вспоминал вчерашние забавы :blobcatcookienom:
    Слишком увлекся "железками", про веб забыл уже... :blobcatoh:
    После рабочего дня мало сил, ничего не хочется. Работать с людьми целых 8 часов - это отдача психоэнергии, которая восполняется медленно. Надеюсь, однажды, став программистом больше не придется это делать...

  31. CH32V003 первый проект. Мигаем OLED дисплеем и делаем измеритель концентрации CO2

    В последнее время разработчики электроники испытывают трудности с поставками электронных компонентов. Одним из решений данной проблемы является переход на "исконно китайскую" элементную базу. Это решение подкупает ценой и доступностью, но пугает плохой документацией и небольшим количеством информации на понятных нам языках. В данной публикации расскажу о любопытном микроконтроллере на ядре RISC-V и сделаю простое первое устройство - датчик концентрации углекислого газа в воздухе/мигалку OLED дисплеем и светодиодом (куда ж без мигалки светодиодом). В репозитории размещен проект для тех, кто захочет воспользоваться данными наработками.

    habr.com/ru/articles/775724/

    #CH32V003 #ssd1306 #SCD41 #I2C #i2c_master_controller

  32. Mit dem Sensor #BME680, der den gleichen #I2C Bus wie das Display nutzt, er also parallel aufgeschaltet / aufgelötet werden kann, ist es möglich, die #Temperatur, die #Luftfeuchtigkeit, den #Luftdruck und die #Luftqualität zu messen, und in die Anzeige des Clients zu übergeben.

    Ich habe es heute mit meinem ersten
    #Gateway, einem #T-Beam getestet.

    Das zweite Gateway folgt
    😀

    #meshtastic #lora #wan #mesh

  33. I decided to redo the DIY #shield. Now I'll be able to connect four I²C sensors using #JST connectors. The Bluetooth module will be repositioned, too. The resistors were replaced by #SMD ones, to save space.
    I only have to decide which pins to use.
    #Dalek #Arduino #robot #soldering #perfboard #IIC #I2C

  34. I wasn't satisfied with #Sensirion's #USB powered #CO2 traffic light due to its hardcoded thresholds, so I built my own using a #RaspberryPiZero with solderless #ZeroDongle, #I2C #BreakoutGarden Mini #pHAT, Sensirion #SCD41 CO₂ sensor breakout and the #Pimoroni #LEDShim. All parts available at shop.pimoroni.com except for the Pi which is sold out.

    The code behind it is based on two library examples by @gadgetoid and available at github.com/xtaran/co2-led-mete under the #MITLicense.