Resume, anyone?

7. Prodigy:
At the age of 2.5 years old I was capable of reading newspapers, books, write complex sentences, do algebra, and
play any complex musical tunes on any instrument. At the age of 7, I flew my first rocket based on self-initiated
research and self-induced simplifications and a minute amount help from Dad.
8. Gifted:
I learn complex information very fast with an application range beyond its extended field and contemplation and I
am also capable of putting this newly gained and instantaneously further developed know-how into use with
extreme professionalism.
9. Tolerance:
I have extremely deep patience and tolerance in the sense of working with biased and stubborn people. I am
persistently gentle, calm, and friendly at all times. I enjoy being nice truly and solve problems through peaceful and
friendly approach.
10. Theories and their projections:
I developed unifying and amalgamated theories to combine many layers of scopes of synergetic branches; in quantum, nuclear,
atomic, chemical, and molecular physics, metamaterials, nanoengineering, quartz, grain and materials engineering, astrophysics
and theoretically discovered very many universes interrelated workings, such as; dark matter and stretched energy environments
in parallel universes, hyperspace and space-time energy flow in differentiating energy field levels and their continuous
conversions in folded dimensions. These insightful theories enabled me to project and derive requirements for theoretical
futuristic devices and instrumentations, such as; wormhole projectors and extenders, energy extending generators,
gravitational/anti-gravitational or thrust force generators, force field accumulators, complex and differentiating invisibility
molecules, inertial gravitational dampening fields related to tractor beam generation, atom thin and super precise cutting tools.

Honor8/Allow Access To Device Data

I have a Huawei Honor 8.  It’s a great phone, but has a few annoyances.  One of my biggest annoyances is that when I plug my phone into my charging dock (connected to my computer) I see this:

It’s incredibly annoying, as my phone comes in and out of the charge cradle probably 20 times a day.  It also happens when I plug my phone into my car to charge it

I finally took a few minutes to search through the settings to see if I could disable it, and I found it!

Make sure ‘Always prompt when connecting to USB’ is unchecked in Developer Options.
Hooray!

Switch to WordPress!

I’ve been a Joomla guy for quite some time, it just seemed to make the most intuitive sense to me.  Recently, I was looking into building a plugin module on top of a CMS for work (I don’t really want to get involved in building my own security layer for multiple users) and a friend suggested I look at WordPress.  I initially laughed it off, but I did end up giving it a look.

Holy Lord

This has come a long way since I last looked at it probably close to 10 years ago (my wordpress.com account has a demo page with content from 9 years ago)

Not only is it fairly easy to create custom content types, all of the user/social features are on point, the theming is very nice (and simple to edit),  and it’s nearly effortless to setup a site quickly.  The site you’re looking at now is a culmination of about 3 hours of work.

Long story short, if you haven’t looked at WP lately, give it another look now. You’ll be surprised and delighted, i guarantee it.

Building an HTTP Client for Internet of Things in C

So, you’ve got a shiny new arduino or cc3200 or atmel wifi board and now you’re wondering how to get your sensor data into the cloud using an HTTP POST packet?

You’re going to need 3 string buffers, One to hold your Sensor data (in POST format), one to hold the length of that buffer (in ASCII), and an arbitrarily large buffer to hold the entire outgoing HTTP packet.  we’ll initialize them as follows:

unsigned char seBuffer[512];  //Holds the full POST packet
unsigned char sBuffer[384];   //Holds out Sensor data in POST format
unsigned char sBufferLen[8];  //Holds the Sizeof sBuffer

Why did I use those buffer names?  no idea.  I just did.  Call them whatever you want.

Now that we have our buffers, we need to get our sensor data into them.  For that, we’ll use sprintf(), which does more or less the same thing the printf() does, but points the output to a string buffer.  The first buffer we’ll fill holds our sensor data:

sprintf((char *)sBuffer, "command=%d&deviceid=%s&devicetype=%s&temperature=%d",
     978,DeviceID,DeviceType,temperature);

Seems nice and easy, right?  Next, we’ll get the string length of that buffer and store it in ASCII format, we’ll need it later:

sprintf((char *)sBufferLen, "%2d", (unsigned)strlen((char *)sBuffer));

Lastly, we piece it all together into a final assembled post packet in our largest buffer:

sprintf((char*) seBuffer, "POST %s HTTP/1.1\r\nHost: %s\r\n"
   "User-Agent: MyDeviceAgent/1.0\r\n"
   "Connection: close\r\n"
   "Content-Length: %s\r\n"
   "Content-Type: application/x-www-form-urlencoded\r\n\r\n"
   "%s\r\n\r\n", webappurl,servername,sBufferLen,sBuffer);

Now, load the entirety of seBuffer into your outgoing TCP socket.  The full Packet looks like this:

POST /sensorheartbeat.html HTTP/1.1\r\nHost: mywebserver.com\r\n
User-Agent: MyDeviceAgent/1.0\r\n
Connection: close\r\n
Content-Length: 59\r\n
Content-Type: application/x-www-form-urlencoded\r\n\r\n
command=978&deviceid=10001928&devicetype=15&temperature=235\r\n\r\n

Don’t forget to read back your values from the web server you’re hitting, that’s important information to let you know if your POST was successful.