Augmented Reality with Unity and Vuforia Plugin

Augmented Reality is a technology that superimposes a computer-generated image on a user’s view of the real world, thus providing a composite view. The cross between the two worlds allows for manipulation of objects without any physical changes.

Unity is a cross-platform game engine developed by Unity Technologies,[2] which is primarily used to develop both 3 dimensional and 2 dimensional video games and simulations for computers, consoles, and mobile devices. Using a plugin known as Vuforia, it is also now possible to use it for augmented reality.

If you want to start creating augmented reality apps and games, you can download both Unity and Vuforia, which come pre built with a few samples.

In this article, I will show how to simulate a car on top of a marker, which I chose as a dollar bill.

You first need to go to developer.vuforia.com and create an account. There you click on the Develop tab and add a new license key. This will be used in a later step.

Screen Shot 2017-12-31 at 4.48.05 PM

Then you need to go to Google Images and find a picture of a dollar bill. Download this and then click Target Manager on the Vuforia site. Here you create a new dollarTarget database where you can upload the picture you downloaded.

Screen Shot 2017-12-31 at 4.48.19 PM

Once you create it, download the Unity Database package that it will generate. Also go to the Downloads section on the Vuforia page and download the Unity plugin for Vuforia.

Drag these both into a new Unity Project and import all the files. Then delete the Main Camera and drag in an AR Camera from Assets/Vuforia/Prefabs/ARCamera. Click on the ARCamera and then on the side panel you should see VuforiaConfiguration. Here you should paste the license key you obtained earlier. Under that, enable the dollarTarget database and click activate.

Under the AR Camera, you then need to drag in the ImageTarget from Assets/Vuforia/Prefabs/ImageTarget. This is the step where you can Google for 3D models of any object, it doesn’t need to be a car. Once you download it (.fbx or .obj formats are the best), you can drag it onto the ImageTarget.

IMG_20171222_135427

You can test it by clicking Play and holding up a dollar bill. If you want to run it on a phone, you need to click File->Build Settings and then change your platform.

This is very basic and can be extended with scripts and further manipulation of objects to create apps and games.

 

Net Neutrality

Net Neutrality is the principal that internet service providers and the government need to treat all traffic and data on the internet equally, without discriminating or charging differently.

Currently, the debate on Net Neutrality is very controversial as it is interpreted differently by many different organizations. Back in 2015, the FCC implemented the strongest net neutrality rules in history. This all happened due to the millions of supporters who called in and also wrote to the White House. They embraced the Title II authority and created clear rules for blocking and other discrimination.

It is now 2017 however, and the Chairman of the FCC, Ajit Pai, is attempting to destroy net neutrality once again. This change would let internet service providers control access to certain services and set their own prices to be able to access them. Pai is a one of the five board members who is voting to keep or abolish net neutrality. He is a Republican, and two other members are Republicans, giving them an advantage in the vote. Previously, he was a lawyer at Verizon, one of the companies who is in favor of getting rid of net neutrality

With net neutrality in place, everyone gets equal opportunities online, and in a world without it, people will not be able to see content without paying for packages or be throttled by bigger competition. You may be forced to use Bing over Google as your primary search engine if they bribe the internet service providers.

In order to stop this change from happening, we need to take action and sign a pledge to call Congress and bombard them with messages to prevent this. If it goes through, the internet’s free and open structure will change forever. The vote is taking place on December 14th and Congress may be able to stop the FCC if it gets enough support.

web15-siteimages-act-netneutrality-2400x960_0

What is CyberPatriot?

CyberPatriot is a national cybersecurity competition hosted by the Air Force Association in order to educate students in computer defense, networking, and security. It is made for both middle/high school students and has various divisions.

The main three are the Open, All-Service, and Middle School divisions. The Open division encompasses all public, private, parochial, magnet, charter, home schools, and certain other special organizations like Boy/Girl Scouts. All-Service is open to JROTC Services, Civil Air Patrol squadrons, and US Naval Sea Cadet Corps units. The Middle School division is open to any middle schoolers that fall into the same type of organizations as the open division.

The competition is centered around multiple rounds, most of which are done online from home or other facility, except for the national finals which is in Baltimore, MD. There are two qualification rounds, and the scores from them are totaled to determine what group the team is place into. 30 percent of them go to the Platinum tier, 40 percent to the Gold tier, and 30 go to the Bronze tier. Each level has their own state and regional competitions, while the platinum tier has the National Finals in Maryland.

Open Division Advancement

The rounds consist of many different challenges, and include things like fixing vulnerable Windows and Ubuntu images, answering quiz questions about various topics, and created mock network designs using Cisco Packet Tracer. Each round lasts up to 6 hours.

This years competition is called CyberPatriot X and will have over 5000 competing teams, with only 26 going to the National Finals from all divisions. If you are a middle or high schooler who has an interest in technology, hacking, and networking, I highly suggest you look into forming a team to compete next year.

MV-Hacks @ HackerDojo

Last weekend, my friends and I attended MV-Hacks, which took place at HackerDojo in Santa Clara. We built an app called NutriScan that is designed to track your eating habits in the easiest way possible, without needing to enter lots of data into an app that may take up a lot of time and discourage frequent usage.

It works by using  Microsoft’s Cognitive Vision API to scan nutrition labels and add them to a list of foods you have scanned. The app then uses Firebase and a graphing API to show you a detailed breakdown of your calories, fats, proteins, and carb intake. This is all enclosed within an app that has a clean UI and material design interface. Some problems we had were getting the OCR to work every time and parsing the results from each scan into usable data.

We are proud of the implementation of this new Microsoft API we haven’t used before and our integration of the OCR and graph plots.

It has a basic one button interface and then switches to an activity where the user can take a new picture or upload one from their gallery. Once it analyzes it, the user is then taken to their current breakdown for that day, and the graphs adapt as new information is added.

Screenshot_20171021-185224

In the end, we won 2nd place, but were very close to being 1st, as the judges had a hard time deciding. We all won Echo Dots, but switched them out with Intel Compute Sticks.

Converting an old laptop into a Chromebook

If you have an old laptop lying around that has become too slow to run the operating system it has, you can save it by installing a lightweight version of Chromium OS to breathe new life into it.

A company called Neverware has a version of Chromium OS called CloudReady and is integrated with the cloud for basically all functions. Many old Windows and Mac computers have more than enough power to run it as their specs often exceed that of currently sold Chromebooks.

Most computers are supported and you can check their list of known devices. If it doesn’t happen to be on there, it is often still supported but is not guaranteed to work.

Installation is very simple, all you need is a computer with the downloaded OS file from their site, Chrome, and a USB flash drive (8/16GB).

6uselocalimage-original

The utility will then prepare the drive and make it bootable for you. After this process is done, you need to plug the drive into the computer you want to convert and boot from it. The key to do this varies from computer to computer, so you may need to do a Google search before.

Once the computer starts up from the drive, you can select whether to install it by itself or dual boot with the current operating system installed. Dual-booting is not the best option but it is possible if your computer will support it.

5selectinstallmode-original

Once it installs, which could take up to 20 minutes, you can set it up and use it.

By doing this, you can revive a slow computer and give it to someone or use it yourself for most common tasks. Watching videos, browsing websites and creating documents/spreadsheets are all fast and fluid with Chrome OS. I highly recommend everyone do this for their old machines so they do not go to waste or end up in landfills.

iOS 11 Virus/Malware

Recently, TrendMicro, a security company, has published a serious flaw in iOS 11 that involves a malicious profile that can harm your phone and render it inoperable temporarily.

The latest Safari on iOS will automatically download a profile if it accepts a server response from a website.

ixintpwn-yjsnpi-1-1ixintpwn-yjsnpi-1-2

The images above show how the profile is a blob object and how Safari receives it

An iOS Configuration Profile has many uses such as enabling ” developers to streamline the settings of a huge number of devices, including email and exchange, network, and certificates”. Malicious profiles can wreak havoc on your devices through this by creating unsigned instances of itself and preventing deletion.

ixintpwn-yjsnpi-2ixintpwn-yjsnpi-3

The profile creates the same icon over and over again, filling all the pages up on the phone with useless icons that crash the SpringBoard if clicked.

In order to remove it from your device, you must use Apple’s Configurator tool to manage the installed profiles. It only works on Mac and can fail if the profile was not installed correctly.

A video of this malware in a more weaponized version can be seen here: https://www.youtube.com/watch?v=R7t2YOpiZGI&t=312s

As you can see, you shouldn’t install profiles from unknown sources as are capable of messing with the settings and take advantage of loopholes such as this. Another good practice would be updating your phone to the latest version, but that can also be bad as seen by this new iOS 11 malware.

Installing Custom ROMs

A custom rom is an alternate operating system that can be installed on an Android device. However since every device is different, not all roms will be compatible. Most devices that are shipped by manufacturers such as Samsung and LG come with a skin over regular “vanilla” or stock Android. Some phones however, such as Google’s Nexus and Pixel line of phones run Android without any modifications and are not held down by any bloatware or unnecessary apps. Custom roms allow you to install operating systems based on stock Android or other UIs on devices that don’t ship with it.

To install these new OSes, you need to first unlock your bootloader and flash a custom recovery. To do this on a Nexus/Pixel phone, you can plug your phone into your computer and use CMD or Terminal. On a Samsung Phone, you would use something such as CF-auto root. On HTC/Moto/LG, you can often obtain an unlock code/method from the manufacturer to do it.

75

After you unlock your bootloader, the next step would be to find a custom recovery supported by your specific phone. The most popular is TWRP (Team Win Recovery Project) and can be downloaded for many different devices at twrp.me. Once it is downloaded, you can use CMD/Terminal or Odin for Samsung to flash it.

pvakaud

Finally, you will be able to browse websites such as XDA for roms and other operating systems built for your device. Once you pick one, download it and find a corresponding Google apps package. Now plug your phone into your computer and copy it over.

Shutdown your phone and hold the Volume Down and Power at the same time, and TWRP should boot. Here you should click backup to create a Nandroid in case anything goes wrong. Transfer this backup to your computer.

twrp-backup

Next, click Wipe and swipe the arrow, which will delete all your data, so be careful. Then click install and choose the rom zip file you downloaded earlier. Once this is done flashing, you can install the Gapps zip.

twrp-install-rom-files

Now reboot your device and wait 5-10 minutes for the first boot. If you did everything properly, you should be able to setup your device and use it!

nexus-5x-setup-1-1445251549-large

For more specific steps, search the internet and the XDA forums for detailed instructions pertaining to your device. If anything fails in the process, you can always restore your nandroid to return your device to its previous state.

What is a filesystem?

A filesystem is a way that computers and other devices organize the data on the drive. It is applicable to basically all types of digital media strorage from CDs to SSDs. It is thought to be like an index for the location of all the data and often involves directories that contain more files. Each drive has specific sectors with blocks containing data. Drives can also be split up into several different partitions with their own file system and data.

Windows supports two main types of file systems, FAT and NTFS. FAT stands for File Allocation Table and is widely supported. A more Windows specific file system is NTFS, or the New Technology File System is widely used for the drive that the OS is installed on.

Mac on the other hand uses a file system called HFS, which stands for Hierarchical File System and is used mostly only by Apple computers. Apple is also creating a new format called APFS or the Apple File System in an effort to increase performance.

Below is an image of all the drives connected internally and externally to my PC. You can see how they all have different sizes and the file systems they use.

Capture

Filesystems are often invisible to the average user, but they are extremely important in keeping our computers running. From a security standpoint, there are ways to encrypt the filesystem making it so no one can snoop through your data without a specific key. There are many built-in and downloadable programs you can use to achieve this. If you are concerned about your data, I highly recommend you check this out.

What is a Hackathon?

A hackathon is “is a is a design sprint-like event in which computer programmers and others involved in software development, including graphic designers, interface designers, project managers, and others, often including subject-matter-experts, collaborate intensively on projects”.

Most hackathons have a specific focus around a certain programming language, operating system, API, sponsor technologies etc. Some also have no restrictions, allowing for you to build anything you want to pursue.

The event often lasts about 24-48 hours nonstop, meaning people stay up through out the night working on their project. Those hours are filled with food, caffeine and prizes, which are often tech oriented or cash.

boilermakesleep

As the organization MLH (Major League Hacking) was founded, the amount of hackathons grew substantially. There is often always a hackathon near you every month or even every other week in some areas.

Teams are often formed before hand or even at the venue by finding others and networking. The collaboration aspect of hackathons are very imporatant and lead to the creation of great projects.

At the end of a hackathon, there are demos of the projects and judging for prizes takes place. They showcase the hard work the teams have put into creating a working demo to show off.

I highly recommend hackathons if you are interesting in coding and technology, and going with other friends makes it much more fun as well.

disrupt-hackathon

Bluetooth

Bluetooth is a “a standard for the short-range wireless interconnection of mobile phones, computers, and other electronic devices”. It operates between 2.4 and 2.485 GHz and uses very little power to create a connection between two devices.

Range varies between the version of the Bluetooth that is being used, material, antenna config, and battery condition.

Bluetooth 1.0 and 1.0B was the first release of Bluetooth but it was very buggy and products would often fail to work with each other.

Bluetooth 1.1 made some improvements by fixing various bugs and adding a signal strength indicator (RSSI).

Bluetooth 1.2 had major upgrades in speeds, faster connection and discovery, and AFH for avoiding crowded frequencies.

Bluetooth 2.0 + EDR was released in 2004 and introduced the Enhanced Data Rate standard for speedy data transfer.

Bluetooth 2.1 + EDR built upon faster pairing experiences and stronger security while improving power consumption/device filtering.

Bluetooth 3.0 + HS this standard is a large leap and allows for 24 Mbit/s over an 802.11 link after a bluetooth connection was established.

Bluetooth 4.0 + LE otherwise known as Bluetooth Smart includes Classic Bluetooth, Bluetooth high speed, Bluetooth low energy.

Bluetooth 4.1 is a software update to 4.0 that adds many new things such as…

  • Mobile Wireless Service Coexistence Signaling
  • Train Nudging and Generalized Interlaced Scanning
  • Low Duty Cycle Directed Advertising
  • L2CAP Connection Oriented and Dedicated Channels with Credit Based Flow Control
  • Dual Mode and Topology
  • LE Link Layer Topology
  • 802.11n PAL
  • Audio Architecture Updates for Wide Band Speech
  • Fast Data Advertising Interval
  • Limited Discovery Time

Bluetooth 4.2 introduces minor upgrades in security and support for new standards needed for IOT (internet of things).

Bluetooth 5 will focus on doubling speed, increasing range and improvements across the board to modernize the technology.

Here is a video you can watch to learn about Bluetooth 5, the future of the standard. https://www.youtube.com/watch?v=0n1x-wxESaM.

Bluetooth in relation to cybersecurity is very important because so many devices use it, meaning it needs to be strongly encrypted and not have big vulnerabilities. I suggest you read about Bluetooth and how secure it is to better inform yourselves.

bluetooth-logo-and-wordmark