enkilo
Newbie

I have found these two underrated but almost unknown projects "picstick_25k50" and "USB-Stack"
They're easily manufactured with low part count and can be made by soldering novices.
It is the cheapest possible opensource microcontroller I know of. The circuit board is small, made with through-hole parts and can be used on breadboard, using wire-wrap or with JST connectors which makes it ideal for experimenting and building sophisticated machines.
The PIC18F25K50 is a very capable $2 microcontroller with builtin USB, an internal oscillator up to 64MHz and many analog peripherals.
The cost for a small lot of 20 picsticks is as low as $5 per unit. Because of the internal oscillator a quartz can be omitted. The same goes for the costly USB plug and cable because the USB connector is directly on the print board.
There are two bootloaders for it. One is from the Pinguino IDE, an opensource programming environment close and compatible to Arduino. The other makes the "picstick" appear as USB thumb drive to which you can drag & drop a new program as a .HEX file. For this mode the button needs to be pressed while plugging it into the USB. When programmed, the picstick can then be either powered by USB or independently from a 3.7V lithium battery.
libpicp and pictest are two skeleton projects, for writing software libraries and programs compatible across a range of PIC12/16/18 and across the sdcc and the xc8 compiler.
from the author of the USB-uC bootloader is also the USB-Stack project which contains templates for USB devices like MIDI and HID using xc8 and MPLAB IDE.
Hardware layouts
github.com
OSH Park PCB service
oshpark.com
Pinguino IDE and bootloader
github.com
Hackaday article about the USB stack for PIC
hackaday.io
USB Stack for making picstick appear as USB device (for MIDI etc.)
github.com
PIC18F25K50 datasheet
Library for different PICs (16F876A, 18F252, ....)
github.com
Test programs for different PICs
github.com
They're easily manufactured with low part count and can be made by soldering novices.
It is the cheapest possible opensource microcontroller I know of. The circuit board is small, made with through-hole parts and can be used on breadboard, using wire-wrap or with JST connectors which makes it ideal for experimenting and building sophisticated machines.
The PIC18F25K50 is a very capable $2 microcontroller with builtin USB, an internal oscillator up to 64MHz and many analog peripherals.
The cost for a small lot of 20 picsticks is as low as $5 per unit. Because of the internal oscillator a quartz can be omitted. The same goes for the costly USB plug and cable because the USB connector is directly on the print board.
There are two bootloaders for it. One is from the Pinguino IDE, an opensource programming environment close and compatible to Arduino. The other makes the "picstick" appear as USB thumb drive to which you can drag & drop a new program as a .HEX file. For this mode the button needs to be pressed while plugging it into the USB. When programmed, the picstick can then be either powered by USB or independently from a 3.7V lithium battery.
libpicp and pictest are two skeleton projects, for writing software libraries and programs compatible across a range of PIC12/16/18 and across the sdcc and the xc8 compiler.
from the author of the USB-uC bootloader is also the USB-Stack project which contains templates for USB devices like MIDI and HID using xc8 and MPLAB IDE.
Hardware layouts
GitHub - kaza007/picstick_25k50: Pinguino compatible USB stick with the Microchip PIC18F25K50
Pinguino compatible USB stick with the Microchip PIC18F25K50 - GitHub - kaza007/picstick_25k50: Pinguino compatible USB stick with the Microchip PIC18F25K50
OSH Park PCB service
OSH Park ~
pinguino-bootloaders/Bootloader_v4.14_18f25k50_INTOSC.hex at master · PinguinoIDE/pinguino-bootloaders
Pinguino bootloaders source code and stand-alone uploaders - pinguino-bootloaders/Bootloader_v4.14_18f25k50_INTOSC.hex at master · PinguinoIDE/pinguino-bootloaders
Hackaday article about the USB stack for PIC

PIC16 & PIC18 USB Stack
Back in early 2017 I decided I wanted to know how to use the USB peripheral in PIC microcontrollers. I looked through microchip's MLA USB examples and found the API was easy to use, but the underlying code was not easy to follow (lots of files to keep track of). So I decided it would be an...

USB Stack for making picstick appear as USB device (for MIDI etc.)
GitHub - johnnydrazzi/USB-Stack: Device USB Stack for PIC16 & PIC18
Device USB Stack for PIC16 & PIC18. Contribute to johnnydrazzi/USB-Stack development by creating an account on GitHub.
Library for different PICs (16F876A, 18F252, ....)
GitHub - rsenn/libpicp: Portable Microchip PIC library
Portable Microchip PIC library. Contribute to rsenn/libpicp development by creating an account on GitHub.
Test programs for different PICs
GitHub - rsenn/pictest: PIC16F* framework for SDCC/HI-TECH/XC8
PIC16F* framework for SDCC/HI-TECH/XC8. Contribute to rsenn/pictest development by creating an account on GitHub.