Dienstag, 30. Juni 2015

AmbiController v0.4.1 - auf tindie.com

Es ist soweit, ich habe auf Tindie einen Artikel angelegt. Es handelt sich dabei um die die jeweils aktuelle Version der Platine. Heute die Version v0.4.1. Diese beinhaltet alle für die v0.4 - Hardware beschriebenen Funktionen.

Bei einer Bestellung lege ich voraussichtlich die folgenden Inhalte der Lieferung bei:
  • Die Platine (siehe hier, nur ohne Bugs)
  • Anleitung (deutsch) in der der Aufbau der Platine und der LED-Streifen beschrieben ist
  • Liste der benötigten Werkzeuge (mechanische als auch elektronische)
  • Liste der benötigten Bauteile für den Aufbau
  • Liste der optional benötigten HDMI-Geräte
  • Angaben zu dem benötigten LED-Streifen und zum Netzteil
  • CDROM/DVD mit einem Snapshot der aktuellen Software und Konfigurationsdateien


Was die Lieferung nicht enthält:
  • Bauteile/Kabel etc.
  • Optionale HDMI-Hardware
  • AVR XMega/Altera Cyclone IV kompatible JTAG-Programmieradapter
  • Netzteil
  • LED-Streifen
  • Ein Gehäuse für den AmbiController


Die Lieferzeit wird einige Wochen dauern, da ich keine Platinen sowie keine der oben genannten Inhalte auf Lager habe. Als eine weitere Option werde ich voraussichtlich ein Paket an Bauteilen zusammenstellen welche optional mitbestellt werden kann. Weiterhin bin ich daran zu testen ob ich eine teilweise vorgefertigte Platine liefern kann, auf der zumindest die ICs aufgelötet sind und ggfls. die Software und das FPGA-Design bereits geflasht worden ist. Auch werde ich prüfen ob es mir möglich sein wird vorgefertigte LED-Streifen anzubieten.

Eine vollständig aufgebaute Platine werde ich nicht anbieten, dies liegt an den Bestückungskosten. Der Preis liegt für kleine prototypischen Stückzahlen bei ca. 350€ pro Platine.

Wie dem Aufmerksamen Leser sicher aufgefallen ist befindet sich das Ganze im Aufbau, Änderungen behalte ich mir also vor.

Ich freue mich auf die ersten Anfragen und vor allem auf konstruktive Rückmeldung/Anregungen.

Dienstag, 9. Juni 2015

AmbiController v0.4 - Bugfix

Wie ich in meinem letzten Post bereits angekündigt hatte war es mein Ziel LED-Streifen an meinem TV anzubringen. Das ist nun erledigt und die neue Hardware wurde ausgiebig getestet. Hier ein paar Bilder dazu.





Hierbei ist noch ein Problem aufgefallen das zu immer schlechter werdenden Farben der Beleuchtung und zu einem starken Flackern geführt hatte. Es handelte sich dabei um ein Temperatur-Problem das dazu geführt hatte, dass der FPGA vom Videoprozessor fehlerhafte Daten empfangen hat. Dies lag aber nicht, wie zu erwarten wäre, daran das der Videoprozessor falsche Daten gesendet hätte. Sondern der FPGA hatte scheinbar ein Problem damit das sich der Eingangs-Tackt des Videoprozessors zum FPGA in Abhängigkeit zu der Temperatur verändert hatte. Der Videoprozessor, inklusive einem der dazugehörigen Spannungsregler, innerhalb von 1-2 so warm das man diesen nicht mehr mit der Hand oder einem Finger berühren konnte.

Da man sich das ganze nur schwer vorstellen kann habe ich das Problem aufgezeichnet.
Man beachte das während der Aufnahme mehrmals das Signalkabel abgezogen und wieder verbunden wurde, so dass der Videoprozessor zeitweise ein komplett schwarzes Bild übertragen sollte. In den beiden Videos (siehe unten) ist gerade in diesen "schwarzen" Videoanteilen deutlich zu sehen das diese nicht schwarz sind, sondern mehr und mehr fehlerhafte Pixel enthalten. Das eigentlich dargestellte Bild, sobald ein Signal angelegt gewesen ist, war hier nicht relevant.



Hier im zweiten Video ist der Videoprozessor bereits sehr viel wärmer geworden, die Auswirkungen auf das Gesamtsystem sind deutlich zu sehen. 



Das Problem im FPGA wurde damit korrigiert das der der HDMI-Support komplett entfernt worden ist. Damit wurde das Timing in der Synthese deutlich toleranter gegenüber Veränderungen geworden. Als nächster Schritt wird jedoch noch jeweils ein passiver Kühler auf einem der Spannungsregler und auch auf dem Videoprozessor angebracht.

Mit dem entfernen des HDMI-Support aus der Synthese sind damit alle Bildprobleme, welche auf der neuen Hardware aufgetaucht waren, entfernt. Weiterhin habe ich nun noch die Kommunikation des AVR mit dem Flash des FPGA auf 7kB/s herauf optimiert, welche aufgrund eines Compiler-Upgrades zunächst gar nicht mehr funktionierte und zuletzt doch ganze 700 Byte/s erreicht hatte.

Ich bin nun zufrieden, wenn es auch wie immer etwas zu tun gibt ;)

Es wird in den kommenden Wochen voraussichtlich trotzdem eine neue Platine geben, da wie bereits in einem früheren Beitrag beschrieben, ein paar wenige Kleinigkeiten verbessert werden können. Das einzige größere Problem bei der aktuellen Version ist das die 5-Volt Eingangsspannung (von USB) nicht mit den Spannungsreglern auf der Platine verbunden ist. Das verhindert natürlich eine Verwendung bei der nur ein USB-Anschluss verwendet werden soll, hindert aber nicht daran das System mit einem der anderen beiden Anschlüsse mit Spannung zu versorgen. Alle weiteren Änderungen sind lediglich zur Verbesserung der Optik gedacht oder um beispielsweise die Wärme besser von den Chips abführen zu können.

Ich werde wie immer darüber berichten.

UpConverter fixed

Vor einiger Zeit berichtete ich darüber das mein Versuch einen UpConverter für mein rad1o zu bauen leider fehlgeschlagen ist. Es lag an der...