Welcome to my little shop of art and stuff where everything is free for non-commercial use. In case you find something useful proper credit will be greatly appreciated. I am an occasional hobbyist in the field of drawing/painting and somewhat more active in electronics. Both aspects are presented in the following pages.

The Art Gallery features experiments using ballpoint pens, dry media and some oil paint.

The Electric Circuits page lists a number of excerpts, mostly elementary and others partly drawn from earlier work in the field of analog electronics that overall might be of some educational value.

The DemCalc machines are more recent in the line of computers.They are based, in one form or another, on RPN structures and especially for the DemCalcProg implementation the core supports nested expressions and control structures using recursion. Use IDE 1.8.13 to compile the source.

The DemUino machines are no longer supported.

Nick Gammon's High-voltage programmer for AVR chips

Recover your bricked atmega328p by changing the fuses.


If you don't have available a p-mosfet for the RESET circuit you can use a PNP BJT such as the complementary of 2N3904 - the 2N3906 - driven with a 10K or smaller resistor from the collector of 2N3904 to its base. The small resistor will ensure saturation of the CE junction; also, you will need a load of a few KOhms (I used 2.2K - use 3.3K,4.7K etc) from its collector to GND. Its collector also connects to the RESET pin of the target.

Instead of the 2N3904-6, I used a pair of BC546-BC556 BJT transistors.

DemCalcLED644 v.5.241e

a combination of DemCalcProg and DemCalcBC


  • Based on an atmega644p @8MHz, 8x7-segment LED display, a 4x4 keypad, an SD card interface and an 18650 battery with charger.

  • Programmable expressions. A total of 8 calculator key maps including letters A...Z and symbols. RPN functionality with variable stack depth and number of tokens. Nested expressions to memory limit. Full avr-libc functions with real and complex numbers as well as limited support for BigNumbers. Transfer Function computation in s/z/real domains, DFT and convolution. SD functionality for storing / recalling programs and data.

  • Standard and scientific notation. User defined system settings.

  • Low battery drain operating with 13mA typical at 4V. Auto shutdown to less than 1uA.

Use IDE 1.8.13 for compiling.

PDF document




  • atmega328p @ 4MHz

  • 8 x 7-segment leds

  • User defined system settings.

  • coin cell battery operation

  • Low battery drain <2mA min.

  • Auto shutdown less than 1uA


version 2.84 with dynamic buffers and User Defined Variables

    • Programmable expressions based on avr-libc functions

    • Single key operators plus explicitly typed commands using alphabet and symbols

    • Extensive programming using floats and control structures.- more than 80 operators

    • RPN stack based math and functionality with variable stack depth and tokens

    • Dynamic program allocation using linked list and nested RPN expressions and loops to memory limit.

    • 1440 bytes free by default for programming expressions (dynamic buffers in version 2)

    • Standard and scientific notation.

    • Transfer Function computation in s/z/real domains, DFT and convolution.

    • use EEPROM for programs and data

    • User defined fonts and system settings.

    • 5 calculator key maps + 3 auxiliary for letters A...Z and symbols

Use IDE 1.8.13 for compiling.

v2.84 PDF documentation

v2.84 SOURCE & ALL



ver 5.64

    • A total of 5 key maps - single key operation - 1450 bytes free RAM

    • A mixture of both BigNumber and avr-libc functions.

    • Scientific and programmer's operations.

    • Stack based functionality with X,Y, Z & T registers.

    • Standard and scientific notation up to 14 digits.

    • Standard notation for BigNumbers up to 35 digits.

    • Complex number support using floats.

    • User defined system settings.

    • Low battery drain operating with 2mA min. for hw3

    • Auto shutdown to less than 1uA for hw3

Use IDE 1.8.13 for compiling.

v5.64 PDF documentation

v5.64 SOURCE & ALL

Programmable fonts used by DemCalcProg machines

Examples for DemCalcBC


version 3.6

  • Uses a single atmega328p@8MHz and an LM386 amplifier

  • Plays 8bit PCM uncompressed raw music data

  • 8-bit R-2R DAC, 4 navigation keys, 8x2 LCD, 0.5W amp

  • 2xAAA batteries or USB operation and charging

  • 8, 11, 16 and 22 KSPS sample rates

  • clock and alarm functionality

  • Records from external source at 8, 11 and 16KSPS

  • DDS for low frequency audio tones

If you have comments or questions you can either contact me at biromaster@yahoo.com or if you have a google account you can first sign in and then leave a comment at the bottom of the corresponding page.

Thanks for visiting and I hope you enjoy your stay.