Arduino

timers
https://moodle.bulme.at/pluginfile.php/82927/mod_resource/content/0/arduino/ArduinoTimers.pdf rotary encoder archive ref. by usefulard code spenceKonde github and mazurov rotary without ISR https://www.gammon.com.au/timers https://www.youtube.com/watch?v=awS93t-uX4Q https://www.youtube.com/watch?v=3kCWRyYfLDA In this video compare match interrupt using ATmega328 timer1 is explained and used to toggle a LED. https://www.youtube.com/watch?v=cAui6116XKc https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf https://github.com/PaulStoffregen/TimeAlarms set alarm times. https://github.com/JChristensen/Timer/blob/master/examples/pin_high_10_mins/pin_high_10_mins.pde http://www.doctormonk.com/2012/01/arduino-timer-library.html

Serial lib
https://github.com/lexus2k/tinyproto Using this library you can easy implement data transfer between 2 microcontrollers or between microcontroller and pc via UART, SPI, I2C or any other communication channels. You don't need to think about data synchronization between points. sending structs arduino to python https://github.com/grbl/grbl ''preferred way of doing serial with ISR interrupts(Mike Acton, hardware your platform not software). https://github.com/harmsm/PyCmdMessenger master slave between python and arduino https://archive.is/QAOBP serial coms RS485 See Jan Axelson article. arduino irrigation RS485 with state machines. Jabelone links to three medium.com articles with three github repos. Raspberry pi spidev library https://www.hackster.io/ansh2919/serial-communication-between-python-and-arduino-e7cce0 CAN bus can multi master communication.

github
https://github.com/bitbank2 follows cbm80amiga,CoretechR,andyhighnumber,JoshuaAGtz and simondlevy. See his Time of Flight Lidar code. https://github.com/bitbank2/ss_oled OLED, light enough to run on an ATtiny85 https://github.com/bitbank2/Pi_Pico_C_Projects pi pico projects. https://github.com/bitbank2/nrf24_test_rig nrf24, oled on promini. https://github.com/JosueAGtz pico, arduino for tindie.com display array controller https://github.com/cbm80amiga 216 followers, over 60 c coding projects for displays https://github.com/CoretechR, Keybon is a macro keyboard with configurable layouts and functions. Integrated into each of its nine tactile buttons is a 0.66” OLED screen. Depending on which app is active on the connected computer, Keybon switches to the suitable key layout thanks to its companion software. https://github.com/andyhighnumber/Attiny-Arduino-Games Interrupt handlers etc. https://github.com/bitbank2/Nano_33_Gamepad he purpose of this code is to use BLE HID gamepads with the Arduino Nano 33 BLE. SPI LCD/OLED library which can be built for Arduino and Linux https://github.com/DavidLeithauser/remote-sensors-Arduino Arduino code from the book, Remote Sensor Monitoring by Radio with Arduino: Detecting Intruders, Fires, Flammable and Toxic Gases, and Other Hazards at a Distance https://github.com/NicoHood/HID This project(1.6kstars) went through a lot of phases and has now reached a new Arduino USB-Core Library with a lot of new functions like extended HID. It also supports HoodLoader2 version 1 is no longer supported). The idea is to enable enhanced USB functions to almost all standard' Arduino boards.

ethernet shield
https://www.youtube.com/watch?v=eoiuhPxCcM4 UDP This tutorial presents a step by step demonstration of how to transfer data between Python and Arduino using a simple UDP client server setup. The arduino is the server, and Python is the client. We demonstrate using a BMP180 pressure sensor. You can find the full lesson on our WEB site at: http://www.toptechboy.com/tutorial/python-with-arduino-lesson-17-sending-and-receiving-data-over-ethernet/

interrupts
http://www.toptechboy.com/arduino/lesson-30-advanced-software-interrupt-techniques-for-reading-serial-data-with-arduino/ and https://github.com/PaulStoffregen/TimerOne https://github.com/PaulStoffregen/TimerThree timerthree http://www.fourwalledcubicle.com/AVRArticles.php

server
https://www.youtube.com/watch?v=pyKPivef3ks https://medium.freecodecamp.org/how-to-make-your-own-python-dev-server-with-raspberry-pi-37651156379f https://towardsdatascience.com/python-webserver-with-flask-and-raspberry-pi-398423cc6f5d

gobot
https://gobot.io/ Gobot is a framework for robots, drones, and the Internet of Things (IoT), written in the Go programming language

Stepper code
https://github.com/osefrance/SolarConcentrator/blob/master/Automation/heliostat/P21/SeguiLSol25/SeguiLSolOS.ino https://github.com/grbl/grbl/blob/90ad129ad262bd6e785cf11b8387a1c376cdd11a/grbl/config.h   // Creates a delay between the direction pin setting and corresponding step pulse by creating // another interrupt (Timer2 compare) to manage it. The main Grbl interrupt (Timer1 compare) // sets the direction pins, and does not immediately set the stepper pins, as it would in   // normal operation. The Timer2 compare fires next to set the stepper pins after the step // pulse delay time, and Timer2 overflow will complete the step pulse, except now delayed // by the step pulse time plus the step pulse delay. (Thanks langwadt for the idea!) // NOTE: Uncomment to enable. The recommended delay must be > 3us, and, when added with the // user-supplied step pulse time, the total time must not exceed 127us. Reported successful // values for certain setups have ranged from 5 to 20us. // #define STEP_PULSE_DELAY 10 // Step pulse delay in microseconds. Default disabled. define DWELL_TIME_STEP 50 // Integer (1-255) (milliseconds) from Boat code with ramping the stepper gradually github automated boat reddit pid analysis using 2 wheel reddit xvjiarui githbut code

serial
https://askubuntu.com/questions/58119/changing-permissions-on-serial-port The issue with the permissions for /dev/ttyACM0 can be permanantly solved by adding yourself to the dialout group. You will have to logout and then log back in before the group change is recognized. You can do this with sudo usermod -a -G dialout terrik if terrik is your username. https://unix.stackexchange.com/questions/18796/how-to-apply-changes-of-newly-added-user-groups-without-needing-to-reboot. Ctrl shift m shortcut displays serial monitor. http://playground.arduino.cc/Interfacing/LinuxTTY https://learn.adafruit.com/usbtinyisp http://forum.arduino.cc/index.php/topic,73748.0.html loopback test if not uploading from http://forum.arduino.cc/index.php?topic=38838.msg286321#msg286321 http://blog.spitzenpfeil.org/wordpress/projects/ various diy projects http://www.engbedded.com/fusecalc fuse settings.

youtube channels
https://www.youtube.com/watch?v=UW6IMeotnWw&list=RDCMUC8Ob-HnnmhlgSv5Vs_i32TQ&index=3 Ralph Bacon

pi pico
github birchjd

Debugging
debugging #ifdefs segger jlink

tiny
https://www.seeedstudio.com/w600.html The W600 module features an ARM Cortex-M3 chip running freeRTOS. from https://hackaday.com/2019/01/28/tiny-cheap-arm-boards-get-wifi/

links
Optical encoders AS5048 https://maker.pro/ https://www.seeedstudio.com/blog/2019/11/20/best-single-board-computers-of-2019/ SBC reviews, pocket beagle bone etc. AtmelMicro, C coding , stm32blackpill, Keyboard RS485