Custom volume knob - Arduino Leo
Wednesday, 15 September, 2021
60 comments
I got bored, so I made another custom volume knob that would be a nice add-on for my mech keyboard. And also great for dedicated ‘talk to speak’ buttons for teamspeak3. I actually made this a while ago, but haven’t had a chance to write a post about this since I didn’t finish the code, mostly just enough for it to work just for me.
[Read More…]
I got bored, so I made another custom volume knob that would be a nice add-on for my mech keyboard. And also great for dedicated ‘talk to speak’ buttons for teamspeak3. I actually made this a while ago, but haven’t had a chance to write a post about this since I didn’t finish the code, mostly just enough for it to work just for me.
[Read More…]
Install Android Radio Head for VW Golf MK5
Sunday, 28 March, 2021
1 comment
Just some random electronic stuff that I did a while ago with my VW golf mk5
[Read More…]
Just some random electronic stuff that I did a while ago with my VW golf mk5
[Read More…]
Yet another T12 Soldering Station
Sunday, 29 November, 2020
2 comments
I built one, like 2 years ago, but didn’t have time to write a blog post about it. Up until now when I have to make another one for my friend, I decide it’s time to do documentation about it. It is pretty much straight forward except the T12 tips I bought wasn’t the same that I had before. Then the calibration process begins…
I built one, like 2 years ago, but didn’t have time to write a blog post about it. Up until now when I have to make another one for my friend, I decide it’s time to do documentation about it. It is pretty much straight forward except the T12 tips I bought wasn’t the same that I had before. Then the calibration process begins…
UV Light box timer for PCB photo-resisting using atmega8
Monday, 27 May, 2019
4 comments

I have a few atmega8 laying around, bought over ten years ago. Powered by, pretty much, the same 8bit MCU like what’s in Arduino UNO, except, it has only 8k of flash and 1k of ram. It is, kinda, on a par with attiny85. There is only one catch, it doesn’t support PCINT like atmega328 does. An attiny85 would do this job perfectly, of course I would have to use i2c adapter for LCD0802 but, meh.
[Read More…]
I have a few atmega8 laying around, bought over ten years ago. Powered by, pretty much, the same 8bit MCU like what’s in Arduino UNO, except, it has only 8k of flash and 1k of ram. It is, kinda, on a par with attiny85. There is only one catch, it doesn’t support PCINT like atmega328 does. An attiny85 would do this job perfectly, of course I would have to use i2c adapter for LCD0802 but, meh.
[Read More…]
Understanding LED matrix scanning method
Tuesday, 9 April, 2019
Add a comment
This entry is for someone that having basic electronics knowledge and want to understand how to control led matrix using Arduino UNO.
How do you control a led matrix?
Lets start with the basic: controlling 1 row of single-color LEDs
[Read More…]
This entry is for someone that having basic electronics knowledge and want to understand how to control led matrix using Arduino UNO.
How do you control a led matrix?
Lets start with the basic: controlling 1 row of single-color LEDs
[Read More…]
Turn off monitor - C++
Thursday, 14 March, 2019
Add a comment

My brother asked me how can he turn off the monitor. He showed me a PowerShell script
start powershell (Add-Type '[DllImport(\"user32.dll\")]^public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::SendMessage(-1,0x0112,0xF170,2); exit
My reaction was “what the heck, seriously you can do that with PowerShel, like, invoke a function in a DLL file just like that?!”.
[Read More…]
My brother asked me how can he turn off the monitor. He showed me a PowerShell script
start powershell (Add-Type '[DllImport(\"user32.dll\")]^public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::SendMessage(-1,0x0112,0xF170,2); exit
My reaction was “what the heck, seriously you can do that with PowerShel, like, invoke a function in a DLL file just like that?!”.
[Read More…]
Programmatically upload code - atmega32u4 - VC++
Sunday, 3 March, 2019
Add a comment
I had a small project that needed to deliver firmware for atmega32u4 for my customers. And of course, they aren’t tech-savvy like me. It was impossible to guide them to use arduino to flash directly using source code. More importantly, I don’t want to share my source code. There is only one option for me that build an avrdude wrapper that detects atmega32u4 and run avrdude automatically. This tutorial is about uploading firmware to atmega32u4 programmatically using AVR109 app note in Visual Studio.
[Read More…]
I had a small project that needed to deliver firmware for atmega32u4 for my customers. And of course, they aren’t tech-savvy like me. It was impossible to guide them to use arduino to flash directly using source code. More importantly, I don’t want to share my source code. There is only one option for me that build an avrdude wrapper that detects atmega32u4 and run avrdude automatically. This tutorial is about uploading firmware to atmega32u4 programmatically using AVR109 app note in Visual Studio.
[Read More…]
PC watercooler - arduino water flow status
Friday, 3 August, 2018
Add a comment
Watercooling system on your desktop PC is kind of look cool. But of course, it concerns a lot of precautions.
Water tight
First of all, make sure it is water tight, meaning no leaking at all. You never know if your watercooling is leaking. It happened to me, twice, in the past about 14 years ago. You know, water and electricity they don’t like each other. A few drops of water on motherboard or video card could result in tragedy.
The picture on the left is just click-bait. It’s not mine, it’s from Thermaltake advertisement
Watercooling system on your desktop PC is kind of look cool. But of course, it concerns a lot of precautions.
Water tight
First of all, make sure it is water tight, meaning no leaking at all. You never know if your watercooling is leaking. It happened to me, twice, in the past about 14 years ago. You know, water and electricity they don’t like each other. A few drops of water on motherboard or video card could result in tragedy.
The picture on the left is just click-bait. It’s not mine, it’s from Thermaltake advertisement
Arduino Timer / PWM cheat sheet
Tuesday, 10 July, 2018
4 comments
Arduino Timer
Arduino UNO (ATmega328p) has three 8bit timers
Timer0 - used for millis() micros() delay()… and is on pin 5, 6
Timer1 - 16bit timer is on pin 9, 10
Timer2 - 8bit timer is on pin 3, 11
Arduino Timer
Arduino UNO (ATmega328p) has three 8bit timers
Timer1 - 16bit timer is on pin 9, 10
Timer2 - 8bit timer is on pin 3, 11
Lineage 2 - Auto Clicker
Friday, 13 October, 2017
3 comments
WHAT IS AC2USB
- Auto Clicker at hardware level that as small as pen drive
- Detect as standard HID keyboard/mouse
- Controllable by custom software, by timer or scripts
- Automate key press for chat, combo or just repeat
- Automate mouse movement and click
- By pass all smartguard and alike
- Customized for use with Lineage2
WHAT IS AC2USB
- Auto Clicker at hardware level that as small as pen drive
- Detect as standard HID keyboard/mouse
- Controllable by custom software, by timer or scripts
- Automate key press for chat, combo or just repeat
- Automate mouse movement and click
- By pass all smartguard and alike
- Customized for use with Lineage2