logo
KUNDENPORTAL

Blog

Anleitungen, Tipps und Tricks zu zahlreichen Themen und Projekten von DLAUBE Technology finden Sie hier.

Ardublocks for Arduino IDE (>1.8.5) [EN]

Download for the 1.8.5 compatible version below!

Deutsche Version: hier!

Unfortunately the last version of the ArduBlocks environment you can download is not compatible with the latest Arduini IDE (1.8.5).

There is a possibility to download the source code and modify it to work with it. This procedure involves downloading the source, downloading the dependencies, setting up a build environment and compiling the jar from scratch. That is kind of inconvenient.

To make your life easier, we compiled a compatible version for you to download!


Installation

  1. Create the folder structure "tools/ArduBlockTool/tool" inside your Sketchboot directory (See Arduino IDE settings for the exact path)
  2. Copy the downloaded ardublocks.jar in the "tools/ArduBlockTool/tool" directory (Download link below)
  3. Restart the Arduino IDE. You can start ArduBlocks via a buton under "Tools"


Download

Downloadlink: ardublocks.jar (approx. 5,5MB)

Please don't link to the file directly. Link to https://www.dlaube.de/s/ardublock or https://www.dlaube.de/blog/1/Ardublocks-für-neue-Arduino-IDE directly


zum Post

3,5" zu 2,5" Adapter für Server

Heute haben wir die Erweiterung für Speicherkapazität bei einem unserer Kunden beschlossen. Die zur verfügung stehende Hardware erlaubt den EInbau von 3,5" Festplatten über SATA.

Es handelt sich dabei um HP Microserver Gen8 Geräte, welche über (nicht-hotswap fähige) EInschubkästen für 3,5" Laufwerke verfügt.


Das Problem

Zur Latenzreduzierung sowie Throughput Steigerung sollten SSDs in die betreffenden Server verbaut werden. Aus Kostengründen fiel die Wahl auf günstige SSDs im 2,5" Format.

Um eine 2,5" Platte in einen 3,5" Einbaurahmen zu bauen gibt es im Internet zahlreiche Adapter zu kaufen. Die meisten dafür sind jedoch für den Consumerbereich ausgelegt. Somit ist bei solchen Adaptern die SATA Anschlusspositionierung nicht kompatibel mit Einschubfächern für Server.


Die Lösung

Eine Möglichkeit wäre die Anschaffung von Adapter, die Hotswap fähig sind. Aus Zeitgründen entfiel diese Möglichkeit.

Wir entschieden uns für den Einsatz einer unserer 3D Drucker um schnell einen solchen Adapter zu konstruieren.


Abbildung zeigt den Adapter im CAD


Der Adapter wird auf einer Seite mit der 2,5" SSD verschraubt und wird dann im Rahmen befestigt. Die Rahmenschrauben schneiden sich dabei ihr Gewinde in den Kunststoff.


Danach wird die 3D Geometrie von einem Programm in ein Format umgewandelt, welches für den 3D Drucker verständlich ist.


Abbildung zeigt die Konturen, die der 3D Drucker abfährt


Das Design…
zum Post

Mehrere Basis-Controller in CodeIgniter

CodeIgniter ist ein schönes Framework zum Bau einer Webseite. Durch seine Freiheit lassen sich viele Projekte schnell und einfach realisieren.

Aber es gibt auch einige kleine Probleme: Zum einen das case-sensitive Gewirrwar* und die Fehlende Dokumentation von eigenen Core-Klassen.


Wofür Mehrere Basis-Controller?

Dafür gibt es allerlei Gründe:

  • Auslagerung von Code
  • Deduplizierung
  • Generell alle Gründe für Vererbungen


Mehrere Basis-Controller

CodeIgniter besitzt einen Mechanismus um eigene Core-Klassen zu laden. Dazu schreibt man eine Datei im Ordner "application/core/" mit dem Namen MY_<Klasse>.php, in unserem Beispiel also MY_Controller.php .

Und nun der kleine undokumentierte Trick: CodeIgniter erwartet normalerweise, dass der Klassenname gleich dem Dateinamen ist. Doch bei dieser Erweiterungsmechanik greift diese Regel nicht.

Es lassen sich in MY_Controller somit beliebig viele BasisController schreiben. Natürlich können diese auch voneinander Erben.


Verwendungsbeispiel

Üblicherweise besitzten Webseiten soetwas wie einen Footer. In dem Footer dieser Seite gibt es zum Beispiel eine Auflistung aller News und Blogposts. Damit man die Logik dafür nicht in den View packen muss (Mit Trickserei geht das!), lagere ich den Footer in eine Methode footer() um, welche Das News-/Blogmodel und den Footer-View lädt.

Alle normalen Controller erben nun von diesem eigenen Basiscontroller und binden nicht den Footer-View ein sondern rufen die footer()-Methode auf.

Das gleiche wurde in ähnlicher Form mit dem Header der Seite gemacht um den Code…
zum Post

Ardublocks für Arduino IDE (>1.8.5) [DE]

Download zur 1.8.5 kompatiblen Version weiter unten!

English Version: here!

Leider ist die letzte Version der ArduBlocks Umgebung, welche man sich runterladen kann, nicht mit der aktuellsten Arduino IDE (1.8.5) kompatibel.

Es gibt lediglich die Möglichkeit den Quelltext über Github zu beziehen, eine fehlerhafte Zeile zu ändern und den Quelltext daraufhin erneut zu kompilieren. Größte Schwierigkeit dabei: Das Auflösen fehlender Abhängigkeiten.

Es ist also nicht mehr einfach die ArduBlocks Umgebung mit der neusten Arduino IDE zu verwenden (speziell im Hinblick auf die Zielgruppe von ArduBlocks).

Darum bieten wir hier eine aktualisierte Version von ArduBlocks an.


Installation

  1. Erstellt in eurem Sketchbook Ordner (Im Voreinstellungsmenü nachgucken) den Ordnerbaum "tools/ArduBlockTool/tool"
  2. Kopiert die runtergeladene ardublocks.jar in das unterste Verzeichnis. (Download Link weiter unten)
  3. Startet die Arduino IDE neu. ArduBlocks kann nun über den Reiter "Werkzeuge" gestartet werden.


Download

Downloadlink: ardublocks.jar (etwa 5,5MB)

Bitte verlinkt die Datei nicht direkt, sondern linkt auf https://www.dlaube.de/s/ardublock oder https://www.dlaube.de/blog/1/Ardublocks-für-neue-Arduino-IDE


zum Post