Author Topic: TinyI2C_LCD  (Read 68128 times)

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #60 on: July 23, 2013, 05:19:21 PM »
Ich wär zwar ziemlich sicher, dass ich alles neu aus dem github Repo gezogen und geflasht habe, aber ein erneutes Flashen des ATtiny hat Abhilfe geschaffen, also werd ich wohl irgendwo noch die alte TinyWireS hergehabt haben auch wenn ich jetzt grad nicht sehe wie - sorry für den falschen Alarm, jetzt mag er mich auch mit delay(1); .


pylon

  • freakyfriday
  • Full Member
  • *
  • Posts: 158
  • Karma: +16/-0
Re: TinyI2C_LCD
« Reply #61 on: July 26, 2013, 03:03:25 PM »
Nach einigen gröberen Umstellungen in der Firmware ist die SPI-Basis jetzt integriert und der I2C-Teil läuft wieder (den hatte ich zwischenzeitlich mal komplett verschossen). Nun kommt die Bibliothek und das SPI-Debugging dran (meine Platine ist jetzt noch mehr gemoddet, davon darf ich aber keine Bilder mehr posten :) ). Die TinyWireS-Bibliothek musste auch ein paar Federn lassen, da SPI die gleiche Hardware (USI) benutzt und ich somit den Interrupt-Vektor mehrfach verwenden muss. Zum Glück hatten wir die ja schon in unser Projekt integriert.

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #62 on: July 27, 2013, 03:29:28 PM »
Prima, ich freu mich schon drauf mit SPI zu testen. Die Änderungen hast Du aber noch nicht comitted oder ? Ein pull hat bei mir nichts neues gebracht.
Die neuen Boards (auch die von Mathias) hoffe ich nächste Woche zu erhalten, die gehen dann gleich an Euch beide wieder raus.

ATtiny84A in SOIC Gehäuse sind ebenfalls unterwegs und sollten auch in den nächsten tagen bei uns eintreffen.

pylon

  • freakyfriday
  • Full Member
  • *
  • Posts: 158
  • Karma: +16/-0
Re: TinyI2C_LCD
« Reply #63 on: July 29, 2013, 10:36:20 AM »
Committed schon, aber noch nicht auf GitHub, aber das dürftest Du gemeint haben. SPI funktioniert noch nicht. Ich weiss zwar, dass ich irgendwas erhalte, aber ich muss wahrscheinlich noch einige Debugging-Session machen, bis das wirklich funktioniert. Die Doppelbelegung von MISO scheint mehr Probleme zu bereiten, als ich angenommen hatte.

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #64 on: July 31, 2013, 02:49:18 PM »
Kein Problem, ich bin nur noch etwas unsicher mit git und deshalb die Nachfrage ;-)
Übrigens: Gerade eben angekommen:



Leider fehlen noch die SOIC ATtiny, die hätten heute auch noch kommen müssen, nun wirds Freitag. Am kommenden Montag gehen SMD und normale Kits an Euch raus.

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #65 on: August 07, 2013, 02:50:17 PM »
Die Kits gingen leider erst gestern abend raus, aber zumindest Pylon sollte seine heute erhalten haben. Leider ist mir nun aufgefallen, dass ich vor lauter "muss-noch-raus-heute" den female header vergessen habe beizulegen. Falls einer von Euch keine mehr hat, bitte kurz Bescheid geben damit ich diese nachsenden kann.

pylon

  • freakyfriday
  • Full Member
  • *
  • Posts: 158
  • Karma: +16/-0
Re: TinyI2C_LCD
« Reply #66 on: August 08, 2013, 02:10:07 PM »
Vielen Dank für das Paket, meines war gestern in der Post. Die Header sind kein Problem, habe genug davon vorrätig.

Schon eher Richtung Problem geht bei mir das SMD-Löten (dass ich eher der Software-Typ bin, habt Ihr wahrscheinlich schon bemerkt). Wie macht Ihr das? Ich habe mitbekommen, dass das  (im normalen Ausmass) Auftragen von Lötzinn und danach Entfernen desselben mittels Entlötlitze machbar wäre, wobei erst danach das SMD-Bauteil drauf kommt und durch kurzes Erhitzen fixiert wird. Ist das so machbar oder ratet Ihr zu anderem Vorgehen? Ist die Lötpaste, die Boxtec neu im Angebot hat, für solche Sachen gedacht?

Die Programmierung hängt immer noch, ich habe sehr komisches Verhalten, das auf knappen Speicher hindeutet, werde also mal den etwas optimieren. Bis morgen werde ich meine Version mal auf GitHub pushen, vielleicht findet ja einer von Euch den Fehler.
« Last Edit: August 08, 2013, 02:11:38 PM by pylon »

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #67 on: August 08, 2013, 05:10:14 PM »
Freut mich, dass das mit den Kits geklappt hat.

Das ganze SMD Löten ist halb so wild, grundsätzlich brauchts gar nichts ausser einem temperaturgeregelten Lötkolben mit einer Lötspitze die sich noch nicht im letzten Drittel ihrer Lebenserwartung befindet.
Mir hat dieses Sparkfun Tutorial jegliche Angst (und auch den Respekt) vor SMD genommen und die ersten Erfolgserlebnisse mit FT232 ICs liessen dann auch nicht lange auf sich warten.

Ich persönlich verwende einen Flux Pen und bestreiche damit die Pads vor dem Löten. Dann richte ich den IC mit einer Pinzette schön auf den Pads aus (er haftet durch den Flux Pen schon leicht) und fixiere/verlöte dann ein Bein an einer der Ecken wo ich am besten dazukomme. Sitzt er danach sauber kann man entweder jedes Bein von Hand mit ganz wenig Zinn verlöten oder einfach mit genügend Zinn einmal die ganze Seite zupflastern und danach mit Entlötlitze überflüssiges Zinn auf der ganze Seite entfernen.
Zweitere Variante ist vor allem bei vielen Beinen sinnvoll, bei 14 Pins würde ich mir den Aufwand sparen und jedes Bein kurz anlöten und ggf. am Ende überflüssiges Zinn mit Entlötlitze entfernen. Den Flux Pen kann ich beiden Methoden empfehlen. Zweitere setzt ihn voraus, bei ersteren wirds etwas sicherer/einfacher dadurch.
Einen Flux Pen schicke ich Dir gerne, lass mich wissen ob Du einen möchtest, ich würde Dir auch noch einen Reserve ATtiny84SSU mitschicken, das erhöht die gefühlte Sicherheit beim ersten Versuch auch noch etwas Reserve zu haben. Heut reichts nicht mehr, aber wenn wirs morgen per A-Post schicken hast Du es auch am Samstag im Briefkasten.

Lötpaste ist nur sinnvoll wenn Du einen Rework Ofen oder Rework Station hast. Diese wird, meist mit einer Stencil genannten Schablone, genau auf die Pads aufgetragen - selten auch von Hand, danach "pappt" man den IC exakt drauf und erhitzt die ganze Geschichte mit heisser Luft. Die Paste wird einfach gesagt zu Lötzinn und erstellt automatisch Lötstellen da wo es welche hat. Dies wird vor allem eingesetzt wenn es um viele Pins mit kleinen Abständen geht, z.B. ein TQFP48 oder gar ein BGA.


pylon

  • freakyfriday
  • Full Member
  • *
  • Posts: 158
  • Karma: +16/-0
Re: TinyI2C_LCD
« Reply #68 on: August 09, 2013, 01:41:33 AM »
Einen Flux-Pen habe ich schon (von Euch  :) ), auch wenn ich ihn bisher noch nicht einzusetzen wusste. Ich werde mich also mal am SOIC-Chip versuchen, aber nicht mehr vor den Ferien (bei mir ab Montag).
Das normale Kit ist auch noch nicht fertig, da in meinem ein 28-Pin-Sockel war und ich keine 14-Pin-Sockel in meinem Sortiment führe (bisher). Einen 16-Pin-Sockel zu verwenden (die hätte ich vorrätig), macht auch wenig Sinn, da dann R4 fast keinen Platz mehr hat. Das muss also auch bis nach den Ferien warten, dann habe ich auch genügend Zeit, mein Sortiment zu ergänzen.

Den aktuellen Stand (mit Debugging-Ausgabe auf dem Display) habe ich auf GitHub gepushed. Wenn einer von Euch mal Zeit hat und das testen könnte, wäre mir geholfen. Bei mir bekomme ich von der common_available()-Funktion immer 3 zurück (5. Zahl in der unteren Zeile), während die lokale Berechnung plausiblere Werte (3. Zahl untere Zeile) ergibt. Dieses Verhalten ist mir zur Zeit unerklärlich, ich suche zur Zeit nach Buffer Overflows und ähnlichem, ist die einzige Möglichkeit, die mir noch einfällt.

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #69 on: August 09, 2013, 11:01:46 AM »
 :-\
Das nennt man deformation professionelle, in der 328er Variante...
Entschuldigung, die BOM auf Github war auch falsch, damit hab ich die Kits zusammengestellt, die BOM ist nun korrigiert.

2x 14-Pin Sockel und ein Reserve SOIC ATtiny gehen heute per A-Post raus.

@MathiasW: Dir gebe ich diese gerne am nächste Freaky Friday mit, auch Du hast 28Pin Sockel erhalten.

pylon

  • freakyfriday
  • Full Member
  • *
  • Posts: 158
  • Karma: +16/-0
Re: TinyI2C_LCD
« Reply #70 on: August 30, 2013, 12:41:54 AM »
Melde mich aus den Ferien zurück. Nun konnte ich endlich die neue Platine zusammenlöten, aber leider hatte ich keinen Erfolg damit. Obwohl ich meiner Meinung nach alle Verbindungen überprüft habe, kann ich das Display zu keinen Output bewegen. Die Hintergrundbeleuchtung zu verändern, klappt prima, aber sonst kriege ich keinen Feedback.
Zur Sicherheit hatte ich auch den ATtiny mit dem alten Board gewechselt, um diese Fehlerquelle auszuschliessen.

Funktioniert das neue Board bei Euch?

Edit: Meine Vermutung geht Richtung Kontrast-Regelung. Ohne Display kriege ich etwa einen Drittel so grosse Werte wie vorher, mit Display sind es immer mindestens 1.5V. Kann es sein, dass der vergrösserte Widerstand des RC-Glieds dafür verantwortlich ist?
« Last Edit: August 30, 2013, 12:57:53 AM by pylon »

pylon

  • freakyfriday
  • Full Member
  • *
  • Posts: 158
  • Karma: +16/-0
Re: TinyI2C_LCD
« Reply #71 on: August 31, 2013, 04:11:42 AM »
Nach etwas Nachtarbeit ist jetzt auch das SMD-Board zusammengelötet (auch wenn die konv. Bauteile nicht leicht auf die SMD-Pads zu bringen waren). Leider habe ich den selben Effekt wie beim THT-Board. Beim Widerstand für den Kontrast (R1 bzw. R2) messe ich (auf der Prozessor-Seite) ca. 0.5V (beim einem PWM von 30), nach dem Widerstand (beim Kondensator) jedoch 1.9V. Am Widerstand fällt also fast 1.4V ab.
Bei der 0.9er Version habe ich 0.2V (vor) und 0.6V (nach dem Widerstand), somit fällt dort nur 0.4V ab. Mein Problem ist, dass ich bei den neuen Boards nicht unter die 1.5V komme, egal, welchen PWM-Wert ich einstelle. Kann sich jemand von Euch einen Reim darauf machen?
Interessant ist auch, dass ich diese Werte nur messe, wenn das Display angeschlossen ist. Ohne Display ergeben auch die neuen Boards 0.3V und 0.6V.
Ist das bei Euch auch so?

Die Werte ergeben, dass das Display auf dem Kontrastpin ca. 0.3mA konsumiert (wenn ich das richtig interpretiere). Schräg finde ich allerdings, dass die 1.4V am Widerstand auch abfallen, wenn ich einen PWM-Wert von 0 programmiere, beim alten Board jedoch in diesem Fall über den Widerstand keine Spannung messbar ist.
Es kann natürlich sein, dass mir das Multimeter bei den PWM-Werten keine korrekten Messwerte liefert, aber mir ist der Grund dafür nicht klar, vor allem, da die alte Version plausible und erklärbare Messwerte liefert.
Womit liege ich falsch?

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #72 on: September 02, 2013, 04:16:56 PM »
Es tut mir leid, dass ich nicht früher geantwortet habe. Ich habe gehofft, das Wochenende lässt Zeit um da wieder einzusteigen nachdem ich es zugunsten anderer Sache abräumen musste, aber leider kamen dann aufwandintensive Netzwerkprobleme dazwischen und die Pendenzen haben sich in der Zwischenzeit aufgetürmt.

Ich habe einen ähnlichen Status zurzeit, aber bei beiden Boards, daher vermute ich eher ich hab beim "schnell Firmware hochladen" wieder irgendwo was altes reingenommen.

Ich melde mich morgen spät. Mittoch wieder mit fundierten Resultaten.
Die THT statt SMD Widerstände für das SMD Kit sind nicht wirklich clever von mir gewesen. Ich wollte da schon neue nachschicken und das dann melden, aber die sind leider noch nicht gekommen. (Da sollten dann auch wieder 150 Ohm Widerstände statt 180 dabei sein, wobei ich nicht wirklich überzeugt bin, dass dies das einzige Problem ist).

pylon

  • freakyfriday
  • Full Member
  • *
  • Posts: 158
  • Karma: +16/-0
Re: TinyI2C_LCD
« Reply #73 on: September 03, 2013, 03:38:11 PM »
Quote
Ich habe einen ähnlichen Status zurzeit, aber bei beiden Boards, daher vermute ich eher ich hab beim "schnell Firmware hochladen" wieder irgendwo was altes reingenommen.

Bei mir ist das auch bei beiden neuen Boards der Fall, nur das alte funktioniert noch wie gewünscht (ausser der SPI-Software).

Quote
Da sollten dann auch wieder 150 Ohm Widerstände statt 180 dabei sein, wobei ich nicht wirklich überzeugt bin, dass dies das einzige Problem ist

Der 180Ω-Widerstand ist bei mir für das Backlight verbaut. War das nicht so gedacht? Beim Kontrast verwende ich den 220nF-Kondensator und den 4k7-Widerstand.
Ich werde nochmals durchgehen, ob ausser der Backlight-Regelung und dem Pull-Down-Widerstand für D10 (PA0) noch etwas anderes geändert hat. Diese Modifikationen hatte ich nämlich schon am alten Board vorgenommen, dann wäre nur noch der 4k7- anstatt 1k-Widerstand als Unterschied vorhanden, was ja relativ einfach zu ändern wäre.

boxtec-support

  • freakyfriday
  • Hero Member
  • *
  • Posts: 787
  • Karma: +15/-0
    • Boxtec Web
Re: TinyI2C_LCD
« Reply #74 on: September 03, 2013, 09:43:34 PM »
Quote
Der 180Ω-Widerstand ist bei mir für das Backlight verbaut. War das nicht so gedacht? Beim Kontrast verwende ich den 220nF-Kondensator und den 4k7-Widerstand.
Ich werde nochmals durchgehen, ob ausser der Backlight-Regelung und dem Pull-Down-Widerstand für D10 (PA0) noch etwas anderes geändert hat. Diese Modifikationen hatte ich nämlich schon am alten Board vorgenommen, dann wäre nur noch der 4k7- anstatt 1k-Widerstand als Unterschied vorhanden, was ja relativ einfach zu ändern wäre.

Das ist definitiv falsch mit dem 4.7k, da gehört ein 1k rein. Ich seh auch woher ich das habe, im Schema war der offenbar als 4.7k. Auf meinem ersten Board ist natürlich auch ein 1k. An und für sich müsste aber bei 100% PWM duty auch da irgendwann eine vernünftige Spannung anliegen, da muss noch woanders ein Problem liegen, aber ich habs bisher nicht gefunden.

 

anything