Monday, February 19, 2018

Create a powerful Bluetooth based Network of Beacons

Beacons are not just for increasing sales or giving out more interactive physical environment to enhance user's experience. Beacons can be a powerful tool to detect patterns before a major catastrophe can happen resulting in the protection of properties and life.

A network of sensors for monitoring temperature and humidity, detect if an object has moved when should not have moved, an employee forgot to close the window or door, an employee stayed too long at the pantry or know how many customers checked a certain product are just a few of the useful data that can be collected with the networked beacons.  


The above figure shows all the necessary beacon types one will need to implement a networked beacons. 

Here are the actual images of the sensors and the gateway:

The Kit:(This is a great package to test a lot of use case scenarios. Available at olx.)

The Kit includes the following beacons(excluding the Apps Factory Beacon):

C7:

Size: 90 x 60 x 4 mm
Ibeacon Only
Disposable(Battery can not be replaced)
This is an ideal substitute to rfid badges
 E2:

Size: 72 x 72 x 18mm
Ibeacon + EddyStone
External ON/OFF switch
Battery can be replaced


E6:

Size: 42.5 x 23.5 x 5.3mm
Ambient Light Sensor
Battery can be replaced


G1(Gateway):

Size: 150 x 150 x 36mm
Bluetooth to Wifi Gateway
MicroUSB Power Input(5V1A)


I3:
Size: 72 x 45 x 22mm
Ibeacon Only
200m Range
Battery can be replaced



I7:
Size: 50 x 50 x 15mm
Ibeacon + EddyStone + Accelerometer
External On/Off Switch
Battery can be replaced

S1:

Size: 70.6 x 38 x 17.8mm
Ibeacon Only + EddyStone + Temperature + Humidity Sensor
Battery can be replaced


Apps Factory Beacon with Buzzer:


Wednesday, February 14, 2018

IT Company and Manpower Agency

An IT Company develops its own products and sells them to end users. They own the copyrights and their products are original.

A Manpower Agency recruits individuals and deploy them to their so called "client". These manpower agencies always dominate job sites and facebook groups for programmers.

There is a big question why manpower agencies name their companies as IT Companies to disguise themselves as IT Companies. A big question is why do they do this? This tactics originates from the USA and usually funded by the Chinese with Indians as their partners where ponzi schemes abounds.

I was lured into this because I was really in need of money and these scammers offers job with no interviews but offers no security but I was in it for the quick cash and I am not ignorant that these people are actually scammers they will say they are an IT Company which I dont believe or shoyld I say never believed at all. These are usually females walking all over the metro they easily fill in any available space like when you're eating at a mall and there is a vacant seat, 99% of the time, it will be filled up by a female recruiting or selling anything under the sun or when you ride an fx or jeepney, 99% of the passengers is always females. I am not a female hater I have just observed that their numbers is way too much to take. It is just too abnormal and vommiting. My mom does not go out much nor my relatives nor our neighbors. Is living in a small space makes them go out and hunt for something all the time? Is there someone that tells them they should always stay on the street? I dont see them buying, they just walk all over  and keep on riding public transport. I just wonder what they feed on.

These females are so proud of their jobs, I've read an article written by these females and they think of themselves as IT managers as she wrote, the client complained that she gave them a junior but they asked for a senior. I just could not imagine that they treat programming jobs as a commodity this female described in her article how she was able to pull out the junior and replaced him with a senior. It was a glorified scamming scheme and yet she's so proud of it.

Update:
I applied for a job at a certain tech company and not surprised that all recruiters again are females, but did not succeeded because it was not my primary skills and had not used it professionaly.

While on my way home, a female sat beside me and during our journey she put her sweaty arms on top of my legs which is very unusual. She also pretends looking at her cellphone but was somewhat wants to tell me something, this behavior is somewhat similar to those females in the office of the client of the agency that I am referring to in this post. (As I recall correctly when I am still working at the agency's client, there is not a day where their females keep looking at me as if I am a walking cash)I was waiting for her to say something but the vehicle stopped and a passenger got out so I immediately stayed away from this female and a manong sat between us. After a few minutes a sports car passed by and the female looked at me as if she wants me to buy her a sports car, that made me conclude that she was a well you know. She could have been tracking me and the "sitting beside me" incidence is not a coincidence. She could have been tracking me even when I am still at the office where I am applying. I heard that outsourcing from foreign clients usually involves in sex trade, but not all of course but with this incident, I am not surprised.

Even when I was on an airplane going to Thailand which was almost 10yrs ago, those Pinay looking ladies at the airplane exhibited similar behavior. They see single traveling male as a walking cash. This is why HIV is getting a big problem besause a lot of companies are very discreet, they should show their true colors to prevent hiv.

Monday, February 12, 2018

An Update to the Ibeacon Scanner App for Android

I have found a time to review the source code of the Ibeacon Scanner App and it would be easy to add the feature to include scanning Eddystone Beacons. To do this, the file DeviceScanActivity.java needs to be modified to detect the 3 Eddystone frames(UID, TLM, URL).

Here is the portion of the file that needs to be modified:

public void onLeScan(final BluetoothDevice device, final int rssi, final byte[]                             scanRecord) {
           int startByte = 2;
           boolean patternFound = false;
           while (startByte <= 5) {
           if ( ((int) scanRecord[startByte + 2] & 0xff) == 0x02 && //Identifies an iBeacon
                //Identifies correct data length
                ((int) scanRecord[startByte + 3] & 0xff) == 0x15) {
                 patternFound = true;
                 break;
             }
                startByte++;
            }
        if (patternFound) {
            //Convert to hex String
           byte[] uuidBytes = new byte[16];
           System.arraycopy(scanRecord, startByte+4, uuidBytes, 0, 16);
          String hexString = bytesToHex(uuidBytes);

        //Here is your UUID
       String uuid = hexString.substring(0,8) + "-" +
                             hexString.substring(8,12) + "-" +
                             hexString.substring(12,16) + "-" +
                             hexString.substring(16,20) + "-" +
                             hexString.substring(20,32);
       mUUID[mElems]=uuid;
       mRSSI[mElems]= String.valueOf(rssi);
       mElems++;
     //Here is your Major value
        int major = (scanRecord[startByte+20] & 0xff) * 0x100 +                                                                    (scanRecord[startByte+21] & 0xff);

     //Here is your Minor value
        int minor = (scanRecord[startByte+22] & 0xff) * 0x100 +                                                                     (scanRecord[startByte+23] & 0xff);
       runOnUiThread(new Runnable() {
     

The variable  patternFound was used to detect the ibeacon pattern and the scanRecord variable currently contains the data being processed and which is being examined whether it contains the ibeacon pattern. And from this, we can already insert the code to identify the current contents of scanRecord if it is an Eddystone pattern.