{"id":15980859,"url":"https://github.com/macbre/electronics","last_synced_at":"2026-01-27T19:51:50.009Z","repository":{"id":141987942,"uuid":"257013968","full_name":"macbre/electronics","owner":"macbre","description":"Various electronics related notes, projects and schematics","archived":false,"fork":false,"pushed_at":"2024-06-24T13:32:02.000Z","size":151,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-29T15:11:55.633Z","etag":null,"topics":["electronics-projects"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/macbre.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-04-19T14:01:43.000Z","updated_at":"2024-06-24T13:32:05.000Z","dependencies_parsed_at":"2025-05-17T03:10:08.993Z","dependency_job_id":"4d70ccc7-9b2a-4bd7-9dde-695fb55aa9ba","html_url":"https://github.com/macbre/electronics","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/macbre/electronics","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macbre%2Felectronics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macbre%2Felectronics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macbre%2Felectronics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macbre%2Felectronics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/macbre","download_url":"https://codeload.github.com/macbre/electronics/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/macbre%2Felectronics/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28819962,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T18:44:20.126Z","status":"ssl_error","status_checked_at":"2026-01-27T18:44:09.161Z","response_time":168,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["electronics-projects"],"created_at":"2024-10-08T00:23:16.752Z","updated_at":"2026-01-27T19:51:49.997Z","avatar_url":"https://github.com/macbre.png","language":"C","readme":"# electronics\nVarious electronics related notes, projects and schematics\n\n\n## Debian setup\n\n```\n$ sudo usermod -aG dialout $(whoami) \u0026\u0026 sudo chmod a+rw /dev/ttyUSB0.\n$ sudo apt install -y avrdude\n$ sudo avrdude -v -v -P /dev/ttyUSB0 -c avrisp -p t85\n```\n\n* [Drivers for ch340](https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/all#linux)\n\n### esp-wroom32\n\n```\n$ lsusb\nBus 001 Device 005: ID 10c4:ea60 Silicon Labs CP210x UART Bridge\n```\n\n## MacOS\n\n```\nupload_protocol = arduino\nupload_port = /dev/cu.usbserial-1140\nmonitor_port = /dev/cu.usbserial-1140\n```\n\n\u003e `brew install minicom` for [the serial console monitor](https://wiki.emacinc.com/wiki/Getting_Started_With_Minicom): `minicom -D /dev/cu.usbserial-14310` / [ch340g (esp8266)](https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/all) / [CP210x (esp32)](https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers?tab=downloads)\n\nairrohr esp8266:\n\n```\n      +-o USB2.0-Serial@14410000  \u003cclass AppleUSBDevice, id 0x100009ab2, registered, matched, active, busy 0 (1 ms), retain 15\u003e\n```\n\n### airrohr\n\n* [Flashing tool](https://github.com/opendata-stuttgart/airrohr-firmware-flasher)\n* [Linux drivers](https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/linux)\n\n## Arduino boards\n\n### [Arduino Pro Mini atmega328 Board 5V 16M Compatible Nano](https://store.arduino.cc/arduino-pro-mini) @ 16 MHz\n\n\u003e [platformio: Arduino Pro or Pro Mini ATmega328 (5V, 16 MHz) (`pro16MHzatmega328`)](https://docs.platformio.org/en/latest/boards/atmelavr/pro16MHzatmega328.html)\n\n\u003e **LED: 13**. There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.\n\n![](https://live.staticflickr.com/8252/8572012276_80391d0393_o_d.png)\n\nUsing USB2TT_004 converter to program (RX/TX pins needs to be crossed):\n\n```\n# avrdude -v -v -p m328p -n  -c arduino -P /dev/ttyUSB0  -b 57600 2\u003e\u00261  | tail  -n12\navrdude: Device signature = 0x1e950f (probably m328p)\navrdude: safemode: lfuse reads as 0\navrdude: safemode: hfuse reads as 0\navrdude: safemode: efuse reads as 0\n\navrdude: safemode: lfuse reads as 0\navrdude: safemode: hfuse reads as 0\navrdude: safemode: efuse reads as 0\navrdude: safemode: Fuses OK (E:00, H:00, L:00)\n\navrdude done.  Thank you.\n```\n\n`platformio.ini`\n\n```ini\n[env:pro16MHzatmega328]\nplatform = atmelavr\nboard = pro16MHzatmega328\nframework = arduino\nboard_build.f_cpu = 16000000L\n\n; Serial Monitor options\nmonitor_speed = 115200\n\n; avrdude  -c foo\nupload_protocol = arduino\nupload_port = /dev/ttyUSB0\n```\n\n\u003e **Remember to press RESET button on the board** before starting the upload. When the IDE is waiting for the programming to start, release the RESET button.\n\n\n[Fuse bits](http://eleccelerator.com/fusecalc/fusecalc.php?chip=atmega328p\u0026LOW=00\u0026HIGH=00\u0026EXTENDED=00\u0026LOCKBIT=FF) - external clock\n\n\u003e **Arduino**: select `Arduino Nano` as board and `ATmega328P (old bootloader)` as processor. This will force slower baud rate when programming.\n\n### [Mini ATTINY85 Micro USB Development Board for Digispark Kickstarter](https://irishelectronics.ie/epages/950018241.sf/en_IE/?ObjectID=5295918)\n\nhttps://www.electroschematics.com/learn-to-use-attiny85-usb-mini-development-board/\n\n![](https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/i/0995f7a6-730b-48d0-8612-c4408d15e84d/dc7h4n3-51e6389c-5f86-4fb2-a7ad-34f75f672003.png)\n\n```\n# avrdude -v -v -c usbasp-clone -p t85 -n 2\u003e\u00261 | tail  -n12\navrdude: Device signature = 0x1e930b (probably t85)\navrdude: safemode: lfuse reads as E1\navrdude: safemode: hfuse reads as DD\navrdude: safemode: efuse reads as FE\n\navrdude: safemode: lfuse reads as E1\navrdude: safemode: hfuse reads as DD\navrdude: safemode: efuse reads as FE\navrdude: safemode: Fuses OK (E:FE, H:DD, L:E1)\n\navrdude done.  Thank you.\n```\n\n[Fuse bits](http://eleccelerator.com/fusecalc/fusecalc.php?chip=attiny85\u0026LOW=E1\u0026HIGH=DD\u0026EXTENDED=FE\u0026LOCKBIT=FF)\n\nAfter burning bootloader:\n\n```\navrdude: Device signature = 0x1e930b (probably t85)\navrdude: safemode: lfuse reads as 62\navrdude: safemode: hfuse reads as DF\navrdude: safemode: efuse reads as FF\n\navrdude: safemode: lfuse reads as 62\navrdude: safemode: hfuse reads as DF\navrdude: safemode: efuse reads as FF\navrdude: safemode: Fuses OK (E:FF, H:DF, L:62)\n```\n\n[Fuse bits](http://eleccelerator.com/fusecalc/fusecalc.php?chip=attiny85\u0026LOW=62\u0026HIGH=DF\u0026EXTENDED=FF\u0026LOCKBIT=FF) - internal  8 MHz clock, divided internally by 1 MHz\n\n\nBoard manager URLs:\n\n```\nhttp://digistump.com/package_digistump_index.json\nhttps://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json\n```\n\nBlink:\n\n```c\nvoid setup() {\n pinMode(1, OUTPUT);\n}\n\n\nvoid loop() {\n  while(1) {\n   digitalWrite(1, HIGH);\n   delay(200);\n   digitalWrite(1, LOW);\n   delay(200);\n  }\n}\n```\n\nhttps://electronics.stackexchange.com/a/216233 - Arduino programming directly via USB\n\n## Arduino programmers\n\n### USB2TT_CO4 from homsun-ic.com\n\n```\n$ sudo modprobe ch341\n\n$ sudo dmesg -H\n...\n[  +0,149280] usb 1-2: New USB device found, idVendor=1a86, idProduct=7523, bcdDevice= 2.64\n[  +0,000006] usb 1-2: New USB device strings: Mfr=0, Product=2, SerialNumber=0\n[  +0,000003] usb 1-2: Product: USB Serial\n[  +0,001315] ch341 1-2:1.0: ch341-uart converter detected\n[  +0,000505] usb 1-2: ch341-uart converter now attached to ttyUSB0\n\n$ sudo -i\n# cat /dev/urandom \u003e /dev/ttyUSB0\n\n# the led should blink\n\n```\n\nConnect:\n\n```\n     usb2ttl    arduino pro mini\n     GND \u003c--------\u003e GND\n     RXD \u003c--------\u003e TXD\n     TXD \u003c--------\u003e RXD\n     5V  \u003c--------\u003e VCC\n```\n\n\n### [USBasp](https://irishelectronics.ie/USB-ISP-AVR-Programmer-Adapter-51)\n\n```\n[kwi15 14:36] usb 1-1: new low-speed USB device number 51 using xhci_hcd\n[  +0,154185] usb 1-1: New USB device found, idVendor=16c0, idProduct=05dc, bcdDevice= 1.02\n[  +0,000007] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0\n[  +0,000003] usb 1-1: Product: USBasp\n[  +0,000003] usb 1-1: Manufacturer: www.fischl.de\n```\n\n![](https://raw.githubusercontent.com/macbre/electronics/master/pictures/IMG_20200419_164215.png)\n\n\n## ESP8266 NodeMCU Pinout\n\n![](https://lastminuteengineers.com/wp-content/uploads/arduino/ESP-12E-Development-Board-ESP8266-NodeMCU-Pinout.png)\n\n* `VV` pin provides 5V from USB port\n* `D0` pin (GPIO16) maps to pin 16 in Arduino\n* for SPI use GPIO12, 13 and 14 - https://arduino-esp8266.readthedocs.io/en/2.4.0-rc1/libraries.html#spi\n\n### platformio.ini\n\n```\n[env:nodemcuv2]\nplatform = espressif8266\nboard = nodemcuv2\nframework = arduino\nupload_speed = 2000000\nupload_port = /dev/ttyUSB0\nmonitor_port = /dev/ttyUSB0\nmonitor_speed = 115200\nlib_deps = \n        adafruit/DHT sensor library@^1.4.1\n        adafruit/Adafruit Unified Sensor@^1.1.4\n        jfturcot/SimpleTimer@0.0.0-alpha+sha.b30890b8f7\nbuild_flags = \n        -DDEBUG_ESP_PORT=Serial\n        -DDEBUG_ESP_HTTP_CLIENT\n        -DDEBUG_ESP_HTTP_SERVER\n        -DDEBUG_ESP_CORE\n        -DDEBUG_ESP_WIFI\n```\n\n## ATTINY85 - DIGISPARK REV.3\n\n![](https://makershop.ie/image/cache/catalog/p/00044/tiny-85-digispark-kickstarter-micro_main-0-550x550.jpg.webp)\n![](https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/i/0995f7a6-730b-48d0-8612-c4408d15e84d/dc7h4n3-51e6389c-5f86-4fb2-a7ad-34f75f672003.png)\n\nhttps://docs.platformio.org/en/latest/boards/atmelavr/digispark-tiny.html\n\n\u003e Update platformio before programming the device (PIO Home \u003e Updates \u003e Update all).\n\n```ini\n[env:digispark-tiny]\nplatform = atmelavr\nboard = digispark-tiny\n\n; change microcontroller\nboard_build.mcu = attiny85\n\n; change MCU frequency\nboard_build.f_cpu = 16000000L\n\n; via external UART/USB converter\nmonitor_port = /dev/ttyUSB0\nmonitor_speed = 9600\n\nlib_deps = featherfly/SoftwareSerial@^1.0\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmacbre%2Felectronics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmacbre%2Felectronics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmacbre%2Felectronics/lists"}