Webpack, NodeJS and Express fueled by typescript

Webpack is all the rage today. It calls itself a module bundler, but it is so much more than that. It will replace your gulp setup entirely, as it will do your transformations, you bundling, your replacements, your asset compilation, just about everything on the front-end build chain.

But what about the backend?

Read More

HomePi – connecting the Pi and the LED board

After setting up the LED board (HomePi – Starting with the LED board) and proving that it is actually working, it is now time to connect the Pi with the LED board. In this blog Post, we will talk about:

  • The Raspberry Pi GPIOs in general
  • How to connect the two devices
  • Download & use a software that allows to control the GPIOs/LEDs

First things first: The GPIOs

GPIO stands for General purpose input/output. We find them on the Raspberry Pi. A very good source of information is https://www.raspberrypi.org/documentation/usage/gpio/ where we find an image explaining the PIN numbering and location on the board.

The GPIO pins are a physical interface between the Pi and the outside world. At the simplest level, you might think of them as switches that you can turn on or off (input case) or that the Pi can turn on or off (output case).

Read More

How to install NodeJS 8 on Raspberry Pi (using the ArmV6 package)

The is just a little “note” on how to install NodeJS on the RaspberryPi, as I was searching for the best way to do it my self several time, I decided to put this up for you guys (and me 😉 ) here to find it more easily..

First ssh into your Pi, then follow the procedure:

pi@raspberrypi:~ $ mkdir Downloads
pi@raspberrypi:~ $ cd Downloads/
pi@raspberrypi:~/Downloads $ wget https://nodejs.org/dist/v8.9.0/node-v8.9.0-linux-armv6l.tar.xz
--2017-11-05 11:57:20--  https://nodejs.org/dist/v8.9.0/node-v8.9.0-linux-armv6l.tar.xz
Length: 10272460 (9.8M) [application/x-xz]
Saving to: 'node-v8.9.0-linux-armv6l.tar.xz'
node-v8.9.0-linux-a 100%[===================>]   9.80M  1.20MB/s    in 7.7s 
pi@raspberrypi:~/Downloads $ tar -xvf node-v8.9.0-linux-armv6l.tar.xz
pi@raspberrypi:~/Downloads $ cd node-v8.9.0-linux-armv6l/
pi@raspberrypi:~/Downloads/node-v8.9.0-linux-armv6l $ sudo cp -R * /usr/local/
pi@raspberrypi:~/Downloads/node-v8.9.0-linux-armv6l $ cd
pi@raspberrypi:~ $ node -v

You see, finally, we got no v8.9.0 on the Pi.

Stay tuned..

HomePi – Starting with the LED board

As discussed in earlier blog-posts, I will show you how to build an LED controller to be ultimately controlled by the Google Home device. This article is the first in the series that actually talks about the components and we will start with the LEDs connected to our RaspberryPi.


First of all we need some electrical engineering fundamentals (based on https://electronicsclub.info/leds.htm):

I own several red and green LEDs, so I will use them for my demo. Every LED must have a resistor connected in series to limit the current flowing through the LED, to prevent it froming burning out instantly. The Resistor value can be calculated with a simple formular

R = (VS – VL) / I 

R = resistor value in ohms (ohm).
VS = supply voltage.
VL = LED voltage (2V generally, or 4V for blue and white LEDs).
I = LED current in amps (A)

Read More

HomePi – What we will build

As announced before with my post , I am doing my first blog series about building a sample DIY home automation for everyone to copy.

But what will we actually build?

The general idea behind this series is to show you which steps are needed to connect a google home to you raspberry Pi. It may sound like a small thing, but actually some components are involved

Read More

HomePi – Google Home connected to raspberry pi using RSI #wc3auto

pi + Google HomeI am currently preparing a series of blog posts to explain, how I connected my rapsberry pi based sprinkler system to my Google home. I will share code an insights about my journey.

You will need a raspberry pi (any generation is fine, I run a 1.gen) and a Google Home, or just your smartphone with google assist enabled. The more impressive is the Google Home though.

I will explain how to setup the raspberry pi, how to obtain a hostname for you dynamic IP address, the setup of letsencrypt certificates on the rasberry pi, how to auto-renew them, how to write a plugin for the rsiServer (http://github.com/rsiServer), how to setup the server for Token based authorization, how to enable https and finally how to hook up the Google Home to the entire system.

Please give me a little time and support me by sharing the announcement, I will be back with detailled instructionssoon.

W3C rsiServer on github – automotive Web APIs made public

The World wide web consortium decided to create a standard for automotive APIs a few years back. Quite some discussion where going on about the technologies to choose for those APIs. While in the beginning a strong candidate was seen in a JavaScript API for automotive grade browsers which run on the so called IVI (in-vehicle-infotainment) systems, nowadays a more versatile API is the consortiums favourite.

With operating systems (OS) like Google Android or Apple iOS dominating the smartphone market and HTML5 and QT moving into the automotive infotainment world, an API is needed which allows to connect from any device and its OS to the actual vehicles API.

The APIs the W3C is designing will cover different domains. Of course accessing vehicle information from within or outside of the IVI unit is a must – we are talking about automotive APIs. Other areas of interest are location based services that would allow an application developer to access the vehicles navigation core, e.g. to feed destinations into it.

The discussions in the W3C automotive web platform group (https://www.w3.org/community/autowebplatform/) also brought up a REST interface approach that adds push to REST APIs. A reference implementation for a server is made public on github for everyone to play around with an contribute (https://github.com/wzr1337/rsiServer).

While REST APIs are familiar to most of the application developers from using web services nowadays, the approach is fairly uncommon but yet interesting for automotive applications. Especially added some push mechanism will allow application to listen for changes rather than polling them in. This is of course the key differentiator and yet a straight forward approach to make vehicle APIs usable for non-auto guys.

The expectation is to open up an eco system for applications similar to the mobile web APIs like GeoLocation did in recent years.

[AngularJS] ng-wallpaper by zwoup.com

AngularJS wallpaper 1080p HD by zwoup
AngularJS wallpaper 1080p HD by zwoup
AngularJS wallpaper 1080p HD by zwoup

Now that I am working more than a year with angularJS (https://angularjs.org/) – The super heroic MVW framework, I decided to repaint my living room.

Feel free to use and share the clean heroic wallpaper..

google code jam 2012: How to solve alien numbers problem

As I am practicing for google codejam 2012 right now, I came across the alien number problem google gave for practice. There are alot of problems out there and I am doing different ones for practicing but solving the google ones seems to be most efficient I think.
The Problem is described as follows:

The decimal numeral system is composed of ten digits, which we represent as “0123456789” (the digits in a system are written from lowest to highest). Imagine you have discovered an alien numeral system composed of some number of digits, which may or may not be the same as those used in decimal. For example, if the alien numeral system were represented as “oF8”, then the numbers one through ten would be (F, 8, Fo, FF, F8, 8o, 8F, 88, Foo, FoF). We would like to be able to work with numbers in arbitrary alien systems. More generally, we want to be able to convert an arbitrary number that’s written in one alien system into a second alien system.

To get the work done, you do not need much code but you need some knowledge of conversion from one to another numeral system.
The easiest way to solve the problem is by using an intermediate value in a known language. I chose the decimal system.

Read More

Copyright muckibu.de 2018
Tech Nerd theme designed by Siteturner