Forum: Compiler & IDEs Linux 17.3 DIY K150 v150807


von Philipp B. (phbu)


Angehängte Dateien:

Lesenswert?

Hallo Forumnutzer,


habe zuvor in meinem Leben noch nie PIC-µC programmiert und brauche nun 
Eure Hilfe.
Ich hoffe die Kategorie meines Beitrages ist einigermaßen richtig...

Ich habe nun neben mir ein K150-Programmer (ich weiß - billig, aber 
irgendwie wird das schon gehen ^_^) mit einem PIC16F737-I/SP im Sockel 
neben mir liegen. Er ist wie auf dem Bild K150_0.png von der 
Programmiersoftware gesteckt.

Aktuell arbeite ich auf einem Linux Mint 17.3-Rechner. Wine 1.9.15 ist 
aktuell am Laufen. Die Programmiersoftware habe ich spaßenshalber auch 
mit hinzugefügt.
Beim Start des Programms erhalte ich schon die erste Fehlermeldung (s. 
Bild K150_1.png).

Das "Gerät" (K150) ist bei mir mit "/dev/ttyUSB0" verbunden. Wie kann 
ich wine so konfigurieren, dass er bspw. COM1 (Windows) mit /dev/ttyUSB0 
gleichsetzen soll?
Theoretisch müsste es ja dann funktionieren.


Freue mich auf jede Hilfe!


Mit freundlichen Grüßen
PHBU

von Philipp B. (phbu)


Lesenswert?

Hallo nochmal,


habe jetzt mal versucht im Verzeichnis ~/.wine/dosdevices/ mit folgendem 
Befehl ttyUSB0 COM1 zuzuweisen:
1
ln -s /dev/ttyUSB0 com1
Wurde erfolgreich erstellt - das Programm bringt aber immer noch die 
gleiche Fehlermeldung - was habe ich da falsch gemacht?

Mit freundlichen Grüßen
PHBU

von mh (Gast)


Lesenswert?

Zitat von WineHQ: "Make sure you have the needed access rights to that 
device."
Ist dem so?

von Philipp B. (phbu)


Lesenswert?

Hallo mh,


>> Ist dem so?
Oh, scheinbar nicht.

Also cat erkennt, dass ein Gerät an diesem Port angeschlossen ist.
Gebe ich
1
sudo cat /dev/ttyUSB0
ein, so lauscht cat an dem Port - ziehe ich den Programmer von der 
Schnittstelle ab, so bekommt cat ein "end-of-file".

Versuche ich allerdings mit
1
sudo echo "Test" > /dev/ttyUSB0
auf den Port zu schreiben, so erhalte ich die Fehlermeldung
1
bash: /dev/ttyUSB0: Keine Berechtigung
.

Als sudo?? Da steh ich jetzt auf dem Schlauch.

Kannst Du mir da weiterhelfen?

Danke für deine Antwort!


Mit freundlichen Grüßen
PHBU

von Rolf M. (rmagnus)


Lesenswert?

Philipp B. schrieb:
> Als sudo?? Da steh ich jetzt auf dem Schlauch.

Bringt halt nicht viel, echo als root laufen zu lassen und dann dessen 
Ausgabe in der als normaler User laufenden Shell umzuleiten.

Philipp B. schrieb:
> Kannst Du mir da weiterhelfen?

Füge deinen User mal der Gruppe dialout hinzu.

von Philipp B. (phbu)


Angehängte Dateien:

Lesenswert?

Hallo rmagnus,


> Bringt halt nicht viel, echo als root laufen zu lassen und dann dessen
> Ausgabe in der als normaler User laufenden Shell umzuleiten.

Stimmt... Aber als Superuser geht das auch nicht:
1
sudo -s
2
echo "Test" > /dev/ttyUSB0
Gibt mir zwar keine Fehlermeldung zurück - der Programmer empfängt 
allerdings auch nichts.
Ist er kaputt? Das MKII USB hat bei so welchen Aktionen immer eine 
Rückmeldung (LED-blinken) gegeben.
Das habe ich immer mit CuteCom gemacht - funktioniert allerdings auch 
nicht mit dem K150.

Im Anhang habe ich das Program picprog.py hochgeladen.
Dieser gibt mir auch eine Fehlermeldung zurück:
1
[sudo] password for user: 
2
Waiting for user to insert chip into socket with pin 1 at socket pin 1
3
Chip detected.
4
Erasing Chip
5
Programming ROM
6
ROM programming failed.
7
Error: Communication failure.  This may be a bug in this script or a problem with your programmer hardware.

Vllt. sollte ich das ganze mal mit einem Windows-Laptop probieren.


Mit freundlichen Grüßen
PHBU

von Norbert (Gast)


Lesenswert?

Wieso wird hier ständig mit root rumgewurstelt, warum macht man es nicht 
richtig?
1
norbert@Entwicklung:~$ ls -l /dev/*U*
2
crw-rw---- 1 root dialout 188, 0 Jul 30 10:24 /dev/ttyUSB0
Also einmal als root:
1
adduser <BENUTZER> dialout
Abmelden, anmelden, fertich!

von Philipp B. (phbu)


Lesenswert?

Hallo Norbert,


> Abmelden, anmelden, fertich!
Gut, hab ich gemacht - geht jetzt auch ohne sudo. Trotzdem blinkt nichts 
am Programmer...

von Norbert (Gast)


Lesenswert?

Philipp B. schrieb:
> Hallo Norbert,
>
>
>> Abmelden, anmelden, fertich!
> Gut, hab ich gemacht - geht jetzt auch ohne sudo. Trotzdem blinkt nichts
> am Programmer...

Na ja, blinken ist auch nicht die Hauptaufgabe eines 
Programmieradapters;-)
Das er auf die Zeichenfolge "Test" reagiert halte ich für eher 
unwahrscheinlich.

Kann man in der fragwürdigen Windows Applikation denn nun COM1: 
auswählen?
Kann man ein Device auslesen?

von Philipp B. (phbu)


Angehängte Dateien:

Lesenswert?

Hallo Norbert,


hier nochmal der Aufbau des Verzeichnis ~/.wine/dosdevices/:
1
/home/phbu/.wine/dosdevices/
2
├── [   8]  a:: -> /dev/sdb
3
├── [  10]  c: -> ../drive_c
4
├── [  12]  com1 -> /dev/ttyUSB0
5
├── [   8]  e:: -> /dev/sr0
6
├── [   8]  f:: -> /dev/sdd
7
├── [   9]  g:: -> /dev/sdb1
8
├── [  10]  h: -> /home/phbu
9
├── [   9]  i:: -> /dev/sdd1
10
├── [  21]  j: -> /media/phbu/USB-Stick
11
├── [   9]  j:: -> /dev/sdc1
12
├── [   8]  k:: -> /dev/sde
13
├── [   9]  l:: -> /dev/sde1
14
├── [   8]  m:: -> /dev/sdf
15
├── [   8]  n:: -> /dev/sdb
16
├── [   8]  o:: -> /dev/sdc
17
├── [  11]  x: -> /media/NAS/
18
└── [   1]  z: -> /
19
20
 4.3k used in 4 directories, 13 files
Im Anhang sieht man ein Video, wie die Fehlermeldungen aussehen.


Mit freundlichen Grüßen
PHBU

: Bearbeitet durch User
von Norbert (Gast)


Lesenswert?

Hmmm, auf der Linuxseite scheint alles korrekt konfiguriert zu sein.

Welche Baudrate erwartet der Programmer?

Vielleicht vorher mal mit:
1
stty 115200 -F /dev/ttyUSB0
setzen und mit:
1
stty -F /dev/ttyUSB0
überprüfen. Eventuell mal die gängigsten 9600,19200,38400,57600,115200 
testen.

von Rolf M. (rmagnus)


Lesenswert?

Philipp B. schrieb:
> Gibt mir zwar keine Fehlermeldung zurück - der Programmer empfängt
> allerdings auch nichts.
> Ist er kaputt? Das MKII USB hat bei so welchen Aktionen immer eine
> Rückmeldung (LED-blinken) gegeben.

Ist denn die Baudrate korrekt? Hat der Programmer eine LED, die die 
RS232-Aktivität anzeigt?

> Waiting for user to insert chip into socket with pin 1 at socket pin 1
> Chip detected.
> Erasing Chip
> Programming ROM
> ROM programming failed.
> Error: Communication failure.  This may be a bug in this script or a
> problem with your programmer hardware.

Das klingt für mich, als könne er eine Verbindung aufbauen, aber 
scheitert dann irgendwann später.

Norbert schrieb:
> Also einmal als root:
> adduser <BENUTZER> dialout

Hatte ich ja auch schon geschrieben:

Rolf M. schrieb:
> Füge deinen User mal der Gruppe dialout hinzu.

von Philipp B. (phbu)


Angehängte Dateien:

Lesenswert?

Hallo Norbert,


habe mal spaßenshalber mit CuteCom nochmal mit 9600 Baud an /dev/ttyUSB0 
gelauscht. Mit cat ging es vermutlich wegen dem "end-of-file" nicht.
Also senden tut er etwas (s. Video).

Mit deinem Code bekomme ich bei allen vorgeschlagenen Baudraten folgende 
Rückgabe (speed variiert hier natürlich):
1
speed 9600 baud; line = 0;
2
eof = <undef>; min = 0; time = 0;
3
ignbrk -brkint -icrnl -imaxbel
4
-opost -onlcr
5
-isig -icanon -iexten -echo -echoe -echok noflsh -echoctl -echoke

von Norbert (Gast)


Lesenswert?

Ja, schon klar.

Die Frage welche sich stellt ist:
Hast du für jede mit stty eingestellte Baudrate getestet ob der 
Programmierer damit evtl. funktioniert?

Wie gesagt, Linux alles OK
Kann jetzt noch Wine sein bzw. esotherische Win-Funktionen des 
Programmers welche von Wine nicht unterstützt werden.

von Philipp B. (phbu)


Lesenswert?

Hallo Norbert,

> Hast du für jede mit stty eingestellte Baudrate getestet ob der
> Programmierer damit evtl. funktioniert?

Ja (also die gängigsten Baud-Raten, s. o.), ohne Erfolg.
Ich schau nochmal, ob der Programmer an einem Windows-Laptop 
funktioniert. Vllt. ist auch der Programmer im A****, da 
Billig-China-Ware.

Ich melde mich dann nochmal.

Danke für Eure Ratschläge!


Mit freundlichen Grüßen
PHBU

von Philipp B. (phbu)


Lesenswert?

Hallo nochmal,


also der Programmer scheint defekt zu sein. Selbst auf einem Windows 
XP-Rechner funktioniert er mit installiertem COM<->USB-Treiber nicht.

Falls einer von Euch PIC-Controller mit Linux programmiert: Was für ein 
(zuverlässigen :-)) Programmer verwendet Ihr und welche Software?
Würde mir dann lieber einen vernünftigen holen.

Danke nochmal für Eure Hilfe!

Mit freundlichen Grüßen
PHBU

von Philipp B. (phbu)


Lesenswert?

Hallo nochmal,


benutzt einer von Euch vllt. so einen Programmer (PicKit2-kompatibel)?
http://www.voelkner.de/products/585420/Diamex-PIC-Programmierer-Geeignet-fuer-USB-Port.html

Irgendetwas was garantiert Linux-kompatibel ist...

Danke für Eure Antworten!


Mit freundlichen Grüßen
PHBU

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.