Marshall Kilburn, Kilburn II, Acton carry bag

Just found the perfect bag for the awesome tiny portable Bluetooth speaker.

The Reisenthel allrounder S

  • Size (W x H x D): 32 x 24,5 x 16 cm
  • Volume: 8 l
  • Modeled after the traditional doctor’s bag: the contemporary interpretation of mobility!
  • Lightly padded lateral walls and bottom
  • Opening includes zip fastening and integrated metal bracket
  • 6 inside pockets for practical storage
  • 2 long carrying straps
  • Material: premium-quality polyester, water-repellent
  • Item no.: MR7003 EAN: 4012013546136

Flawed product design for prosumer: SumUp Air

Don’t get me wrong, I love product design.

Well defined product functionality implemented with mature and state of the art industrial process can yield very nice products.

But in some cases, pushing sleekness over function don’t deserve the product well. This is especially the case for prosumer product: professional consumer want sturdy, rugged product, surviving the field.

Even a sales person on a show with a tablet for demo want certain level of toughness: the tablet can be drop by the visitor, will be abused during storage and transport, etc..

Today I want to talk about SumUp Air: a small payment terminal, synced with your smartphone to accept payment over 3G/4G or Wifi.

The idea is great: use your smartphone to do the accounting/sales stuff, while having a dedicated card reader with pin input Bluetooth synced to hand to the customer.

But the implementation is very, very poor.

After few years of use, I found out the following issues:

  • the device is BLE: it’s always on, advertising every 10sec: this sucks as if you have it in your car with your stock, it is a plain beacon and screaming to be broken in
  • the device cannot be switch off: yes, there is no way to switch it off. Contacting the support service, they told me you cannot even remove the battery as the signature/encryption key are in volatile memory (this is interesting as the battery must definitely be a li-po and can be over-discharged at some point)
  • the keyboard interface is tactile (capacitive sensors), customer have trouble typing the pin in as there is no feedback of the switch press: why using a tactile technology for this!
  • the front face is glass: just drop it and it will shatter: this is a field tool, the device WILL fall down, especially while handling it to customers, outdoors, etc..
  • Bluetooth wake up and pairing is just a pain: while it’s supposed to wake up when you start the transaction on your smartphone, most of the time it doesn’t: you can to re-enable discovery/pairing on the front of you customer
  • Location must be enabled on your smartphone: while this is interesting for transaction history, this is also a bad idea: it just drains the battery from your smartphone super fast.
Tactile is not great for user feedback
Yes, concrete floors always win

Dual SIM + micro-SD Hack

Dual SIM smartphones are now common.

But most of them due to the card tray design, can either accept:

  • two SIM but no micro-SD
  • one SIM and a micro-SD card

This is definitely a bugger since mid-range Android smartphones are pretty stingy with storage memory (from 16Gb to 32Gb), while micro SD are pretty cheap an wayyyyy larger (128Gb to 512Gb)

Here is the quick hack to insert both dual sim, and a micro SD.

Tools needed

Peel the back of the nano-SIM plastic, with a hot air gun, as it’s soften the back glue, heat gently and evenly the back, to not fry the sim. (you may want to try first with a discarded SIM card, sitting in your junk-box)

Peeling the plastic card of the PCB/Chip

Clip about 1mm the sides of the FR4 epoxy SIM card

Clipping the SIM PCB with scissors

File the edge on the micro SD card, so it’s thinner, and don’t have this edge protruding anymore and shaves few microns of the card.

It’s interesting the flipchip design, reflown or wire bonded on a thin PCB with the finger contacts, then overmolded with the final plastic case. 400Gb are store in this die, that’s awesome, I guess, the controller must be integrated too, not separated as in Bunnie’s entry: https://www.bunniestudios.com/blog/?page_id=1022

I don’t know if one can reflow this design as experimented here: http://www.dotmana.com/weblog/2015/08/microsd-card-reflow-quick-and-dirty-pcb-with-kicad/

Tape one side of the smartphone card tray, with the first sim card and the micro-SD

Front of the card tray (yes, the first nano SIM was already homemade, from regular SIM, to micro, then nano, went under the knife quite few times)

Tape the other side with the shrinked second SIM

(take extra care where the chip should align, here I made scratches with the scalpel with the unmodified nano sim where it should go)

Here I used Kapton tape, but I guess any office tape would do

Back of the smartphone card tray, with tape holding the secondary SIM

That’s it! Dual sim and lot of storage! 400Gb, gosh!

SYMA is my secondary wireless provider, and F SFR my first

IKEA DIY FIP Webradio

We love to listen to FIP, as it’s a public radio, without commercials and not so much speaking.
Unfortunately, this radio is FM brodcasted in only few city in France, and here in Grenoble, the only way to get is internet.

So we built this small kitchen radio, music playing in 14 seconds, and quite pleasantly aesthetic, in the same line as my previous nixie clock.

The large solid aluminium knob with amplifier pot ON/OFF produces a comforting click to power ON/OFF the device or adjust the volume.
The shiny stainless steel button is for future upgrade to allow changing from few radio as currently only one is available.

Hardware part

Here are almost all the items needed for this DIY hack:

  • Ikea box (4€)
  • 4″ coax speaker (scrap)
  • 1″ tweeter (3€ on AE)
  • Rpi 3b (40€ on Farnell)
  • USB sound card (5€ on AE)
  • Stereo 5V amplifier (1€ on AE)
  • aluminium knob (5€ on AE)
  • stainless steel push button (1€ on AE)
  • C5 pannel connector for main supply (0.1€ on AE)
  • USB wall wart (scrap)
  • piece of 5mm plywood (scrap)
  • speaker fabric for front pannel (4€ on AE)
  • 30cm of leather belt (scrap)
  • washed nuts (1€ on AE)

A total of about 60€

Step by step assembly

Let’s remove the USB sound card along with the extra not needed capacitors and jack connector (desoldering station is realy a must here)

Make a slot for the micro SD card on the back: remember, the Wifi credential are stored here.

A XY table on a drill press was usefull, I didnt imagine bamboo being so hard to mill.

Piece of leather bought in Texas, this is what’s left from my buckle-less belt I made few years ago, it could be an entry someday.

With the washer nuts, it look nice.

The C8 pannel connector, wired to the wall wart.

Everything fitted in the box, held in place with double side tape (the brand Multicomp from Farnell is nice).

Adhesive rubber feet add an extra touch.

Piece of plywood for the front panel, black mate painted, with the speaker cloth.

Held in place with thin double side tape.

Finish

Let’s add a small tag to give some identity to this yet unbranded product. A nice friendly name, with our initials to personalize it even more.

Warm up kicad and start just a PCB without schematics, with a beveled edge to add a touch of design:

The result is very good, with this mirror finish!

Once glued on the product, it does raise the bar. (a pitty the manufacturing reference is on the front, next time I’ll do my artwork on the back, just to make sure it’s not on the front)

A quick video:

Software part

Download RPI image

Download a RPI image, in this case, I choose : pipaOS A lighweight, fast, Raspbian based distro for the Raspberry PI

Once the image unziped, copy to a fresh high performance micro SD card

sudo dd bs=4M if=./pipaos-tamarillo-4.7.img of=/dev/mmcblk0

in order to boost performances, I use a Samsung EVO+ for high performance for a very fast boot

ssh sysop@192.168.1.84 (password posys)

Connect to WIFI network

Rpi 3 rev B and Zero W have integrated wifi

Edit WIFI credentials

The file  /etc/network/interfaces should NOT be modified, as it’s overwritten at start.

Edit the file

sudo nano /boot/network.ini

To add your credential:

#
 # interfaces - setup your networking devices here
 #

auto lo
 iface lo inet loopback

allow-hotplug eth0
 iface eth0 inet dhcp

allow-hotplug usb0
 iface usb0 inet dhcp

# pipaOS Will automatically try to connect
 # to wireless ESSID "pipaos" passphrase "pipa123pass"
 allow-hotplug wlan0
 iface wlan0 inet dhcp
 wpa-ssid YOUR_SSSID
 wpa-psk YOUR_WIFI_KEY

High quality sound

Rasberry Pi have 3.5mm stereo jack output but the quality is pure crap, wondering why they even bother populate a jack.

So lets connect a cheap UBS sound card and check what appends

dmesg

sould display something like

[ 106.865142] usb 1-1.2: new full-speed USB device number 5 using dwc_otg
 [ 107.006372] usb 1-1.2: New USB device found, idVendor=0d8c, idProduct=0102
 [ 107.006387] usb 1-1.2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
 [ 107.006395] usb 1-1.2: Product: USB Sound Device

[ 107.042816] input: USB Sound Device as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.3/0003:0D8C:0102.0002/input/input1
 [ 107.105630] hid-generic 0003:0D8C:0102.0002: input,hidraw0: USB HID v1.00 Device [USB Sound Device ] on usb-3f980000.usb-1.2/input3

and

lsusb

will output:

 Bus 002 Device 009: ID 0d8c:0102 C-Media Electronics, Inc. CM106 Like Sound Device
 Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 

Create startup service : webradio

sudo apt-get install mplayer
mplayer `curl -w "%{url_effective}\n" -I -L -s -S http://direct.fipradio.fr/live/fip-midfi.mp3 -o /dev/null`

Webradio player script

create non returning script:

sudo nano /home/sysop/webradio.sh
while true
 do mplayer http://chai5she.cdn.dvmr.fr:80/fip-midfi.mp3
 sleep 1
 done

create init.d service: webradio

#!/bin/bash
 #webradio daemon
 # chkconfig: 345 20 80
 # description: mwebradioapp daemon
 # processname:webradio

DAEMON_PATH="/"

DAEMON=/home/sysop/webradio.sh
 DAEMONOPTS=""

NAME=myapp
 DESC="My daemon description"
 PIDFILE=/var/run/$NAME.pid
 SCRIPTNAME=/etc/init.d/$NAME

case "$1" in
 start)
 printf "%-50s" "Starting $NAME..."
 cd $DAEMON_PATH
 PID=`$DAEMON $DAEMONOPTS > /dev/null 2>&1 & echo $!`
 #echo "Saving PID" $PID " to " $PIDFILE
 if [ -z $PID ]; then
 printf "%s\n" "Fail"
 else
 echo $PID > $PIDFILE
 printf "%s\n" "Ok"
 fi
 ;;
 status)
 printf "%-50s" "Checking $NAME..."
 if [ -f $PIDFILE ]; then
 PID=`cat $PIDFILE`
 if [ -z "`ps axf | grep ${PID} | grep -v grep`" ]; then
 printf "%s\n" "Process dead but pidfile exists"
 else
 echo "Running"
 fi
 else
 printf "%s\n" "Service not running"
 fi

Install startup service

update-rc.d webradio defaults

Start service manually

sudo service webradio start

Check startup time and performance

Startup time with RPI 3 B: Startup finished in 2.602s (kernel) + 4.386s (userspace) = 6.988s

Not bad at all for a full featured computer with wifi and usb audio

BROTHER DCP 9020CDW reset toner cartridge via the printer’s menu

Symptoms: the printer doesn’t want to print and ask for a toner change, no override available.

Easy procedure to reset toner counter: open the top cover, hold the * button for 5 sec (beside to keypad, not back-lighted, you can barely see it).

A reset menu appears and voila!

Fuck you Brother! My toner don’t need to be changed, my next printer wont be one of yours.

 

Source: https://printerthinker.com/brother-dcp-9020cdw/

Process audio file with Sox using Room EQ Wizard filter file

Rationale: compensate a speaker response curve (gain and phase) on a audio file.

Just came accross REW (Room EQ Wizard) (Linux, Windows, Mac), it let you plot the output of your speakers, then create a filter to compensate the flaws.

Once you created your finely tuned speakers, Export-> Filter as text file.

Then, it’s time to process the audio file with this filter, using the amazing Sox:

sox -q input_file.wav output_file.wav `awk ‘$4==”PK” { gsub(/,/,””,$6 );val=$6;printf ” equalizer “val” “$12″q “$9}’ val=”%’6.3f” REW_filter.txt`

That’s it: you have a outputfile with the correct compensation for your just analysed speaker.

Of course this method is for non-real time need.

Simple CNC desktop router workflow and example

If you have access to a simple desktop mill/router, and you are not into mechanical part design, here is a very simple workflow:

Workflow

Sofware

You will only need free/open source program:

Example

In order to illustrate this example, we are going to make a case for a nice Nixie Clock from PV Electronics

A simple Ikea-hack will do for the wooden box: DRAGAN 2-piece bathroom dish set, bamboo

The front panel is milled

And fitted in place

The 2 stainless steel feet are from Ikea again

Thanks Dan Heeks for the very good software.

Happy milling!

Files are available here.

XCSoar: generate custom maps

Introduction

XCSoar is an Open Source software for tactical glide computer: run it on any PDA/Smartphone/eBook and you have a powerfull computer for sailplane, paradlider and hang glider. (see previous post about adding a GPS to an eReader)

Generated map can be downloaded here

The geo file format used by XCSoar are:

  • elevation geotiff raster with altitude encoded (custom format)
  • waypoints
  • airspace
  • any shapefile

We will use the latest to add custom geo referenced information on XCSoar (in this case, paragliding skyways from thermal.kk7)

Software requirement

 Processing files

#remove and create temp folder for file processing
rm -rf tmp/; mkdir tmp/
#convert PNG+PGW to GeoTiff and resize for faster processing (resize to any % or none)
gdal_translate ./skyways_all.png tmp/skyways_all.tif -outsize 50% 50%
#vectorize contour to shapefile red layer
gdal_contour tmp/skyways_all.tif tmp/skyways_all_r.shp -i 50 -b 1
#vectorize contour to shapefile green layer
gdal_contour tmp/skyways_all.tif tmp/skyways_all_g.shp -i 80 -b 2
#vectorize contour to shapefile blue layer
gdal_contour tmp/skyways_all.tif tmp/skyways_all_b.shp -i 200 -b 3

 

Visualisation with QGIS

Import from Layer->Add Vector Layer and select your 3 files

Then if everything is fine, save the 3 as Shapefiles:

Place the generated file into the XCM (XCSoar compressed archive map)

Dont forget to edit the topology.tpl to add the names of the new files:

You can edit color (RGB, 0-255)  and transparency (0-255)

The order is important: element are displayed from top to bottom (first to last)

Result

Original raster file, PNG + PGW format.

Generated shapefile maps in XCSoar (desktop version)

Same in XCSoar but eReader version optimised for black and white gray levels.

Generated map can be downloaded here

Service en ligne La Banque Postale: client mécontent

Voici un mail envoyé aux services en ligne de La Banque Postale dont je suis très mécontent.

Bonjour, je suis client à la Banque Postale, aussi bien à titre
personnel que pour mon entreprise.

Je vous écris car je suis TOUT SIMPLEMENT LAS de votre service, digne de
l'URSS, souvent non fonctionnel, toujours minimaliste, pas intuitif pour
un sou.

- Par exemple, l'ajout de compte bancaire pour virement prend toujours
48h alors qu'il devrait être instantanée. (sinon on serai encore au
télégramme).
- Votre système d’identification est tout simplement laborieux, limité à
des chiffres.
- Je ne peux pas accéder a mes compte pro ET perso simultanément car
vous utilisez le même cookie. (alors que ce besoin est fréquent dans une
petite entreprise).
- si je ne me déconnecte pas de l'interface pro, et que je vais sur la
page perso, je me prend un message d'erreur de login, c'est pas mon
problème.
- des bannière pub pour vos services annexes qui clignotent au dessus de
MES comptes, alors que je PAYE mon compte.
- Sur les relevés, vous offrez les FRANCS, WTF? Mais ou est ma collonne
Ancien Francs!
- les virements sont limités à 3000€, vous croyez qu'une entreprise joue
aux billes? Ça fait sérieux de payer un fournisseur avec 4 virements....
- le temps que j'écrive ce message, l'identification a déjà timouté,
oui, je passe plus de 5min sur mes comptes et je n'y accède pas d'un
cybercafé en Somalie.

J'ai déjà ouvert un compte bancaire pro au Crédit Mutuel et je vous
informe que je vais faire de même pour mon compte perso.

On est en 2014, il serait temps d’être à la page, avec des service
disponible en anglais par exemple non?

A bon entendeur (si il y a quelqu'un dans votre entreprise colossale,
assez AGILE pour faire remonter ce message)

Signé,
Un Entrepreneur, créateur, innovateur!
Notez que cela concerne uniquement les services en ligne, car au niveau service physique, hormis la carte bancaire, je n’en utilise aucun donc je ne peux pas m’en plaindre.