SiliconWit.COM SiliconWit.COM
Joseph Disamalu's avatar

Joseph Disamalu

Mechatronic Engineer | AI & IoT for Renewable Energy

Mechatronic engineer and researcher working at the intersection of AI, IoT, and renewable energy, with a background in semiconductor process engineering and quality assurance.

About Joseph Disamalu

Joseph Disamalu is a Mechatronic Engineering graduate and researcher specializing in the integration of AI and IoT within renewable energy infrastructures. With professional experience in semiconductor process engineering and quality assurance, he brings a specialized focus on system and electronics reliability to his research. He is dedicated to advancing R&D by bridging the gap between hardware architecture and intelligent diagnostic frameworks.

Focus

⚙️ Mechatronics Engineering
📡 AI & IoT for Renewable Energy
⚙️ Semiconductor Process Engineering
System & Electronics Reliability

📚 Education Contributions

Embedded Programming Atmega328p

Integrated Stepper Motor and Motion Control

Build a single-axis CNC-style stepper motor controller on the ATmega328P. Parse simple G-code commands over UART, generate precision step pulses with Timer1, home with a limit switch interrupt, read a jog potentiometer via ADC, and store calibration in EEPROM.

Published: March 12, 2026

stepper-motorcncmotion-controlg-codea4988capstoneatmega328pavr

Power Management, Watchdog, and Sleep Modes

Master ATmega328P low-power techniques including all six sleep modes, watchdog timer configuration, BOD disable, and EEPROM storage. Build a battery-powered door open alert that sleeps in power-down mode, wakes on a magnetic reed switch, and counts events in non-volatile memory.

Published: March 12, 2026

power-managementsleep-modeswatchdogbatterylow-powereepromatmega328pavr

ADC and Analog Signal Acquisition

Master the ATmega328P 10-bit ADC with register-level configuration. Build a light-tracking indicator using photoresistors that displays a real-time bar graph on an OLED, covering reference voltages, free-running mode, and noise reduction.

Published: March 5, 2026

adcanalogsignal-acquisitionphotoresistoratmega328pavr

I2C Bus and Sensor Integration

Implement the I2C (TWI) protocol on ATmega328P from register level. Build a mini weather station that reads temperature, humidity, and pressure from a BME280 sensor and displays the data on an OLED screen.

Published: February 26, 2026

i2ctwibme280sensorweather-stationatmega328pavr

SPI Protocol and Peripheral Interfacing

Master the ATmega328P SPI peripheral by writing an SSD1306 OLED driver from scratch. Display a real-time clock on a 128x64 OLED, covering clock polarity, phase, data framing, and display buffer management.

Published: February 19, 2026

spioledssd1306protocolperipheralatmega328pavr

UART Serial Communication

Implement UART from scratch on the ATmega328P using USART registers. Build a temperature logger that reads an NTC thermistor, formats CSV data, and streams it to a PC for plotting.

Published: February 12, 2026

uartserialusartcommunicationatmega328pavrthermistor

Interrupts and Event-Driven Design

Learn ATmega328P external interrupts (INT0/INT1), pin-change interrupts, and timer interrupts. Build a reaction time tester that measures your response in milliseconds using ISR-driven timing.

Published: February 5, 2026

interruptsisrevent-drivenatmega328pavrpin-change

Timer/Counter Fundamentals

Explore ATmega328P Timer0, Timer1, and Timer2 in Normal, CTC, and PWM modes. Build a tunable tone generator that produces precise audio frequencies using timer compare match interrupts and a piezo buzzer.

Published: January 29, 2026

timerscounterspwmctcprescaleratmega328pavr

GPIO Registers and Digital I/O

Master ATmega328P GPIO registers (DDRx, PORTx, PINx) through direct bit manipulation. Build an electronic dice that displays a random pattern on LEDs when you press a button, with proper hardware debouncing.

Published: January 22, 2026

gpioregistersdigital-iobit-manipulationatmega328pavr

AVR Toolchain and Bare-Metal C Setup

Set up a complete AVR development environment with avr-gcc, avrdude, and Makefiles. Program an Arduino Nano directly in C without the Arduino IDE. Build a Morse code beacon that blinks your name on an LED.

Published: January 15, 2026

avrtoolchainbare-metalc-programmingmakefileavrdudeavr-gccarduino-nano

Contribution Stats

20
Authorship SSU
2026
Member Since
Kenya
Location
10
Education Contributions

Connect & Follow