Der Amazon Dash Button ist im Moment in aller Munde. Es gibt sehr viele Blogbeiträge und Diskussionen, was man mit diesem Teil alles anstellen kann und was es für den Handel und den Verbraucher bedeutet.

Wir wollen uns in diesem Artikel etwas genauer mit den Innereien des Button beschäftigen, um zu bewerten, was alles an Potential in diesem kleinen Stück Hardware steckt.

Es gibt im Netz einige sehr schöne Teardown-Beiträge, die wir natürlich auch studiert haben. Einer davon ist dieser. Auch hier gibt es eine sehr schöne Beschreibung der Komponenten.
In großer Erwartung haben wir also gleich begonnen, unsere neu erhaltenen Buttons zu öffnen. Der Button ist nicht ohne weiteres zu öffnen, da das Gehäuse verschweißt ist. Am einfachsten erschien es uns, den Button an den bestehenden Nähten mit einem Cutter-Messer aufzuschneiden. Ist dieser erstmal offen, müssen noch drei Torx T5 Schrauben gelöst werden und schon hält man die Platine in den Händen.

img_0457

Nach dem Öffnen kam dann gleich die erste Überraschung zum Vorschein. Die verbaute Hardware sah anders aus, als auf den bisherigen Teardown-Beschreibungen. Anscheinend hat Amazon mit den in Europa gelieferten Buttons das Hardware-Design komplett geändert. Es findet sich jetzt auch ein „Rev02“ Aufdruck auf der Platine.

img_0445

Es hat sich viel verändert am Hardware-Design. Amazon hat hier deutlich versucht, die Kosten zu reduzieren. Erstes Indiz dafür ist die normale AAA-Batterie anstelle der bisherigen Lithium Batterie in den alten Buttons. Wie lange diese wirklich hält, wird sich erst noch zeigen müssen.

Der Prozessor wurde auf einen Atmel ATSAMG55J19A-MU umgestellt. Davor kam ein STM32F205 zum Einsatz. Dazu kommt ein Atmel ATWINC1500B Wifi Chip. Der „alte“ Button wurde von einem Broadcom Chipset befeuert. Am erstaunlichsten ist, dass es auch einen Bluetooth LE Chip gibt. Hier kommt ein Cypress CYBL10563-68FNXI zum Einsatz. Der Blueooth Chip wird ja bei der heutigen Anwendung des Button nur für die Konfiguration gebraucht. Hier sind wir gespannt, ob Amazon damit zukünftig noch mehr macht.

img_0441 img_0434

Die spannende Frage lautet nun, ob es gelingt den Button mit einer alternativen Software auszustatten, um ihn auch für andere Zwecke einzusetzen. Dafür haben wir die sieben Pads auf der Platine neben dem Prozessor verkabelt und mit dem JTAG Debugger verbunden.

img_1231

Gleich darauf folgt die Ernüchterung …
Das System meldet, dass der Chip gelockt ist. Amazon hat scheinbar aus den vielen Hacking-Versuchen mit dem alten Dash-Button seine Lehren gezogen und den neuen entsprechend abgesichert. Damit ist es leider nicht möglich, den Chip neu zu beschreiben oder die Firmware auszulesen.

Eine weitere Recherche im Netz brachte noch diesen spannenden Artikel zum Vorschein: http://key-basher.blogspot.de/2016/09/amazon-dash-button-version-2.html.

Er beschreibt, was wir auch schon gefunden hatten – allerdings noch eine Idee mehr. Leider stellte sich heraus, dass der Reset-Pin des Chips mit dem Masse-Pad unter dem Chip verbunden ist. Damit müsste man, um den Chip zu löschen, selbigen auslöten. Danach muss die Masseverbindung durchtrennt werden und der Chip muss wieder eingelötet werden.

Mit dieser Erkenntnis scheint es erst einmal nicht möglich, den Button mit vertretbarem Aufwand mit neuer Funktionalität zu versehen. Wir werden das weiter beobachten.

Beacons
Im Sommer 2013 wurden sie offiziell vorgestellt und so langsam kommt die ganze Sache auch ins Rollen. Die Rede ist von der Beacon Technologie. Beacons (Signalfeuer) sind kleine Bluetooth-Sender, welche an einem Ort angebracht werden können und in regelmäßigen Zeitintervallen ein Erkennungssignal aussenden. Dieses Signal kann dann von einem Beacon-fähigen Gerät wie einem Smartphone oder Tablet empfangen und in ortsabhängige Informationen umgewandelt werden. Die Anzahl an Anwendungsgebieten ist dabei grenzenlos. Meistens werden Beacons mit typischen Einsatzgebieten wie …

Weiterlesen

Während unser erster Blog-Artikel zum Thema MQTT eher theoretischer Natur war, möchten wir uns nun dem praktischen Teil widmen.

Alles was wir dazu benötigen ist eine MQTT-Client Library sowie einen Broker. Eine große Auswahl an verschiedenen Client- und Broker Implementierung bietet das Eclipse Paho Projekt. Zur Zeit stellt es Implementierungen für C, Java, Javascript, Python, Lua, C++, Embedded C und bald auch Objective-C bereit. Als Broker empfehlen wir die kostenlose Lösung von Mosquitto. Wer Probleme mit der Installation hat, sollte sich diesen Link zu Gemüte führen: Guide to Installing Mosquitto MQTT. Zu Demonstrationszwecke oder einfachen Versuchen, lohnt es sich allerdings die sogennanten Public-Brokers zu verwenden. Eine kleine Auswahl an solchen ist hier zu finden: Public Brokers.
Weiterlesen

Internet of things: Viele haben schon mal was davon gehört, aber nur wenige können so richtig beschreiben was es überhaupt ist… dieses „Internet of things“? Wikipedia beschreibt es folgendermaßen:

The Internet of Things refers to the interconnection of uniquely identifiable embedded computing like devices within the existing Internetinfrastructure. 

Weiterlesen

Was ändert sich, wenn man Objective-C Code in Swift umschreibt?

In meinem letzten Artikel Von Objective-C zu Swift: Table Views, habe ich den umgeschriebenen Code eines Table View Menüsystems verglichen.

In diesem Artikel nehme ich das Einlesen von JSON Daten als Beispiel und verwende folgende Daten: Weiterlesen

Swift, die neue Programmiersprache von Apple ist da und steht mit Xcode 6 als Beta zum Ausprobieren bereit.
Wir haben einige typische Lösungen aus der Objective-C Welt in Swift umgeschrieben, um zu sehen was passiert.

In diesem Artikel zeige ich beispielhaft den umgeschriebenden Objective-C Code eines Menüsystems in Form einer TableView: Weiterlesen