Posts

Creating Fake SMS with Android

Image
I was curious about how challenging it would be to create fake SMS messages, so I decided to make a small research. I came across a straightforward app that allows users to create fake SMS messages. The app's interface is user-friendly, letting you set the message type, date, and time. However, to use this app, you need to set it as the default messaging application. At this point, I was confident that it was possible to achieve this without root permissions. Initial Exploration My first approach was to send a fake intent to simulate a new SMS arrival. Despite my efforts, this method didn’t work. Many sources suggested using the android.provider.Telephony.SMS_DELIVER intent action, which is the system intent action for broadcasting SMS. However, starting from Android 4.4 (KitKat), only the default messaging app can receive this intent, and broadcasting it is restricted to system applications. Additionally, permissions for reading and writing SMS are restricted to the default messa...

Self playable game on smartphone

Image
Hardware I recently assembled a Lego phone holder that rotates along the Y-axis (the longer side of the phone). The holder's end is attached to a servo motor, which is connected to an Android smartphone via USB OTG through a motor module. This motor module can control up to 24 servo motors and operates at 5 volts. Software The motor module has its own built-in protocol, which handles rotation and speed, with parameters separated by newline characters. The second part of the project involved developing an Android application to communicate with the servo module using this serial protocol. I based the application on an example of USB serial communication with Arduino, adapting it to work with my device. Game For this project, I chose a game I developed about a year ago. It's a simple game where the accelerometer controls a rocket that must navigate through gates. Tilting the device left or right adjusts the rocket's position, and the goal is to pass through as many gates as p...

Wall Clock Made with AVR MCU and LED Display

Image
Idea The goal of this project was to explore using a numeric LED display with a microcontroller (MCU). To make it more engaging, I decided to create a wall clock that displays time both digitally and analogically. I chose the Atmega16L MCU for its 26 I/O pins—12 for the numeric display, 12 for the 2mm LEDs, and 2 for the buttons. The clock features two buttons: one to add hours and another to add minutes. The 2mm LEDs around the edge represent seconds, while the numeric display in the center shows hours and minutes. Display I sourced my display from eBay without a datasheet, but the pin configuration is typically similar across different displays. The four 7-segment digits are controlled by 12 I/O pins—each digit consists of 8 segments (7 for numbers and 1 for the dot). The remaining four pins are used as grounds for each digit. To illuminate all four digits, the MCU must rapidly switch between them. Timers Timers are fundamental counters in microcontrollers. The ATmega16 features two ...

Using a Proximity Sensor for Scrolling Documents

Image
What For Christmas, I treated myself to a Touchboard from Bare Conductive. This board features an Atmel ATMega32U4 microprocessor, 12 analog inputs, and 20 digital pins. Being part of the Arduino family, it’s compatible with the Arduino IDE, which makes it a versatile tool for various projects. The Touchboard comes with a unique conductive paint called "bare paint," which, when used with the analog inputs, allows you to create touch or proximity sensors. First Impressions When I first experimented with the proximity sensor, using it to adjust volume felt almost magical! I was impressed by the precision of the proximity detection. The SDK provides around 10 examples to get started, and the libraries are straightforward, allowing you to accomplish a lot with just a few lines of code. The board supports both MP3 and MIDI sound effects. MP3 files can be updated on a microSD card, while the MIDI mode offers over 100 musical instruments. Switching between MP3 and MIDI requires conn...

Programming the Atmel ATmega8L Microcontroller

Image
Introduction   In this article, I'll dive into hardware programming by working with a microcontroller (MCU). Having no prior experience with MCUs, this post will walk you through my learning process and project development. Getting Started   Based on a colleague's recommendation, I decided to use a USB-AVR programmer compatible with Atmel AVR microcontrollers. I ordered the USB-AVR programmer, an ATmega8L microcontroller, some resistors, LEDs, and a breadboard. For development, I prefer using IDEs due to their features like syntax highlighting and integrated build tools, which save time and resources. I chose Eclipse for this project. Setting up Eclipse for AVR programming involves installing the following libraries: gcc-avr : Compiler for Atmel AVR microcontrollers. binutils-avr : Cross-compiling version of GNU binutils. gdb-avr : GDB for debugging AVR binaries. avr-libc : C library for GCC on Atmel AVR microcontrollers. avrdude : Tool for transferring hex files onto the micr...

Sms Grocery List

Image
Widget with Grocery List Created from Received Messages Why? I often found myself with messages containing shopping lists that I wanted to keep track of while heading home. My initial idea was to create an invisible app that would read incoming messages and automatically add their content to Google Keep, displaying it in a widget. However, I discovered that Google Keep does not offer an API for third-party integration. As a result, I decided to develop an app with this functionality. What Did I Do? The application includes a receiver that captures all new messages. Once a message is received, the app scans for predefined keywords. You can configure multiple keywords to search for in incoming messages. Additionally, the app allows you to set up reminders, which will trigger notifications at a specific time of day when at least one message has been received. These settings can be found in the app's side menu under "Settings." The second key feature of the application is its...

Exploring Development for the Sony SmartWatch: First Edition

Image
Introduction In this post, we'll delve into the development for the first model of Sony Smart Watches. While the third edition is currently available, I recently had the chance to experiment with the original model. I picked up two Smart Watches at a local flea market for just 3 EUR each. However, they came without an adapter or wrist strap. Sony’s proprietary cable presented a challenge, but I managed to made my own using old USB cables. For anyone facing a similar issue, you only need two of the four pins on the cable: VCC (power) and ground. Setup Unlike common Android devices, there isn't a universal SDK for smartwatches. Each manufacturer provides their own SDK. To use official apps, you first need to install the "Smart Connect" app, which allows you to pair your watch with your device. After installation, you can download apps from the Google Play Store. Note that these apps won’t appear in the app list on the watch because they don't contain a runnable Acti...