[GELÖST] Selbstbau nanoCUL mit FTDI Chip sendet aber empfängt nicht

Begonnen von thgorjup, 09 September 2017, 02:06:05

Vorheriges Thema - Nächstes Thema

thgorjup

Hallo zusammen,

habe mir drei Selbstbau nanoCUL's gebaut. Einen Atmega328P und zwei mit FTDI Chip.
Der Atmega328P funktioniert nach dem Flashen wundbar und reagiert auch mit "minicom" auf SHIFT+V [Enter] mit "V 1.66 nanoCUL868".
Diesen kann ich in FHEM problemlos verwenden.

Die beiden mit FTDI Chip machen Probleme. Sie reagieren nicht in "minicom" und ich bekomme nach dem Ausstieg aus "minicom" solange keinen Prompt bis ich den CUL vom USB-Port abziehe. Nur über "screen /dev/ttyUSB0 38400" und SHIFT+V [Enter] bekomme ich die Ausgabe  "V 1.66 nanoCUL868".

In FHEM werden die mit FTDI Chip zwar initialisiert und ich kann Kommandos senden, aber es kommt nichts zurück. Mein HM Rolladen reagiert z.B. mit MISSING ACK.
Intertechno Steckdosen lassen sich garnicht schalten.

Hat jemand eine Idee? Muss ich die Arduino's mit FTDI Chip evtl. anders flashen? Ich habe auch schon Pin25+Pin26 gebrückt. Keine Änderung.


root@fhem:/opt/culfw-1.66/Devices/nanoCUL# make program
#@if test ! -d /sys/class/gpio/gpio17; then echo 17 > /sys/class/gpio/export; fi
#@if test ! -d /sys/class/gpio/gpio18; then echo 18 > /sys/class/gpio/export; fi
#echo out > /sys/class/gpio/gpio17/direction
#echo out > /sys/class/gpio/gpio18/direction
#echo 0 > /sys/class/gpio/gpio17/value
#echo 0 > /sys/class/gpio/gpio18/value
#sleep 1
#echo 1 > /sys/class/gpio/gpio17/value
#sleep 1
#echo 1 > /sys/class/gpio/gpio18/value
avrdude -D -p atmega328p -P /dev/ttyUSB0 -b 57600 -c arduino    -U flash:w:nanoCUL.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e950f
avrdude: reading input file "nanoCUL.hex"
avrdude: input file nanoCUL.hex auto detected as Intel Hex
avrdude: writing flash (22370 bytes):

Writing | ################################################## | 100% 9.02s

avrdude: 22370 bytes of flash written
avrdude: verifying flash memory against nanoCUL.hex:
avrdude: load data flash data from input file nanoCUL.hex:
avrdude: input file nanoCUL.hex auto detected as Intel Hex
avrdude: input file nanoCUL.hex contains 22370 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 9.54s

avrdude: verifying ...
avrdude: 22370 bytes of flash verified

avrdude: safemode: Fuses OK (E:00, H:00, L:00)

avrdude done.  Thank you.

root@fhem:/opt/culfw-1.66/Devices/nanoCUL# ls -l /dev/serial/by-id/
insgesamt 0
lrwxrwxrwx 1 root root 13 Sep  9 01:53 usb-FTDI_FT232R_USB_UART_00000000-if00-port0 -> ../../ttyUSB0




Danke und Gruß
Thomas


FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy

Beta-User

Ideen:
- den CUL resetten (irgendein raw-Befehl bzw. die FHEM-Funktioalität): Damit wird auch der CC1101  auf funktionierende Empfangswerte gesetzt
- Spannungsversorgung: Ggf. mal einen aktiven Hub zwischenschalten
- Nachsehen, ob das kein fake-FTDI ist (ich programmiere dazu die Seriennummer und die Herstellerinfos (Text, nicht ID) um. Geht mit dem Tool von FTDI für windo.* oder: (für Linux, das nutze ich): http://rtr.ca/ft232r/

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

thgorjup

Danke, das hat geholfen.

Die PID ist in Ordnung. Sie hat keine Nullen.

root@fhem:# lsusb|grep FT232
Bus 001 Device 004: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC


Aber die Serial hatte lauter Nullen:

root@fhem:/opt/ft232r_prog-1.25# ls -l /dev/serial/by-id/
insgesamt 0
lrwxrwxrwx 1 root root 13 Aug  6 20:48 usb-FTDI_FT232R_USB_UART_00000000-if00-port0 -> ../../ttyUSB0


die habe ich geändert:

root@fhem:/opt/ft232r_prog-1.25# ./ft232r_prog --old-serial-number 00000000 --new-serial-number TG100470

ft232r_prog: version 1.25, by Mark Lord.
       eeprom_size = 128
         vendor_id = 0x0403
        product_id = 0x6001
      self_powered = 0
     remote_wakeup = 1
suspend_pull_downs = 0
     max_bus_power = 90 mA
      manufacturer = FTDI
           product = FT232R USB UART
         serialnum = TG100470
   high_current_io = 0
  load_d2xx_driver = 0
      txd_inverted = 0
      rxd_inverted = 0
      rts_inverted = 0
      cts_inverted = 0
      dtr_inverted = 0
      dsr_inverted = 0
      dcd_inverted = 0
       ri_inverted = 0
           cbus[0] = TxLED
           cbus[1] = RxLED
           cbus[2] = TxDEN
           cbus[3] = PwrEn
           cbus[4] = Sleep
Rewriting eeprom with new contents.

root@fhem:/opt/ft232r_prog-1.25# ls -l /dev/serial/by-id/
insgesamt 0
lrwxrwxrwx 1 root root 13 Sep  9 10:49 usb-FTDI_FT232R_USB_UART_TG100470-if00-port0 -> ../../ttyUSB0


Danach aus/ein gesteckt und das RAW Kommando abgesetzt.

set myCUL raw B00


Anschließend nochmal aus/ein gesteckt und siehe da, jetzt kriegt der nanoCUL auch Antworten zurück.
Prima! Vielen Dank.

Gruß
Thomas

FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy