by admin

Live debugging ESP8266 with open-source tools

December 28, 2016 in C, C++, DIY, ESP8266, Microcontroller, Tips & Tricks by admin

The ESP8266 is a low-cost Wi-Fi chip with full TCP/IP stack and MCU (Micro Controller Unit) capability produced by Shanghai-based Chinese manufacturer, Espressif Systems.

Since 2014, when first came in the attention of the western makers, the documentation became quite available, together with couple of SDKs and firmwares for various programming langauges like Lua, together with the low price, made reasonable easy to develop applications hosted on this tiny chip. Some of this little chip’s features:

  • 32-bit RISC CPU: Tensilica Xtensa LX106 running at 80 MHz (can be overclocked)
  • 64 KiB of instruction RAM, 96 KiB of data RAM
  • External QSPI flash – 512 KiB to 4 MiB (up to 16 MiB is supported)
  • IEEE 802.11 b/g/n Wi-Fi
  • Integrated TR switch, balun, LNA, power amplifier and matching network
  • WEP or WPA/WPA2 authentication, or open networks
  • 16 GPIO pins
  • SPI, I²C,
  • I²S interfaces with DMA (sharing pins with GPIO)
  • UART on dedicated pins, plus a transmit-only UART can be enabled on GPIO2
  • 1 10-bit ADC

Although developing software to be hosted on it isn’t such a big challenge like it used to be due to the plenty of information available on the internet, debugging the code running on the MCU is a different story. Luckily, at the Attachix blog there is a series of articles about writing software for this MCU, and in the 4th article the owner was nice enough to describe how to set up step-by-step debugging of the code either by command line or even from Eclipse IDE. Please follow this link for the entire article.

by admin

LibGDX game development with android studio – Creating Super Mario Bros

November 3, 2016 in Game Engines, Java, libGDX, Source Code, Tips & Tricks, Tutorial by admin

libgdx-logoA nice Youtube series of 32 videos by Brent Aureli about developing a Super Mario Bros game step by step using LibGDX and Android Studio. The videos include information about setting up libGDX with Android Studio, screens, viewports, aspect ratios, how to create a HUD, creating and rendering tilemaps, Box2D, spritesheeets and texture packer, animations, collisions, sound and music, moving & spawning items, and various other topics.

Read the rest of this entry →

Unreal Engine C++ Tutorial – Episode 1: Classes

October 5, 2016 in C++, Uncategorized, Unreal Engine by Adrian Marius

unreal-logo-smallRemaking the basics series for the newest version of the unreal engine, since some of the code is now outdated/deprecated.

 

Survival Sample Game in C++ for Unreal Engine 4.12

June 10, 2016 in C++, Game Engines, Programming, Programming Languages, Unreal Engine by Adrian Marius

unreal-logo-smallSurvival Sample Game in C++ for Unreal Engine 4 is now updated for Version 4.12.

Code can be downloaded from github page.

Supercharging Android Apps With TensorFlow

May 28, 2016 in Android, Java by Adrian Marius

android-logoIn November 2015, Google announced and open sourced TensorFlow, its latest and greatest machine learning library. This is a big deal for three reasons:

  1. Machine Learning expertise: Google is a dominant force in machine learning. Its prominence in search owes a lot to the strides it achieved in machine learning.
  2. Scalability: the announcement noted that TensorFlow was initially designed for internal use and that it’s already in production for some live product features.
  3. Ability to run on Mobile.

This last reason is the operating reason for this post since we’ll be focusing on Android. If you examine the tensorflow repo on GitHub, you’ll find a little tensorflow/examples/android directory. I’ll try to shed some light on the Android TensorFlow example and some of the things going on under the hood.

android_tensorflow_classifier_results.jpg

by admin

Step by step debugging firmware on the Aliexpress / EBay STM32 boards

May 9, 2016 in ARM, C, C++, Hardware, Linux, Microcontroller, Programming, STM32, Tips & Tricks, Tutorial by admin

arm_cortex_logoIn some previous topics (here and here) I wrote about some cheap development boards which can be acquired from EBay or Aliexpress. Since System Workbench for STM32 is freely available for a while now, let’s see how can we use it to generate a project, compile it, upload it to a board and debugging it step by step. We’ll use for this the board I got from EBay, but it works the same with the any STM32 other board I have and also with some self-made ones.

For being able to install firmware on the board and debug it, first we need to have a hardware part which will sit between the computer and the board. There are various models and versions of these jtag debugers and they can be ordered online or found pretty cheap on ebay (clones). Another way to get hold of one of these is to have a development board which comes equiped with JTAG adapters, like the STM32 discovery series of boards. Some of these JTAG debuggers allow even breaking apart the JTAG debugger from the development board itself (LPCXpresso series, the nucleo boards).
Regardless of which JTAG interface is used, it should be one which is known to work with OpenOCD, as we’ll use OpenOCD for debugging. In our case we’ll use the stm32f4 discovery board’s stlink2 side. However, Before using it as a JTAG debugger, we need to disconnect the STLink part from the discovery board, by removing two jumpers. Once that is done, the STLink itself won’t be connected to the discovery board and it’s SWD header can be connected to any other board. Read the rest of this entry →

by admin

Using the LPC11xx I2C driver

February 17, 2016 in ARM, C, Code Snippets, Hardware, Microcontroller, Programming, Source Code, Tips & Tricks, Tutorial by admin

arm_cortex_logoShort article on using the I2C driver with LPC11xx for the people who don’t want over the way too complicated sample included with the library and just look for a quick way to get I2C up and running as soon as possible. For accessing the article, follow this link.

Multithreading in C++11/14

February 3, 2016 in C++ by Adrian Marius

Here is a series of Multithreading articles in C++11/14

 

http://www.loic-yvonnet.com/articles/tag/multithreading/

by admin

Intel® RealSense™ SDK Plug-In for Unreal Engine* 4

January 14, 2016 in C++, Game Engines, News, Programming, Programming Languages, Unreal Engine by admin

unreal-logo-smallThe Intel RealSense SDK is natively implemented in C++, making it easy for developers to access its features from game code also written in C++. This plugin enhances the UE4 developer experience by exposing these same SDK features through Blueprints scripts.

At the time of this writing, the officially supported features of the plugin are the following:

  • Raw Color and Depth Camera Streaming
  • 3D Face and Object Scanning

Two other features are currently in-progress:

  • Head Tracking
  • Scene Scanning

Ultimately, our goal for this plugin is to support each of the Gold features of the Intel RealSense SDK that are applicable to gaming.

For more details and the entire article follow this link.

Unreal Editor 4.10.2 Hotfix Released

January 12, 2016 in C++, Unreal Engine by Adrian Marius

The 4.10.2 Hotfix is now live!

This Hotfix resolves a few important issues. Feel free to continue the discussion about this release on the 4.10 announcement thread.

Fixed in 4.10.2- CL#2818068

Fixed! UE-23845 Crash when using “Set Key Time” on an animation key in UMG
Fixed! UE-24685 Matinee movie recording is broken in 4.10
Fixed! UE-22573 A REINST error occurs in widgets that reference one another
Fixed! UE-24115 Cannot launch the editor in DebugGame Editor configuration from Xcode
Fixed! UE-24563 Editor should launch launcher silently

Important Note – ‘VisualStudio2015 Update 1’ is not compatible with the UE 4.10.2 release. Please do not update to VisualStudio2015 Update 1 while using UE 4.10.2

Skip to toolbar