#linuxcnc-devel Logs

Mar 01 2018

#linuxcnc-devel Calendar

11:18 AM seb_kuzminsky: did that ddos take down github again?
11:20 AM sliptonic: I can't reach github either
11:33 AM jepler: no downtime noted here https://status.github.com/messages a 'git ls-remote https://github.com/linuxcnc/linuxcnc' just succeeded for me.
11:33 AM seb_kuzminsky: it's been up and down for me this morning
11:33 AM jepler: weird I thought that site used to have graphs of typical response time on their various services
11:33 AM jepler: it doesn't right now / anymore
11:34 AM seb_kuzminsky: that status page says "updated 23 hours ago"
11:35 AM jepler: yes I agree, it says that for me too
12:04 PM sync: github is up for me
01:15 PM rene-dev: pcw_mesa are you seeing data thats not supposed to be there in the udp?
01:31 PM pcw_mesa: yes
01:33 PM pcw_mesa: At least as far as I understood it Mike_Eitels test just put 4 minimal lines on the LCD labled A,B,C,D
01:35 PM pcw_mesa: But there are at least some 'f' s in the Ethernet data LCD stream which are bogus ( unless I'm wrong about what he's displaying )
01:37 PM rene-dev: but those cant be related to the race bug...
01:38 PM rene-dev: maybe some length issue? the register is 32 bit, but I guess the char thing is only 8 bit?
01:38 PM rene-dev: how long is the process data for the 7i73?
01:39 PM rene-dev: and where in that data is the char?
01:39 PM pcw_mesa: MS byte
01:40 PM pcw_mesa: its byte aligned to easy to see
01:41 PM pcw_mesa: there are home cursor, erase to end of line, CR and LF chars plus some chars (including 'f')
01:42 PM rene-dev: you can put the 7i73 descriptors in my thing, maybe that helps debugging...
01:43 PM rene-dev: https://gist.github.com/rene-dev/dfc771f7669b36e6e57a71ad258a4ee1
01:44 PM rene-dev: its not the most up to date version, as that is now running on a stm32.. but it does exactly what you need. its a 7i92 with 2 sserial devices with floats
01:45 PM rene-dev: the descriptor table is generated by this: https://github.com/rene-dev/stmbl/blob/master/tools/gentable.c#L128
01:46 PM rene-dev: based on that I build a fully working sserial master on stm32 with lwip :D
01:48 PM pcw_mesa: Yeah I dont think the problem is at that leve thoughl (since AFAIK the 7I76E is being sent bogus data by LinuxCNC)
01:48 PM pcw_mesa: (that was OK in 2.7)
01:51 PM pcw_mesa: that is if you have 4 lines in the display with only a,b,c,d labels theres not much call for 'f's
01:51 PM pcw_mesa: I can probably edit the tcpdump log to just list the characters sent to the LCD
01:52 PM rene-dev: but the hal pin seems ok.
01:52 PM rene-dev: so first thing would be to check what the sserial driver puts in the user registers, then check what the low ll driver does with that
01:52 PM rene-dev: but it seems to be related to that commit that only touches params
01:54 PM pcw_mesa: Andy seemed to think that this was hm2_eth only but without an identical test case its hard to tell
01:56 PM pcw_mesa: a race issue would be different with hm2_eth and hm2_pci but that does not explain why 2.7 is OK even though it has the same race bug
01:57 PM rene-dev: I guess thats also an issue, but im not sure if they are related
01:57 PM pcw_mesa: (different because of different register write access times, hm2_eth is much faster at sequential writes)
01:57 PM pcw_mesa: I suspect its something else
01:58 PM rene-dev: ah, is it?
01:58 PM rene-dev: I would have thought eth is slower than pci
01:58 PM pcw_mesa: yeah
01:58 PM pcw_mesa: PCI individual accesses are slow (maybe 750 to 1000 ns)
02:00 PM pcw_mesa: even though the ethernet processor is word banging the data around, its much faster (maybe 250 ns for random 32 bit writes)
02:01 PM pcw_mesa: (25 instructions)
02:07 PM pcw_mesa: the overall transaction time from the host is of course slower with Ethernet but the Ethernet --> FPGA register_write - register_write time is much shorter
02:10 PM rene-dev: Hi andypugh ... did you try moving that stuff around?
02:10 PM andypugh: Not yet. I am still trying to get drives in the post
02:11 PM rene-dev: great
02:11 PM rene-dev: shipping out hardware is annoying, I know
02:19 PM rene-dev: pcw_mesa is there no debug output on the low level driver?
02:20 PM pcw_mesa: low level driver?
02:20 PM rene-dev: in between sserial.c and hm2_eth.c
02:21 PM pcw_mesa: I have not tried turning on all the debug flags (I would also need the hal file with the LCD comp etc)
02:22 PM pcw_mesa: I cany even find my test LCD after we moved
02:23 PM pcw_mesa: I guess mike could be asked to try that
02:27 PM rene-dev: but if you see stuff in tcpdump that isnt suppoed to be there, you dont really need the lcd I guess
02:28 PM pcw_mesa: Nope though it does give a quick indication that everything else is OK
02:31 PM pcw_mesa: if i look through the data stream sent to the LCD there are 'a','b','c','d', and 'f' chars (no 'e's) weird....
03:53 PM pcw_mesa: write-LCD cursor off
03:53 PM pcw_mesa: write-LCD clear screen
03:53 PM pcw_mesa: write-LCD cursor off
03:53 PM pcw_mesa: write-LCD clear screen
03:53 PM pcw_mesa: write-LCD 'd'
03:53 PM pcw_mesa: write-LCD erase eol
03:53 PM pcw_mesa: write-LCD lf
03:53 PM pcw_mesa: write-LCD cr
03:53 PM pcw_mesa: write-LCD nul
03:53 PM pcw_mesa: write-LCD 'f'
03:53 PM pcw_mesa: write-LCD erase eol
03:53 PM pcw_mesa: write-LCD home
03:53 PM pcw_mesa: write-LCD 'd'
03:53 PM pcw_mesa: write-LCD erase eol
03:53 PM pcw_mesa: write-LCD lf
03:53 PM pcw_mesa: write-LCD cr
03:53 PM pcw_mesa: write-LCD nul
03:53 PM pcw_mesa: write-LCD 'f'
03:53 PM pcw_mesa: write-LCD erase eol
03:53 PM pcw_mesa: theres a cleaned up excerpt of mikes tcpdump, very odd...
03:54 PM rene-dev: and that differs from the hal pin?
03:54 PM andypugh: Yes
03:55 PM pcw_mesa: The whole thing:
03:55 PM pcw_mesa: http://freeby.mesanet.com/chars
04:09 PM rene-dev: what is it supposed to be?
04:09 PM rene-dev: I see a pattern with the f...
04:19 PM pcw_mesa: suposed to be a,b,c,d no fs at all
04:25 PM pcw_mesa: there are sections where it alternates a,b c,d and d,f
04:26 PM pcw_mesa: alternates between the pairs or chars I mean
04:28 PM pcw_mesa: I also think the way its done is a bit crazy (better display wise to pad each line with spaces than erase and re-write each line)
04:29 PM pcw_mesa: so static data is not erased and rewritten
04:30 PM andypugh: But how do we tell how many characters there are per line?
04:31 PM andypugh: (The lcd component was meant to be general, though the 7i73 is mainly aimed at 4 x 20
04:32 PM andypugh: And we only erase from the end of the characters to the end of line, it isn’t clearing and re-drawing.
04:33 PM rene-dev: ok, maybe the lcd component does stuff, but it still does the right stuff?
04:33 PM rene-dev: so there is clearly a communication problem?
04:33 PM andypugh: It is possibly due to the do-it being actioned during a write.
04:34 PM andypugh: I need to set up an ethernet test system.
04:36 PM andypugh: I have a 7i80DB and a 7i74, so hardware isn’t a problem.
04:36 PM andypugh: Finding the time is the problem.
04:39 PM skunkworks: I have a 7i92 + 7i77 + 7i73 but no display. what display works? (I was just using it for pendent io)
04:39 PM skunkworks: (I have an extra one)
04:41 PM rene-dev: I have norberts 7i92, but also no lcd :D
04:41 PM andypugh: LCDs are cheap
04:42 PM skunkworks: link?
04:42 PM * skunkworks doesn't even know what is popular for the 7i73
04:42 PM andypugh: I just bought two of these to be sure I had spares: https://www.ebay.co.uk/itm/LCD-Display-Blue-Green-Yellow-1602-16X2-or-2004-20X4-HD44780-Arduino-RPi-ESP8266/272626779592?ssPageName=STRK%3AMEBIDX%3AIT&var=571749549927&_trksid=p2057872.m2749.l2649
04:42 PM skunkworks: *7i73
04:44 PM skunkworks: 2004 works?
04:45 PM andypugh: Yes, thats 4 lines of 20 chars
04:47 PM skunkworks: right
04:47 PM skunkworks: cool
04:47 PM skunkworks: have to order some
04:59 PM pcw_mesa: Theres a EEPROM constant for the display size (but im not sure if its been tested much)
05:04 PM rene-dev: pcw_mesa did you try swapping the instructions? but it probably doesnt help...
05:06 PM rene-dev: did you check the udp before and after the commit that breaks the lcd?
05:21 PM pcw_mesa: No, I have not tried the swapped order, I would need to duplicate Mikes setup to try 2.8 before and after the commit
05:21 PM pcw_mesa: I may have some time to set up a test this weekend