Archiv des Autors: admin

Attiny 13 auf STK500 (V2) programmieren

Leider ist in dem Handbuch zum STK500 nichts über den ATtiny13 zu finden. Ich wollte für mein Homematic-Projekt diesen aber programmieren. Nach einigen Stunden bin ich zu folgender Lösung gekommen:

  1. ISP6 Schnittstelle nutzen: ISP6IN auf SPROG1
    stk500v2_attiny13_1
  2. Verbinde PORTB.PB5 mit PORTE.RST und PORTB.PB3 mit PORTE.XT1
    stk500v2_attiny13_2
  3. Stecke den ATtiny13 auf SCKT3400D1
    stk500v2_attiny13_3

Und nochmal alles zusammen.
stk500v2_attiny13_4

Testen (Systemabhängig! hier STK550V2 mit USB-Adapter unter Linux mit entsprechenden Bibliotheken) – keine Angst liest nur das Fuse Low Byte aus:
sudo avrdude -v -p t13 -c STK500v2 -P /dev/ttyUSB0 -U lfuse:r:/dev/stdout:b

Festplatten sicher löschen

Nach heise reicht einmal überschreiben nach „tool“-Anbietern 7 bis 35 mal. Ich bin der Meinung die Kombination ausnullen, Müll drüber schreiben, den Zufall benutzen und dann Dummydaten drüber sollte selbst für Paranoide reichen.

Unter Ubuntu ein Terminal öffnen und

    1. Device „ausnullen“: dd if=dev/zero of=/dev/sd"X" bs="Fesplattencache"
    2. Device mit „Müll“ füllen: dd if=<(yes $'you are dumb! ' | tr -d "\n") of=/dev/sd"X"
    3. Device mit Zufallszahlen beschreiben: dd if=/dev/urandom of=/dev/sd"X" bs="Festplattencache"
    4. Festplatte formatieren und irgendwelche und nutzlose „Nutzdaten“ aufspielen … bissie Fantasie sollte man hier haben

 

 

Bananian – NervLEDs abschalten

Der „normale“ Bananian-Pi sieht im Betrieb so aus:


Der eigentliche Vorteil (geräuschlos) wird durch die DiskoLEDs eher vernichtet.

Es gibt auf der Platine eine rote (power) , eine grüne (userdefine) und eine blaue (ethernet status) LED. Die grüne und die blaue LED sind abschaltbar. Rot dürfte nur per Hardwareänderung (Lötkolben) abschaltbar sein.

Die grüne LED ist ja „userdefine“ … also relativ kompfortabel abzuschalten.
echo none > /sys/class/leds/green\:ph24\:led1/trigger
Schafft vorrübergehend Ruhe. Beim nächsten Start ist aber alles wieder vorbei.
Dauerhaft Abschalten geht in der
/etc/rc.local
Diese z.B. mit nano öffnen:
nano /etc/rc.local
Dort vor exit 0 einfügen:
echo none > /sys/class/leds/green\:ph24\:led1/trigger
gruene_led
Wer es jetzt schon ausprobieren will -> reboot (tut immer gut). Achso beim booten blinkt die grüne LED noch.

Die blaue LED wird etwas schwieriger…
Wenn noch nicht geschehen git installieren
apt-get install git
Dann Quellcode (C) holen
git clone https://github.com/rorei/bpi_ledset
Verzeichnis wechseln cd bpi_ledset
Falls noch nicht geschehen C installieren
apt-get install gcc libc6 libc6-dev build-essential
Programm kompillieren
gcc -o bpi_ledset bpi_ledset.c
und kopieren
cp bpi_ledset /usr/bin/bpi_ledset
nun der erste Test:
bpi_ledset eth0 0
Nun sollte die blaue LED aus sein. Das ist aber nicht dauerhaft, beim nächsten Start wird die wieder fröhlich am blinken.
Also wieder in die /etc/rc.local und vor exit 0 einfügen
bpi_ledset eth0 0
Jetzt noch ein Neustart … um zu testen ob alles dauerhaft ist.
Es gibt weiter die Möglichkeit die grüne und orange LED an der Netzwerkbuchse auszuschalten. Dies möchte ich aber nicht tun; die nerven nicht so und ich möchte ja noch sehen ob das Netzwerk tut.

Bananian – Banana Pi mit Debian – Installation und erste Schritte

  1. Image besorgen und aufspielen
    1. Image runterladen Bananian latest und entpacken
    2. Image auf SD-Karte kopieren (hier mit Linux)
      banana1
    3. SD-Karte in Banana Pi einstecken und starten
    4. gespannt auf dem Bildschirm schauen und Login abwarten
    5. einloggen mit root/pi
  2. Standardkonfiguration und Updates (Ich gehe per ssh auf den Banana Pi, das erspart mir das umgestecken der Tastatur)
    1. IP des Banana Pi herausbekommen (z. B. auf die Fritzbox schauen)
    2. per ssh anmelden
      banana2
    3. dann den freundlichen Hinweis folgen: bananian-config eingeben
    1. Passwort ändern … pi ist nicht besonders stark
    2. Zeitzone „Etc/UTC“ könnte man googln, bin aber in Deutschland -> Berlin
      banana3
    3. Deutsch wäre auch ganz nett -> de-de-utf8
    4. Hostname … einen sinnvollen Namen vergeben
    5. Video-Beschleunigung disabled lassen, spart RAM
    6. Frage nach Hardware … sollte in Ordnung sein
    7. System auf ganze SD-Karte erweitern -> yes (die SD-Karte sollte dann länger am Leben bleiben)
    8. Reboot (shutdown -r now)
  3. wieder einloggen siehe 2.2
    1. noch nicht ganz fertig! bananian-update fehlt von oben
    2. zur Sicherheit noch apt-get update und apt-upgrade durchlaufen lassen
  4. Ergebnis: aktuelle Banane

DDR, PORT und PIN am Atmel-Mikrocontroller

Hier bissie aufpassen! Die Verständnisfrage ist die Wesentliche!

DDR Data Direction Register das Beinchen wird als Ein (0) – bzw. Ausgang (1) gesetzt.Im Einschaltaugenblick sind erstmal alles Eingänge
PORT Wenn DDR als Ausgang gesetzt, einschalten (1) und ausschalten (0).Wenn DDR als Eingang gesetzt, INTERNEN Pull-Up-Widerstand einschalten (1) und ausschalten (0).
PIN Wenn DDR als Eingang gesetzt, kann dieser abgefragt werden.

Proxxon Tischkreissäge KS230 – Drosselspule defekt

Die (preiswerte) Tischkreissäge versagte nach intensiver Nutzung auf einmal den Dienst. Nach dem Aufschrauben konnte ein (80W?) Nähmaschinenmotor erkannt werden. Wiederbeschaffungspreis des Motor ca. 50€. Macht bei einen Neupreis der Kreissäge von ca. 90€ nicht viel Sinn.  Weiter den Motor aufgeschraubt. Nichts verschmaucht, nichts verbrannt nicht mal der „typische“ Geruch nach verbrannter Elektronik. Nach Durchmessen der wenigen Bauelemente/Wicklung wurde klar, dass eine Entstörspule hochohmig geworden ist. Der Aufdruck „7R8K“ ist nicht sehr hilfreich.7R8KIch habe den Schrumpfschlauch aufgeschnitten. Aufgewickelter Kupferlackdraht (wie erwartet). Gängige Werte von Entstördrosseln liegten im μH-Bereich. Ich schließe 7,8μH. Ersatz bestellt (10μH) und eingelötet.ks230_2Die Säge „tut“ wieder. :mrgreen:

Atmel – ATtiny 13 – Pins

Pin Name Alternative Funktion Pin Nr
PB0 (MOSI/AIN0/OC0A/PCINT0) MOSI: Programmieradapter Data Input; SPI Master Data Output / Slave Data Input
AIN0: Analog Komparator, Referenzspannung (Sollwert);  Analog Comparator, Positive Input;
OC0A: 8Bit-PWM Kanal A;  Timer/Counter0 Compare Match A output
PCINT0: Interrupt bei toggle?; : Pin Change Interrupt 0, Source 0
5
PB1 (MISO/AIN1/OC0B/INT0/PCINT1) MISO:Programmieradapter Data Output;  SPI Master Data Input / Slave Data Output
AIN1: Analog Komparator, Vergleichsspannung (Istwert);  Analog Comparator, Negative Input
OCOB: 8Bit-PWM Kanal B;  Timer/Counter0 Compare Match B Output
INT0: Unterbrechung(Interrupt) programmierbar (bei fallender oder steigender Flanke oder bei Nullpegel);  External Interrupt 0 Input
PCINT1: Interrupt bei toggle?; :Pin Change Interrupt 0, Source 1
6
PB2 (SCK/ADC1/T0/PCINT2) SCK: Programmieradapter Clock Input;  Serial Clock Input
ADC1: A/D-Wandler 1;  ADC Input Channel 1
T0: „Timer“ kann als Zähleingang verwendet werden;  Timer/Counter0 Clock Source
PCINT2: Interrupt bei toggle?; : Pin Change Interrupt 0, Source 2
7
PB3 (PCINT3/CLKI/ADC3) PCINT3: Interrupt bei toggle?;  Pin Change Interrupt 0, Source 3
CLKI;  External Clock Input
ADC3: A/D-Wandler 3;  ADC Input Channel 3
2
PB4 (PCINT4/ADC2) PCINT4: Interrupt bei toggle?; PCINT4: Pin Change Interrupt 0, Source 4
ADC2: A/D-Wandler2;  ADC Input Channel 2
3
PB5 (PCINT5/RESET/ADC0/dW) RESET! LOW AKTIV! ohne besondere Programmierung nicht nutzbar!;  Reset Pin
PCINT5: Interrupt bei toggle?; : Pin Change Interrupt, Source 5
ADC0: A/D-Wandler 0;  ADC Input Channel 0
dW;  debugWIRE I/O
1
VCC  Versorgungsspannung:  ATtiny13V: 0 – 4 MHz @ 1.8 – 5.5V, 0 – 10 MHz @ 2.7 – 5.5V;  ATtiny13: 0 – 10 MHz @ 2.7 – 5.5V, 0 – 20 MHz @ 4.5 – 5.5V 8
GND  Masse 4

Edimax SP 1101W (WLAN-Steckdose) – per Konsole steuern

Offiziell nur per App (Android oder angebissener Apfel) steuerbar. Wenn  per App eingerichtet, geht auch „curl“.

Die URL der Dose ist:
http://Edimax_user:Edimax_pass@Edimax-IP-Adresse:10000/smartplug.cgi
z.B.:
http://admin:1234@192.168.178.123:10000/smartplug.cgi

Drei Dinge sind sinnvoll: Einschalten, Ausschalten und den Status abfragen. Entsprechend 3 xml-Dateien anlegen (xml.tar)

Dann die entsprechende Datei in der Konsole aufrufen:
curl -d @an.xml http://admin:1234@192.168.178.123:10000/smartplug.cgi -o "output.txt"
In der output.txt steht dann das Ergebnis.

PS: Die MAC-Adresse auf dem Aufkleber der Dose ist in der Regel FALSCH; erste 2 Ziffern: 80 -> 82

Lene Voigts – Sachsen

Unverwüstlich

1935

Was Sachsen sin von echtem Schlaach,
die sin nich dod zu griechn.
Drifft die ooch Gummer Daach fier Daach,
ihr froher Mut wärd siechen.

»Das gonnte noch viel schlimmer gomm’«
so feixen richtche Sachsen.
Was andre forchtbar schwär genomm´,
dem fiehlnse sich gewachsen.

Un schwimm´ de letzten Felle fort,
dann schwimmse mit und landen dort,
wo die emal ans Ufer dreim.
So is das un so wärds ooch bleim.

Raspberry Pi – Arch Linux – Installation

Ziel:

Grundinstallation eines Arch-Linux-Systems auf dem Raspberry-Pi, um diesen dann zu erweitern.

Benötigt:

  • Raspberry Pi Modell B + Netzteil Micro-USB
  • SD-Card (mind. 2GB)
  • SD-Karten Slot etc. zum Schreiben des Images
  • Arch Linux Image
  • Rechner mit Linux-Derivat (oder Windows mit USB-Image-Tool – nicht betrachtet)

 

Vorgehen:

  1. Arch Linux herunterladen und entpacken
  2. Mit: dd bs=1M if=/path/to/archlinux....img of=/dev/sdX
    Image auf die SD-Karte kopieren
  3. SD-Karte nun in den Raspberry und ersten Start ausführen
  4. Einloggen (direkt oder per ssh) mit Benutzer: root und Passwort: root
  5. Arch Linux Deutsch (Sprache und Tastaturlayout) beibringen:
    echo LANG=de_DE.UTF-8 > /etc/locale.conf
    echo LC_COLLATE=C >> /etc/locale.conf
    echo KEYMAP=de-latin1 > /etc/vconsole.conf
  6. Zeitzone auf Berlin korrigieren:
    ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
    Sollte die Fehlermeldung kommen:
    ln: failed to create symbolic link '/etc/localtime': File exists
    ist die Datei /etc/localtime zu löschen und der Befehl zu wiederholen
  7. Möchte man den Hostnamen alarmpi ändern editiere man die Datei /etc/hostname z.B. mit nano /etc/hostname und setze bei den gewünschten Namen; hier homepage (nano beenden mit Strg-X, mit y bestätigen und /etc/hostname ersetzen lassen)
  8. Namensauflösung noch nach 7. in /etc/hosts bekannt machen: nano /etc/hostsarchlinux_etc/hosts
    Der Name direkt unter hostname sollte der gleiche sein wie in/etc/hostname . In meinem Beispiel homepage.
  9. Neustart um Einstellungen zu übernehmen: shutdown -r now
  10. Nun System aktualisieren: pacman -Syu (kann eine Weile dauern)
  11. Passwort der Benutzers root ändern (wichtig!): passwd Passwort eingeben und ein zweites Mal bestätigen
  12. Sudo noch installieren, um als Normalnutzer adminstrative Aufgaben zu erledigen: pacman -S sudo
  13. Um normalen Nutzern sudo zu erlaben in der Datei /etc/sudoers die Raute vor #%wheel ALL=(ALL) ALL entfernen und speichern.
    sudoers
  14. adduser installieren mit pacman -S adduser
  15. Neuen Benutzer hinzufügen adduser
    Als Gruppe sollte wheel stehen! Sonst Werte auf default lassen.
    adduser
  16. Verbindung als root trennen exit und schauen ob alles funktioniert.
    loginuser
  17. Jetzt ist das Grundsystem fertig. Man sollte sich jetzt ein Abbild der SD-Karte machen um diese Prozedur nicht unnötig wiederholen zu müssen (Festplattenabbild mit Linux Hausmitteln).

 

 

Elsterglanz – die Putzrache der DDR

JEDEM „Ossi“ ein Begriff: „Elsterglanz“, die Waffe gegen Rost, Schmutz usw.

Gibt es ca. halbjährlich beim A. (ldi) für 2,79€ die Tube (150ml). Der Zonenpreis dagegen war ein Lacher (66 Pfenige der DDR für 50ml macht in Euro knappe 10 Cent für die 150ml). Der Vertrieb! erfolgt über die Ahrenshof GmbH (www.ahrenshof.de).

Meines Wissens gab es Elsterglanz vor 1989 nur in einer Variante.  Welche die heute ist, ist mir unklar bzw. vielleicht ist die ganze Rezeptur verändert worden.

Beim A. (ldi) waren in der KW 26 2014 diese Produkte im Angebot:

Witze

Ein stolzer Hahn geht täglich in den Hühnerstall um 9 von 10 Hennen zuküssen. Der 10ten Henne rupft er jedes Mal eine Feder aus.

Nach einer Woche stinkt es der Henne und sie stellt den Hahn zur Rede: „Jeden Tag kommst du zu uns in den Hühnerstall und küsst die anderen Hennen. Mir aber rupfst du jedes Mal eine Feder aus! Warum machst du das?“

Der Hahn schaut ihr tief in die Augen und meint: „Disch….will isch naggisch sähn….Bäby !!!!!“ („Dich….will ich nackig sehen….Baby !!!!!“)