Telekom DSL with Ubiquiti EdgeRouter

This days i exchanged my aging FritzBox with a Ubiquiti EdgeRouter Lite.

Most of the configuration including IPsec is pretty straightforward. The only thing which took a little bit more time is the “Zwangstrennung” (daily shutdown) of the PPPoE connection from my provider. I do the daily reconnect for my connection at 4 am every day.

To achieve that, a script and a daily call from cron is needed. Here is a article from the Ubiquiti Forum which helped a lot. Parts of the script are from there.

create a script reconnect.sh under /config/scripts

#!/bin/bash
run=/opt/vyatta/bin/vyatta-op-cmd-wrapper

# reconnect interface
$run disconnect interface pppoe0
sleep 20
$run connect interface pppoe0
sleep 20

# update dyndns
$run update dns dynamic interface pppoe0
sleep 20

# update ipsec
ip=`$run show interfaces | grep pppoe0 | sed 's/^.* \{1\}\([0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\) .*$/\1/g'`
echo "Current IP is $ip"

source /opt/vyatta/etc/functions/script-template
configure
set vpn l2tp remote-access outside-address $ip
commit
save

activate the cron entry inside the console on your EdgeRouter

set system task-scheduler task RECONNECT crontab-spec "0 4 * * *"
set system task-scheduler task RECONNECT executable path /config/scripts/reconnect.sh

Do not forget to have the listen for the gui and ssh interface only on internal network

set service gui listen-address IP-ON-INTERNAL-NETWORK
set service ssh listen-address IP-ON-INTERNAL-NETWORK

Some other helpful commands

# add a static name to the dns resolver
set system static-host-mapping host-name arche inet a.b.c.d
# delete it
delete system static-host-mapping host-name arche inet a.b.c.d

# start dyndns update
update dns dynamic interface pppoe0

# show actual dyndns state
show dns dynamic status

# set the ipsec ip address after it changed i.e. on pppoe
set vpn l2tp remote-access outside-address a.b.c.d
Posted in Linux, Other | Leave a comment

Parallella Boards

I’ve got my two Parallella Boards from the Kickstarter Campaign.

So far i have only installed Ubuntu on the two boards and run some sample programs. Looks like they have quite impressive performance.

parallella

Posted in Other | Comments Off

cmake Files for mbed created

I have created a github repository https://github.com/uwearzt/mbed-cmake for using the mbed libraries together with cmake.

Please check it out and if you have additions or found errors, please leave a bug entry at github.

Posted in ARM, mbed | Comments Off

FLIR E4 – E8

I have bought a FLIR E4 Thermal Camera and Firmware upgraded it to a E8. Very nice Thermal camera. I will use it to test my currently build Reflow Oven, and have some other fun with it (What about IR Skype?).

One nice feature is that you get a standard photo together with the thermal image:

Printer_Thermal

Printer_Photo

And BTW my printer is sucking to much energy…

Continue reading

Posted in Electronics, Other | Comments Off

LaborUSB finished

Many prototyping boards these days use USB Connectors as Power Source. For easy powering those devices with my DC Power Supply (or in german “Labornetzteil”) i created a adaptor from 4 mm banana plugs to 4 USB Jacks.

Here it is in action:

LaborUSB_Usage

For a complete project description, or if you would like to build your own, see LaborUSB.

Posted in Electronics | Comments Off

Durovis Dive and iPhone

I have built a Durovis Dive to test if it works with a iPhone 5 too.

It is a not complete 3D print, instead i used the laser cut parts from Fablab Nürnberg

The iPhone 5 fits perfect:
durovis1

Continue reading

Posted in iOS, Other | Comments Off

ChibiOS/RT on STM32 development

After publishing my article about development with FreeRTOS and the LPCXpresso 1769 a few people mentioned i should try ChibiOS/RT and STM32 Microcontrollers too.

So i gave that a try. Here is what i used in this case:

olimexstm32

The gdb commands which need to be executed to start the program on the board differ a little bit from the LPC:

target remote localhost:2331
monitor interface swd
monitor endian little
monitor reset 0
monitor flash device = STM32F103RB
monitor speed 1000
monitor flash download = 1
monitor flash breakpoints = 1
file "build/ch.elf"
load
monitor reg r13 = 0x00000000
monitor reg pc = 0x00000004
break main
monitor reset

Roundup
Especially the HAL (Hardware abstraction layer) and the integration of the IP stack are very neat. In my next project i will use ChibiOS/RT. I found also the C++ abstractions handy.
The STM32 line is also very nice, with the small exception that some LPCs are also available in a DIL packages.

Posted in ARM, C++ | Comments Off

Wall outlet with USB plug

Busch Jaeger sells now wall outlets with integrated USB plugs for charging up your iPhone or every other USB device.

WallPlug

The only disadvantage is that the depth of the cover is not the same as a “standard” wall outlet, so you can not mix them.

Posted in Home Automation | Comments Off

Olympus SZ4045TR Stereo Microscope

Recently i have bought a Olympus SZ4045TR Stereo Microscope. I will use it for all kind of electronics SMD stuff.

But because our goddaughter visited us last week, the first things under the microscope where a small spider, a dead fly and some flower parts, but see yourself…

Microscope

Microscope

Spider

spider2

Continue reading

Posted in Other | Comments Off

LPCXpresso LPC1769 commandline Development on Mac OS X

Because editing with vim is my preferred way of creating software, i don’t use the Eclipse based software delivered together with the LPCXpresso.

Here i describe, what is necessary to compile, flash and debug the LPCXpresso with the FreeRTOS blinking example from the commandline with:

Preparation of the LPCXpresso

Cut off the LPC-Link (this one only works with the CodeRed IDE) and solder Pinheaders to the JTAG Interface and the socket connectors for using the LPCXpresso in a Breadboard.
LPCXpresso

Continue reading

Posted in ARM | 1 Comment