00:00:00 --- log: started forth/13.06.22 00:20:45 --- quit: DocPlatypus (Ping timeout: 240 seconds) 00:51:40 --- quit: Bahman (Quit: ave atque vale) 01:06:15 --- join: ErhardtMundt (~quassel@host226-1-dynamic.52-79-r.retail.telecomitalia.it) joined #forth 02:38:28 --- join: yunfan (~root@unaffiliated/yunfan) joined #forth 02:53:59 --- quit: Anarch (Ping timeout: 248 seconds) 03:13:37 --- join: obobo (~obobo@dyn-76-75-122-30.nexicom.net) joined #forth 03:13:53 --- join: dto (~user@pool-96-252-62-13.bstnma.fios.verizon.net) joined #forth 03:16:03 KipIngram: well, I'm not an embedded guy... 03:17:27 * ttmrichter tries to picture a use case for Forth outside of embedded space. Fails. 03:18:29 oh, just for kicks. 03:18:38 proving that one tool isnt the solution for everything! 03:18:41 OK, that works. 03:19:02 To clarify: "just for kicks" is what I was commenting on. :) 03:20:32 --- quit: itsy (Ping timeout: 268 seconds) 03:24:32 Though built-in help would work for tethered development too... 03:26:49 I'm considering tethering the Forth in my STM32F3DISCOVERY board. 03:26:59 I haven't quite broken that barrier yet, but it's tempting. 03:27:30 I have a user USB port to communicate through and the STM32F3 has good USB support baked right in. 03:37:50 cool 03:38:53 ttmrichter: so one could make a single chip usb Forth dongle with the STM32F3 ? 03:39:18 Not the F3 I've got, no. That's a pretty big chip. 03:39:22 Let me check the other form factors. 03:39:53 (It's a 100-pin quad.) 03:40:29 thats just that version 03:40:45 theyd make it in a 32 pin package I'm sure 03:40:45 Yeah, I'm checking to see what other form factors there are for the STM32F3. 03:41:04 Honestly, though, I think the F4 might be the better chip for something like that. 03:41:43 I think a 32 pin UFQPNEP is the smallest they do 03:41:49 Smallest F3 is LQFP 48 7x7x1.4 03:42:02 thats small enough 03:42:14 I'm assuming the triad at the end is in mm? 03:42:18 to a smt process, it doesnt really matter 03:42:25 would be 03:42:54 the 100 pin job tensa to be most pricey due to the material used to make it 03:43:05 and the 32 pin, the cheapest 03:43:16 The LQFP 100 14x14x1.4 is just a bit big for a USB stick. 03:43:32 yeah definitely 03:43:39 and too pricey 03:44:16 Let me check that actually. 03:44:42 Given that I got the F3DISCOVERY as a whole (it's got TWO STM32s on board, plus two MEMS devices) for about $14... 03:45:01 What's the largest size in mm for something feasible as a proper USB stick? 03:45:11 (Not the wide USB sticks that suck so terribly, but a proper one.) 03:45:24 Oh, wait. 03:45:31 UFBGA 100 7x7x0.6 03:45:35 That's ... impressive. 03:45:40 But I don't know what UFBGA means. 03:46:14 it's a bal grid array 03:46:17 ball 03:46:34 Oh. That's the ones with the massive grid on the back that if you fuck up once you're screwed? 03:46:39 all the pins are underneath, so they tend to be cheap 03:46:42 yeah 03:46:56 can be done by hand, but it's not easy 03:47:20 Well those are $3.56 per (in bulk). 03:47:28 yeah, amazing 03:47:38 but the wrong chip 03:47:47 What's wrong with that one? 03:47:50 44 pin would be good 03:47:54 too many pins 03:47:56 100 pins, 7x7x0.6 03:48:03 Too many pins is a PROBLEM? :-o 03:48:20 but youd only use about 5 of those pins, and couldnt bring the rest out, no room 03:48:28 Oh, I see. 03:48:35 Because of the confines of the board size. 03:48:51 OK, so let's price the best of the 48-pin ones. 03:49:01 it's not a problem only slightly too much chip for the use 03:49:15 but sure, you could use it 03:49:35 just that most of it would be wasted 03:49:54 OK, the 48-pin version is $3.06 (in bulk). 03:50:05 cheaper 03:50:20 and planty of pins, plus it's hand solderable 03:50:38 if it's a LQFP, that is 03:51:38 That's LQFP 48 7x7x1.4 72MHz, 256KB Flash, 32KB RAM, 9x16-bit timers, 2x32-bit timers, SysTick, 2xWDG, RTC, 8x16-bitADC, 9x12-bitADC, 36 I/O pins 03:51:46 and one could bring 20 odd pins out the end for projects 03:52:00 perfect 03:52:12 thats one kick arse embedded chip 03:52:23 And so on and so on. 3x12-bit DAC, 3xSPI, 3xI2S half-duplex, 2xI2C, 3xUSART, etc. etc. etc. 03:52:28 um I don't see usb ? 03:52:39 I just got bored with typing it all. :) 03:53:00 Ah, this one doesn't do USB. It doesn't have integrated op-amps either. 03:53:03 your pdf reader doesnt copy 03:53:15 I'm getting this off the web page. 03:53:31 It's a stupid web app done up as a spreadsheet. 03:53:36 no, the opamps are in the 160MHz version of the M4 ? 03:54:05 No, I have op-amps in my F3 which is 72MHz only. 03:54:14 a decent usb to serial is only $2-3 anyway 03:54:15 But that's the 100-pin LQFP. 03:54:21 oh 03:54:28 Cheaper than that! 03:54:34 why not use a M0 ? 03:54:38 I could probably get USB/Serial chips for under a buck. 03:54:40 mine were 0.50 03:54:43 amd 32 pin 03:54:54 yeah, that makes sense 03:55:19 oh wait! 03:55:24 It *DOES* support USB! :D 03:55:30 http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1576/LN10/PF253090# 03:55:37 Man, this seriously IS a kick-ass chip! 03:55:44 if you write it to run on one of these :- STM32F051K8U6, I'll make you a pcb and post it to you 03:55:49 For three bucks you're getting ... loads of stuff. 03:56:07 I don't think I have one of those. 03:56:07 :) 03:56:12 I can get 'em though. Probably for free. :D 03:56:58 I have them already 03:57:08 I mean for my purposes. I can't write code to a machine I don't have. ;) 03:57:09 http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1576/LN1531/PF252054 03:57:11 400 of them :) 03:57:17 That's the F3 on my discovery board. 03:57:22 ohh 03:57:46 4 operational amplifiers. 03:57:53 7 rail-to-rail analog comparators. 03:58:02 I DON'T EVEN KNOW WHAT THAT MEANS!?!!! 03:58:09 * ttmrichter whistles. 03:58:24 I do 03:58:33 Less sarcastically, I'm not sure what use case there would be for on-chip op-amps. 03:58:45 rail-to-rail. simply means they will work over the full power supply range 03:58:57 No, I know what it means. :) I was being sarcastic. 03:59:00 which is awesome really 03:59:03 oh 03:59:11 I just can't figure the use case for some of this stuff. 03:59:18 Especially the baked-in op-amps. 03:59:20 sure there is a case for on chip opamps! 03:59:35 they have a 8Hmz bandwith if I recall correctly 03:59:43 oops 8MHz 03:59:57 So what's the use case? 04:00:06 lets imagine you want to build a set of scales for weighing stuff 04:00:18 Oooh! That F0 of yours has baked-in motor control. 04:00:19 Nice. 04:00:47 you have load cells, which have 100 ohm platinum resistors that stretch when weight is applied 04:01:16 and you'll need opamps to amplify the small change in resistance per gram etc 04:01:47 or you might want to make a ECG, for your dog ... 04:02:02 a lightning detector 04:02:08 Why on-chip though? How often do you need op-amps such that baking it on-chip is a thing? 04:02:14 there are a zillion resons 04:02:24 anytime you want low cost 04:02:33 and isnt that *all the time* ? 04:02:36 Well, hard to argue with $3.56. :) 04:02:40 absolutely 04:02:45 For a seriously kick-ass chip. 04:02:49 (You read the specs there?) 04:02:55 separate opamps means a LOT more cost 04:02:58 yep 04:03:09 Now let's look at the F4 line. :) 04:03:22 That's probably a lot pricier. 04:03:26 But ... much more capable. 04:03:38 it wasnt until 'LSI' or larrge scale integration became available, that electronics stuff became cheap 04:03:53 and even the F4 is as cheap as 04:04:38 but as we go up the ARM scale, the peripherals begin to change, A-Ds are traded for HDMI etc 04:04:44 Let's look at one that could fit in a USB dongle again. 04:04:52 10x10x1.4 OK for that? 04:04:57 we go from embedded, to computing 04:05:06 sure 04:05:14 10x10 is still small 04:05:25 but is it a BGA ? 04:05:29 OK, I've got an LQFP 64 10x10x1.4 in the F4 line. 04:05:41 thats cool 04:05:53 168MHz. 04:06:00 1024 Flash. 04:06:02 fast too 04:06:03 192 SRAM. 04:06:22 --- join: Anarch (~olaf@c-67-183-64-49.hsd1.wa.comcast.net) joined #forth 04:06:31 that one is seriously complex 04:06:52 Well, if you want to give people a Forth toy, might as well make it complicated. :) 04:06:58 http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1577/LN1035/PF252143 04:07:11 That's $6.31 in bulk. 04:07:58 you just want that cryptographic acceleration cell ! 04:08:12 As I said, if you're going to give people a Forth toy, make it a nice one. :) 04:08:18 What do you think? Good target for that? 04:08:57 but who will use 1MB flash for a Forth app ? 04:09:16 well, it wont be obsoleted too quickly 04:09:25 You can always find a use for 1MB Flash. :) 04:09:39 http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1577/LN11/PF252140 04:09:48 That's the F4 I've actually got right now (on the discovery board). 04:09:52 but, I was assured 640 K was plenty for anyone! 04:10:18 It doesn't have the crypto interface. :( 04:10:41 no good then! 04:10:48 So what do you think? Is that F4 a decent target for a Forth dongle? 04:10:52 one problem with the crypto interface .... 04:11:01 USA export controls 04:11:09 STM is an Italian company. 04:11:11 Fuck the USA. 04:11:14 hahah 04:11:27 I can get these chips right here. :) 04:11:35 PRISM has you now, is that a red dot I see shining thru the window of your study ? 04:11:51 Yes. It's my own laser, though. 04:12:06 (One project I keep dreaming of is a laser harp.) 04:12:20 yes, a F4 is the latest hot shit, it's a brilliant Forth target imho 04:12:26 lol 04:12:47 you cannot fail if you use the latest hot shit ARM chip 04:12:53 Not the Jarre-style with the 1W+ lasers that need hand and eye protection to use. 04:12:57 I figure with a decent 32-bit embedded processor and a grocery store checkout scanner prism I could make one that works by having optics scanning for where the dot is seen and selecting the note based on that. 04:13:16 I really am somewhat of an STMicro fanboi these days. 04:13:23 me too 04:13:32 They do a few things that drive me bonkers (like STLink), but overall I quite like them. 04:13:42 the prices and capabilities are a embedded designers dream 04:14:04 Exactly. 04:14:07 They're nailing both. 04:14:09 yeah, stlink sucks, my quad core i5 is still down because I listened to you :) 04:14:21 *AND* they're making the hobbyists work too. 04:14:32 The DISCOVERY boards are a hobbyist's dream. 04:14:41 (Even with the sucky STLink.) 04:14:47 as a result, I just *had* to go and put a small i3/16GB ram running FreeBsd together as a spare machine 04:15:25 root@gronk-13:/boot # uptime 04:15:25 6:03PM up 1 day, 4:40, 4 users, 04:15:36 FreeBSD gronk-13 9.1-RELEASE-p4 FreeBSD 9.1-RELEASE-p4 #0: Mon Jun 17 11:42:37 UTC 2013 04:15:56 I'm pulling the F3's of my STlink boards 04:16:05 and anything else thats useful 04:16:27 JTAG is fine for S3's 04:17:04 I rekon a usb F4 dongle with jtag on the far end would be hot! 04:17:10 running Forth 04:18:11 The Discovery boards also have F0s on board. 04:18:33 So, such a dongle would have to have: 04:18:35 1. The F4. 04:18:47 2. The USB glue (very light given the F4.) 04:18:58 3. Some kind of serial memory to fire up the F4? 04:19:05 Or should that just be in Flash? 04:19:42 flash! 04:19:43 (I kind of would want a fall-back of being able to load a vanilla system from non-rewritable memory because I'm a paranoid git.) 04:19:51 no extra memory needed 04:20:00 The problem with putting it in Flash is that you can brick it then. 04:20:08 almost true 04:20:23 but if you have a JTAG connector, it's impossible to brick 04:20:33 Fair point. 04:20:47 as JTAG allows uploading your latest Forth FW in a flash 04:20:52 As long as there's an image file lying around for a core piece of functionality. 04:21:16 just like Riscy Pygness does it ? 04:21:38 you're only going to copy that anyway .... 04:21:43 04:21:53 Nah, I want to make my own Forth for something like this. 04:22:09 I was kidding, just stirring 04:22:26 I know you will do your own, it's the doing that interests you most 04:22:29 * ttmrichter takes everything seriously. Had a humourectomy at age 3. 04:22:34 hahah 04:22:36 Got it in one! 04:22:37 sure 04:23:10 you're a NBH 04:23:15 natural born hacker 04:23:41 me, Id get pleasure *using* it, I'm just a user 04:24:23 my design fun comes from applying the chip with Forth to a hw project 04:24:43 Im working on a GPL security system at the moment 04:25:06 Oh, that reminds me. 04:25:09 We need LEDs. 04:25:12 Lots of them. 04:25:12 I actually havent started yet, I'm only at the planning stage 04:25:17 Like an 8x8 array of them in different colours. 04:25:28 YOU CANNOT HAVE ENOUGH LEDS IN A FORTH TOY! 04:25:29 SMT leds are fairly cheap 04:25:38 I know. :) 04:25:50 Can you buy LED arrays, though? 04:25:53 not as cheap as say, NPN bipolar transistors 04:26:01 Like a 1x8 pack? 04:26:06 I'm not sure 04:26:13 Im not into BLING 04:26:22 This would be a Forth toy. 04:26:27 Bling would be part of the point. 04:26:49 it wouild be SMT, so why not just put the array on a pcb using individual SMT leds ? 04:27:04 And if you give it some useful MEMS sensors (gyro, accel, compass) you could even have them do something useful and/or interesting. 04:27:24 I figure an array would be cheaper and/or easier than doing it individually. :) 04:27:28 a PNP (pick and place) machine doesnt care what it places 04:27:31 nah 04:27:47 arrays would be bulky, hard to handle 04:27:55 smt leds are like grains of sand 04:28:25 could do a 8x8 really easy 04:28:29 I'd think grains of sand would be harder to handle than something with some actual dimensions. :) 04:28:38 not to a smt machine 04:28:45 by hand they would be easier 04:28:45 What about making them two- or three-colour LEDs? 04:28:54 http://www.avagotech.com/pages/en/leds/surface_mount_chipleds/multi_color_series/ 04:29:00 I have tiny red and green smt leds 04:29:23 but the tricolor are bigger, at least the ones I've seen 04:29:28 http://www.avagotech.com/pages/en/leds/surface_mount_chipleds/multi_color_series/hsmf-c118/ 04:29:37 These are 3.2x2.7x1.1mm 04:29:43 if you really want h res tricolor, just fit a small OLEd display ? 04:29:51 OLED would be pricier, no? 04:29:57 I'm not sure 04:30:21 And OLED would take up more IO pins. 04:30:26 I have a 1" oled with touch screen, the whole board was $90 about 5 years ago 04:30:57 So those chips I've got up there, how do they look to you? 04:31:00 the biggest problem here is deciding when to STOP adding stuff 04:31:06 Well, yeah. 04:31:11 But LEDs are not negotiable! :D 04:31:12 the S4 is perfect 04:31:15 hahah 04:31:27 tathi: good idea. thanks! 04:31:28 SMT leds are easily done, even on a dongle 04:31:30 F4 you mean? 04:31:36 oops 04:31:40 Just checking. 04:31:41 yeag F4 04:31:45 But yeah, that F4 is hot. 04:31:49 absolutely 04:31:51 64-pin quad. 04:31:55 And six bucks. 04:31:59 Holy. Shit. 04:32:02 yep, thats 32 spare io pins! 04:32:15 Which we can make accessible on a bus, right? 04:32:28 So USB dongle with a 16-pin edge connector? 04:32:29 maybe, connectors are big 04:32:48 probably a 20pin small connector 04:32:51 smt 04:33:07 So we'd be wasting 8 pins of that? 04:33:11 they are really small, far smaller than you can etch a pcb edge connector 04:33:28 Oh, you mean 20 actual pins, not 20 pin pairs. 04:33:35 could fit more sockets 04:33:41 OK, fair enough. 04:33:50 Again, the more I/O pins accessible the better, generally. 04:33:51 yeah you can get them in fixed sizes 04:34:12 problem the pitch is so fine, you need special mating plugs 04:34:28 Sell them together with the dongle. 04:34:29 and the price goes up 04:34:52 yeah sure 04:35:01 it would be a shit hot dongle 04:35:11 We'd have to balance price against utility of course. 04:35:12 powered from the USB plug 04:35:15 yes 04:35:24 The endless engineering issue. :) 04:35:30 plug in, run a terminal and you're doing Forth 04:35:36 not so endless 04:35:47 Im good at establishing realistic limits 04:36:11 Hah! According to Avago you're in Asia. :D 04:36:34 youd have to make a 'extender' board also, one that plugs into the dongle and makes all those spare pins accessable 04:36:57 australia is a little isolated island of rednecks and racists all on it's own 04:37:19 at the arse end of the world, next to asia 04:38:01 ttmrichter: your little Forth board, produced cheaply, would rival the Arduino easily 04:38:28 I can pretty much guarantee the "cheap production" part of this. :) 04:38:32 handle it right, and youd never need to work again ;-) 04:38:55 the big problem, is UL certification 04:39:18 Sell it as a "kit" and that goes away for a bit. :) 04:39:24 many countries get upset if electronics gear isnt certified, it's enough to put a person off 04:39:34 Basically sell it as a "kit" until you get enough money to pay off the UL shakedown. 04:40:06 OK, those tri-colour LEDs are $2.17 unit, $8.64 in bulk. 04:40:10 I don't thing that worked for the Rasberry Pi folks ? 04:40:14 OK, those tri-colour LEDs are $2.17 unit, $0.64 in bulk. 04:40:36 There was no assembly for the RPi. 04:40:37 and theyre big 04:40:48 nor would there be for your board 04:41:02 no one will hand solder a 64 pin chip 04:41:19 or a usb smt connector 04:41:22 If you sell them from overseas, too, like I am (and you are), UL has less sway. 04:41:29 the dongle would need to be complete 04:41:34 true 04:41:45 You'd lose a few market opportunities at the start. 04:42:01 just have a low freq crystal as possible, and use the PLL in the ARM 04:42:23 that will keep interference well down 04:42:26 But you'd get enough customers I think that you could eventually pay off the UL shakedown (and their equivalents like CSA and DIN and such). 04:42:33 yeah 04:42:46 these days you need a EM and a RF cert 04:43:01 plus a no lead cert 04:43:15 You could probably also give the first customers a deal where they buy now and they get a certified device for free (or for some nominal cost) later when they become available. 04:43:31 Be up-front with your non-compliance. 04:43:33 (we had to go to no lead solder cause the yanks need all the worlds lead for their bullets) 04:43:38 Hobbyists WON'T GIVE A SHIT. 04:43:52 thats true 04:43:56 And it's not like you're going to start a fire with a 5VDC0.5A max device. 04:43:58 they just want it NOW 04:44:10 true 04:44:25 The worst thing that could possibly do is break someone's laptop. 04:44:38 And that's not very likely. You'd have to be a concussed designer for that to happen. 04:44:45 just make sure it uses less than 0.3 A 04:44:56 and the arm chip can do that 04:45:00 What happens past 0.3A? 04:45:09 the extender board would have it's own psu 04:45:10 (I thought USB did up to 0.5?) 04:45:22 I think the rating for USB is 0.3 A 04:45:24 ? 04:45:31 No, I'm pretty sure it's 500mA. 04:45:32 it's a complex thing 04:45:46 initially, it has to be less than 50mA I think 04:46:06 and it has to be able to sleep at under 1mA etc 04:46:22 there is a whole bunch of USB specs 04:46:38 Yeah, but power management is something the STM32 line is very good at in general. 04:46:39 I've never made anything USB until soon 04:46:42 sure 04:46:44 That part of it isn't a problem. 04:46:52 agreed 04:46:58 I was just looking at the maximum draw. 04:47:00 the STM chips are perfect 04:47:06 yeah I know 04:47:27 anyway, specs are easy to sort out 04:47:39 (unless you have to pay $300 to get them) 04:47:55 * ttmrichter doesn't have to pay... 04:47:56 ;) 04:48:01 haha 04:48:04 From Wackypedia: "The USB 1.x and 2.0 specifications provide a 5 V supply on a single wire to power connected USB devices. The specification provides for no more than 5.25 V and no less than 4.75 V (5 V±5%) between the positive and negative bus power lines. For USB 3.0, the voltage supplied by low-powered hub ports is 4.45–5.25 V.[49]" 04:48:17 (Take a grain of salt when reading that. Anybody can edit Wackypedia.) 04:48:21 yeah 04:48:39 "A unit load is defined as 100 mA in USB 2.0, and 150 mA in USB 3.0. A device may draw a maximum of 5 unit loads (500 mA) from a port in USB 2.0; 6 (900 mA) in USB 3.0. There are two types of devices: low-power and high-power. A low-power device draws at most 1 unit load, with minimum operating voltage of 4.4 V in USB 2.0, and 4 V in USB 3.0. A high-power device draws, at most, the maximum number of unit loads the standard permits. Every device functions i 04:48:40 nitially as low-power—but may request high-power, and gets it if it's available on the providing bus.[50]" 04:48:54 use a FTDI usb to serial chip, and it has it's own USB id etc 04:49:05 So that's 500mA in USB 2.0 (our target, I think) and 900mA for USB 3.0. 04:49:13 We can EASILY fit in that power spectrum. 04:49:26 remember it's 500mA MAX 04:49:37 people often have other USB devicxes 04:49:50 That's 500mA max per port, no? 04:49:53 anyway, this could run on 10mA 04:50:08 um, you could be right 04:50:20 but depends on many things 04:50:32 * ttmrichter is trying to find the maximum current draw period from an STMF4. 04:50:49 as a Forth device, current draw could be quite low 04:50:55 I'm just going to take the shit-hottest F4 (not even the one we're looking at here) and see what pops up. 04:51:00 current drain will be hard to work out 04:51:24 Oh, JESUS! 04:51:28 it depends on clock rate, cpu load ?, how many LEDS, etc 04:51:37 1/2W ? 04:51:43 The hottest one has a 260µA per MHz. 04:52:15 that's neglecting the 3000 LEDS you want to run 04:52:26 I'm looking at the STM32's top draw right now. :P 04:52:41 So the hottest of the hot in the F4 line will take up 46.8mA. 04:52:48 Out of our alloted 500. :) 04:52:49 perfect! 04:52:57 the lower the better 04:53:08 So let's call it 50mA. 04:53:13 why not 04:53:29 that's at 168Mhz ? 04:53:31 (I like to account for leakage and "unexplained shit".:D) 04:53:37 No, that's the hottest of the hot. 180MHz. 04:53:41 wow 04:53:42 The chip we're looking at is lower. 04:53:50 thats HEAPs for the device 04:54:11 every led lighting program will have 10,000 NOP's at 180Mhz 04:54:24 Now the tri-colour LEDs are ... 04:55:18 36/59/59mA for red/green/blue respectively. 04:55:25 So call it ... ouch. 04:55:50 Yeah, can't have an 8x8 of those. :( 04:55:51 : blink-led-50hz 10000nops ledon 10000nops ledoff ; 04:56:16 you can 04:56:17 Those are cracking 150mA PER LED if you turn on all three colours. 04:56:22 Shit. 04:56:24 but on *another* board 04:56:51 just have 8x single color red leds on the dongle 04:57:12 Yeah, or mayhaps two each of blue, green, orange and red. 04:57:18 or just one! 04:57:19 (That's what my F3DISCOVERY has.) 04:57:25 * ttmrichter glowers. 04:57:32 Don't push your luck, Mr.! 04:57:44 one is enough to run the mandatory 'blinky led' 04:57:50 I just lost my dream of 8x8 tri-colour array. :( 04:58:01 why ? 04:58:10 it's just on another board! 04:58:17 Well, yeah, but it's not in the dongle! 04:58:22 plugs right onto the dongle 04:58:24 OK, how 'bout just one tri-colur LED? 04:58:29 hahah, DONE 04:58:34 That's 150mA give or take, so we're at 200mA. 04:58:47 What else is needed power-wise? 04:58:48 thats at full power 04:58:59 theyre pretty bright at less current 04:59:04 Yes. I'm working out maximum drain. 04:59:06 nothing really 04:59:26 We might put in a temperature sensor or some such gimmicky MEMS thing? 04:59:26 unless you add more stuff like Class D audio amp 04:59:45 Accelerometer? Gyroscope? Magnetic compass? 04:59:53 it's traditional to have a Accelerometer 04:59:57 (I can get you a chip that has all three!) 05:00:02 mag compass needs power 05:00:11 Let's look at how much. 05:00:42 you need look no further than a STM discovery for ideas 05:00:48 I know. 05:01:13 My STM32F3 has one 3D accelerometer and one combo 3D gyro/3D compass. 05:01:16 then again, some things are great because of what they *don't* have 05:01:32 look at the Palm Pilot ? 05:01:41 it was brilliant for what it didnt have 05:01:58 anyone can add the kitchen sink, and build a monster 05:02:03 Yeah, I kinda liked my Palm Pilot, but programming for it was a nightmare. 05:02:11 aha 05:02:44 as long as the dongle has some sockets to bring out the pins, it can do anything 05:03:26 besides, you're forgetting "controlled feature release" ! 05:03:40 No, I'm not. 05:03:41 were you asleep in 'marketing 101" ? 05:03:50 The features can be on the board, undocumented. 05:03:55 hahah 05:03:56 Then the firmware gets upgraded. 05:04:06 Saves us the costs of multiple production runs. :D 05:04:38 pays not to think too big! 05:05:07 anyway, a small run is peanuts 05:05:33 especially in China 05:05:42 as you know 05:07:40 * ttmrichter points to http://www.st.com/web/en/catalog/sense_power/FM89/SC1448/PF253162# and just facepalms. 05:08:09 13x13x2mm 05:08:43 Contains two MEMS chips for a complete 3D magneto-inertial system PLUS an STM32F1. 05:08:57 Mother. Pus. Bucket. 05:09:10 A surface-mount daughterboard. :) 05:09:24 SWD only 05:09:28 Eh? 05:09:34 no JTAG 05:09:39 I see CAN, USART, SPI, I2C and USB2.0 here. 05:09:43 yeah 05:09:47 Oh, that's fine. It's a daughterboard. 05:09:55 It's a so-called "smart component". 05:09:57 it's still SWD 05:10:16 it's a specialist board 05:10:18 I would wager that the chip on board is so simple you don't need JTAG. 05:10:44 you need JTAG if you want to be easily use Linux to flash it 05:10:55 but SWD will flash it also 05:10:59 Oh, no, you're mistaking what I'm talking about. 05:11:00 it better 05:11:16 ok, explain please ? 05:11:20 That would be treated as a component, not as something programmable. 05:11:32 dos it come pre programmed ? 05:11:42 Just fix it with a program that communicates via the USART with the F4. 05:11:46 and whats the price ? 05:11:54 Then we can treat it as a MEMS black box. 05:12:06 --- quit: dto (Remote host closed the connection) 05:12:10 seems like it belongs in a model helicopter 05:12:12 Currently only in preview, so no pricing information. 05:12:22 It would be great in a quadcopter, agreed. 05:12:39 keep your eye on the Forth ball :) 05:12:53 it's too easy to get carried away with cool shit 05:13:03 Oh, I am. 05:13:07 hahah 05:13:19 I'm just looking at what you could add for cheap on such a dongle that would make people drool. :) 05:13:29 technicians are shorth, we cant see as far as hackers :) 05:13:59 Keep in mind that this thing is supposed to be a TOY. 05:14:05 So we need to give people something to play with. 05:14:09 just whats on a F4 is drool material 05:14:14 ahh 05:14:18 And since my 8x8 grid of LEDs is off the table... 05:14:25 Yeah, agreed. 05:14:36 ... devastatingly so 05:14:54 The F4 itself is quite the toy, especially if the embedded Forth is prepared with a well-designed vocabulary for accessing it. 05:15:03 in principle you're right of course 05:15:07 Just going off the top of my head: 05:15:20 1. We need an assembler. (It's not Forth if it doesn't have its own assembler.) 05:15:53 if you had forth words in your dictionary for all those toys in your Forth ! 05:15:56 2. We'd need a vocabulary for each and every peripheral. 05:16:22 So for the timers, for the crypto system, for the DACs and ADCs, for the op-amps, for the comparators, etc. etc. etc. 05:16:41 Basically I'd have to go over the reference manual and design/write a vocabulary for each chapter. 05:16:52 that would be kick arse 05:17:03 It'd be pretty low-level, but it should be there to allow people to craft something higher level. 05:17:12 well the opamps are kinda simple in application 05:17:24 Still needs words. 05:17:26 yeah, besides thats the beauty of Forth 05:17:34 one can build new words 05:17:54 nice to not have to make up low leverl words tho 05:18:26 look at what the Arduino has done for those shitty ATMEL AVRs and C ? 05:18:36 I know. 05:18:48 I mean the Mega328 is brain dead compared to a F4 05:19:04 and all the support one needs to make the Arduino happen 05:19:06 Let me look at that F415RG spec sheet in detail. 05:19:06 Java etc 05:19:23 people rave about the Arduino 05:19:35 Because it's embedded programming for the masses. 05:19:41 any I've beat all of you to the Forth on a stick .... 05:19:51 hehe, my greatness is assured 05:19:56 They hide the complexity of actual embedded programming behind a facade of lego interfaces. 05:20:01 Forth is better than Lego. 05:20:06 ok, it's a PIC, but it's still usable 05:20:13 absolutely 05:20:19 It can mimic Lego, but ... it can also be Mecano. 05:20:34 (You might know Mecano as Erector Set.) 05:20:34 all you need is a terminal for a standalone Forth 05:20:42 or a special app for a tether 05:20:44 And with a USB dongle you've got it. :) 05:20:48 yep 05:20:55 plug in and program 05:20:59 I think we'd want to avoid tethering if we're using that F4. 05:21:13 Tethering is for really space-constrained systems where you can't fit the full Forth environment. 05:21:30 Even this F3 beast I've got here won't really need tethering. 05:21:53 8KB *REALLY FAST* SRAM, 40KB slower SRAM, 256KB Flash. 05:22:03 That'll fit any decent Forth system with a huge vocabulary inplace. 05:22:15 so true 05:22:28 and a android tab makes a great terminal 05:22:30 http://www.portertech.org/test/forth-board-android-term.jpg 05:22:44 Hmm... 05:22:47 Never thought of that. 05:22:49 here is a screen pic of my tab, plugged into my forth usb board 05:22:59 it runs from the tab' 05:23:15 it's the *easiest* dev system Ive ever seen 05:23:26 I assume you tethered that? 05:23:30 I mean ... it's a PIC. 05:23:39 no tether 05:23:43 standalone forth 05:23:52 just a terminal 05:23:56 40Mhz pic 05:24:06 64K flash 05:24:16 10 bit a-d 05:24:55 when uploading forth programs, there does have to be a delay so the chip can compile them 05:25:08 or it just falls behind 05:25:12 Ah, but that's not going to have the shit-hot peripherals of the F4 we're looking at. 05:25:20 no, nothing like it 05:25:21 JESUS! HOW DO I KEEP GETTING MYSELF INTO THESE PROJECTS?! 05:25:36 you cant resist, you're a hacker glutton! 05:25:44 But still, it's heartening that you can get a full Forth on that chip without difficulty. 05:25:49 anyway, it's all talk at the moment 05:25:50 And I love Forth. :) 05:25:58 me too, tho I'm only a beginner 05:26:08 I'll have to get my contact inside STM to source me a few of those F4s. 05:27:02 this is a pic of my prototype 05:27:06 http://www.portertech.org/test/forth-board.jpg 05:27:12 I saw that earlier. ;) 05:27:15 the one that the terminal is talking tp 05:27:24 yes 05:27:26 I was asking you at the time why you didn't use plug-board. 05:27:28 Remember? 05:27:29 nothing in it 05:27:34 yeah 05:27:43 I remember, I wasnt sure you did :P 05:28:15 OK, I've got the F4's spec sheet up and the reference manual on the way. 05:28:23 Let me estimate the vocabularies here. :) 05:28:44 still, it's a worthy hobby project 05:28:53 Now, out of the box, without even looking at the peripherals, I'd want to make a vocabulary for dealing with the ARM's ... rather convoluted interrupt scheme. 05:28:57 you could start a new Forth interest 05:29:09 On, one rule: NO ANS FORTH! 05:29:29 It'll be a *REAL* Forth. By which I mean it'll be quirky and highly idiosyncratic. 05:29:34 I'm a forth beginner, I bow to your exerience 05:29:46 like my Audi ? 05:29:54 ;-) 05:30:46 it's a old 1994 Audi quattro 05:31:21 lots of personality because of her quirky and highly idiosyncratic ways 05:32:06 I'll leave you here ttmrichter, as it's 22:30, but if you need me to make up some hardware for your new project, Id be happy to help 05:32:09 cya 05:34:10 CYA. 05:34:32 Before you go, tp ... 05:34:50 That's going to be a mother of a vocabulary set. 05:34:51 Wow. 05:35:42 Digital Camera Interface? The fu...?! 05:36:06 Oh, never mind. Not in the 415 device. 417. 06:01:25 --- quit: proteusguy (Ping timeout: 260 seconds) 06:14:12 --- join: proteusguy (~proteusgu@ppp-115-87-208-167.revip4.asianet.co.th) joined #forth 06:51:40 tp: I just pinged my contact at an STMicro distributor. I'll probably have a few STM32F415RGs in hand in a few days. 07:37:50 --- join: Nisstyre (~yours@oftn/member/Nisstyre) joined #forth 07:54:47 --- join: Bahman (~Bahman@bba538786.alshamil.net.ae) joined #forth 07:55:56 --- quit: Bahman (Client Quit) 07:58:15 --- join: Bahman (~Bahman@bba538786.alshamil.net.ae) joined #forth 07:59:17 --- quit: Bahman (Client Quit) 08:05:37 --- join: Bahman (~Bahman@bba538786.alshamil.net.ae) joined #forth 08:09:55 --- quit: Bahman (Client Quit) 08:10:18 --- join: Bahman (~Bahman@bba538786.alshamil.net.ae) joined #forth 08:28:23 --- quit: karswell (Ping timeout: 276 seconds) 08:30:11 --- join: fantazo (~fantazo@213.129.230.10) joined #forth 08:45:28 --- join: dto (~user@pool-96-252-62-13.bstnma.fios.verizon.net) joined #forth 09:08:40 --- join: karswell (~user@87.115.223.195) joined #forth 09:15:19 --- quit: karswell (Read error: Connection reset by peer) 09:16:04 --- join: RodgerTheGreat (~rodger@50-198-177-185-static.hfc.comcastbusiness.net) joined #forth 09:19:19 --- join: epicmonkey (~epicmonke@188.134.41.113) joined #forth 09:56:03 --- quit: dto (Remote host closed the connection) 09:57:31 --- join: kumool (~mool@c-76-26-237-95.hsd1.fl.comcast.net) joined #forth 09:57:58 --- quit: kumool (Read error: Connection reset by peer) 09:58:33 --- join: kumul (~mool@c-76-26-237-95.hsd1.fl.comcast.net) joined #forth 10:18:37 --- join: karswell (~user@87.115.223.195) joined #forth 10:42:53 --- quit: fantazo (Ping timeout: 264 seconds) 11:34:15 --- join: ASau`` (~user@p4FF9635C.dip0.t-ipconnect.de) joined #forth 11:37:22 --- quit: ASau` (Ping timeout: 246 seconds) 12:11:31 --- quit: Bahman (Quit: Ave atque vale.) 12:46:14 --- quit: proteusguy (Remote host closed the connection) 14:11:23 --- quit: epicmonkey (Ping timeout: 246 seconds) 17:34:28 --- join: nighty^ (~nighty@tin51-1-82-226-147-104.fbx.proxad.net) joined #forth 17:35:34 tp: ping 17:35:47 bak 17:35:55 10:34 on sunday here 17:36:01 8:35 for me. 17:36:18 pm ? 17:36:27 AM 17:36:27 it's morning here 17:36:32 ahh, of course 17:36:45 So, I thought I'd show you what you did to my brain last night: http://pastebin.com/BR6ZjEGE 17:38:31 thats a intense mind you have there ttmrichter ! 17:38:34 Translation: the F4 line of STM32 chips has a seriously fucked-up clock configuration. 17:39:30 Anyway, I've dropped a line with my pusher. I'll hopefully have a few F415RGs in my hands in a few days. 17:39:52 awesome 17:40:04 you live in electronics nirvana land 17:40:18 Indeed. 17:40:25 I didn't even know that until a couple of months ago. 17:40:48 But reading the spec sheet and reference manual of that chip ... that's one HOT MCU. 17:40:50 I can help with a pcb design, which you probably cant easily get there, then get a pcb made in china easily 17:41:04 If you can give me the Gerber files and a BOM I can get it made. :) 17:41:05 it sire is 17:41:13 that I can do 17:41:33 all opensource dev software here 17:41:35 Now one question: do we open source the software? The hardware? 17:41:52 well you're the architect here 17:41:56 Basically, do we go the Arduino route? 17:41:57 unlicense everything! 17:42:07 personally, I think it would be good 17:42:20 c00kiemon5ter: I'm tempted to release everything (hardware included) under WTFPL. Just for kicks. :D 17:42:24 and you can make money from the kits 17:42:57 has the WTFPL been tested in court ? 17:42:58 btw, unlicense is a "llicense" :P 17:42:58 ;-) 17:43:07 sort of, that is 17:43:31 at least with the GPL is some arswipe starts cloning your work and selling it, you can stop them 17:43:36 it is a public domain statement that fallbacks to a license, iiuc 17:43:41 tp: WTFPL doesn't require testing in court. "Just do what the fuck you want." 17:43:58 tp: In theory. In practice you probably can't tackle them. 17:44:21 http://unlicense.org/ :) it was largedly inspired by sqlite 17:44:44 AFAICT unlicense is WTFPL without the profanity. (Or WTFPL is unlicense with profanity.) 17:44:49 I happen to like profanity. :D 17:45:01 haha 17:45:37 ok, imagine just for kicks, that microsoft decide your ARM forth will be the source of their new income going forward. They use their massive clout to advertise everywhere, they make your kit in the brightest shiny shrink wrap boxes and sell 800 million of them overnight for $327.99. You get nothing, you're not even mentioned 17:45:56 Yep. 17:46:01 is that OK ? 17:46:10 that is what comes with true freedom 17:46:37 No, but there's nothing I can realistically do about it no matter what license I use. 17:46:55 ttmrichter: probably true 17:47:24 and the fact is that Forth is seen as ancient and difficult, it's a C grade idea 17:47:34 also, gpl allows you to sell software, you and anyone else, but the original author must be credited, and the source distributed with the executeable 17:47:45 So my choice of WTFPL isn't because I necessarily like getting ripped off. It's recognition of realities. 17:48:04 --- quit: nighty^ (Quit: Disappears in a puff of smoke) 17:48:06 c00kiemon5ter: yeah, the freedom to enslave, is true freedom, and only the really rich and powerful have 'true freedom' :) 17:48:16 no 17:48:30 true freedom is what it is. you can abuse it for sure 17:48:39 that doesn't make it "less free" 17:48:46 restriction do, on the other side 17:48:56 c00kiemon5ter: the GPL doesnt require the orig author to be credited ? Thats the Bsd licence ? 17:49:16 respecting freedom and what gives you is a matter of education and ethics 17:49:22 unless the GPL3 changed that ? 17:49:56 yeah, "Freedom" is a arghument for another day, its like sex and religion 17:50:41 tyrants and kinds don't respect freedom, nor does microsoft 17:50:45 kings 17:51:09 in the real world, it's lions and sheep, one eats the other 17:51:11 Corporations are the new tyrants. (And not all that new. Consider the East India Trading Company.) 17:51:17 yep 17:51:19 sure, if the people do, then they better not support microsoft then 17:51:42 lol, the EITC took one look at Western Australia and left, they could see no use for it 17:51:56 that is what privatisation is ttmrichter 17:52:15 c00kiemon5ter: and people like you will always respect freedom, and the rights of others, no one like me, needs to fight people like you 17:52:28 I disagree. 17:52:31 * ttmrichter puts up his dukes. 17:52:40 oh oh, run for cover 17:52:52 :P 17:53:26 anyway in a GPL fan, obviously 17:53:38 You believe in a slightly different variant of freedom than I do! Fight to the death! 17:53:45 yes! 17:53:47 hahah 17:53:49 haha :P 17:53:51 humans! 17:54:18 that is kinda how the left parties ended up being so many 17:54:19 ttmrichter: I think your design should be totally free 17:54:21 (There is a reason why I don't get involved in organized political causes of any kind, even if I tacitly agree with their position.) 17:54:35 --- quit: goingretro (Read error: Connection reset by peer) 17:54:51 ttmrichter: that way, it could become viral and spread quickly 17:54:54 and grow 17:55:06 I'm an atheist, but refuse to become an Atheist. I'm somewhat left of centre but refuse to join in or participate with any left-of-centre party. Etc. etc. etc. 17:55:14 for you, monetary rewards could come from making kits for sale 17:55:19 tp: That's kind of one of the things I'm aiming for. 17:55:33 Making a bit of money would be nice, but making a reputation is more valuable in the long term. 17:55:48 in my business, we made kits first, but soon found many people would rather just buy the finished product 17:55:50 And, too, nothing stops me from BUILDING ON this for things like domain-specific devices, etc. 17:55:59 absolutely 17:56:29 One possible use for a thing like this, for example, if it's cheap enough, is home automation. 17:56:48 Plug in a mains interface module and turn lights on and off with abandon. :D 17:56:56 one thing that people often overlook with the GPL (in my opinion) is that a lot of hackers wont help build something *unless* it's under the GPL 17:57:20 That would be the fragmentation thing. 17:57:29 They're more committed to their politics than they are to their craft. 17:57:33 oh yeah, the uses are really unlimited 17:57:51 (Incidentally, the WTFPL by its very definition permits re-issue under a different license if you insist.:D) 17:58:01 btw, in my mind forth is huge collection of DSLs (devices), with a common core (kits -- definitely not the standard) 17:58:31 has everyone here seen and played with a 'Arduino" ? 17:58:33 iow, not one language, defined by a standard 17:58:33 If you absolutely MUST use the GPL to contribute, just fucking relicense it. Which part of "Do what ever the fuck you want" is unclear? :D 17:58:43 heh 17:59:00 c00kiemon5ter: I view Forth as a philosophy and a sort of semi-concrete design principle. 17:59:00 it's your project, you decide what you want 17:59:17 a friend of mine build a small quadrocopter out an arduino board 17:59:24 built* 17:59:42 To me Forth isn't about standards, it's about being quirky and idiosyncratic and tied VERY closely to the hardware you're running it on. 18:00:05 my point is that ttmrichter's project is cheaper, has a ton more features, and is a LOT easier to get going than a 'Arduino', and the Arduino is mega popular 18:00:27 c00kiemon5ter: nice 18:00:41 --- join: goingretro (~kbmaniac@host81-129-184-151.range81-129.btcentralplus.com) joined #forth 18:00:53 Yeah, I think this could be smaller, orders of magnitude faster and cheaper than an Arduino. 18:01:02 a android tablet and ttmrichter's dongle is all one needs to start developing 18:01:20 and tablets are down to ? $50 thesedays 18:01:22 Hey, don't you play with my dongle! 18:01:36 not me! 18:02:31 I'm amazed at how easy my usb Forth dongle is to use 18:02:46 and I made it up, discovering this as I went 18:03:10 Oh, I found out that the USB support in the F4 is seriously cool too, BTW. 18:03:21 No need for any support chips. 18:03:28 ahh, even lower cost! 18:03:36 Just basically lay a trace from the USB pins to the connector. 18:03:37 BUT 18:03:42 does it need a driver ? 18:04:09 silly question, of course it does' 18:04:09 AFAICT no. I'm not a hardware guy so I have to read this more slowly and carefully than you do, but it really looks like you don't have to. 18:04:38 It appears only like a bit of glue is necessary. 18:04:40 yeah, it will need one, so the next question is , is the driver easily avail for unixes ? 18:04:53 Oh, you mean a SOFTWARE driver. 18:05:05 Well, that's the thing. 18:05:12 take the FTDI chips, they make their driver freely available so it's everywherew 18:05:25 I can make it imitate whatever USB interface I'd like. 18:05:45 but some chips such as the Microchip USB->serial chips have no Linux drivers, grrr 18:06:26 I'll just make it report the same as the various USB->serial dongles out there report. 18:06:37 (I can't recall the chip name off-hand, but EVERYTHING supports it.) 18:06:38 it has to so easy that the driver is probably available on the host already 18:06:52 hmm 18:07:01 one issue there is the USB ID string 18:07:07 it's like a MAC address 18:07:16 and theyre issued by some org 18:07:49 does the ARM have that ? 18:07:58 And like MACs you can surely spoof them? 18:08:04 is it unique for each chip ? 18:08:13 Let me check. 18:08:16 yeah, but then you're getting into 'harder and harder' land 18:08:18 Firing up the datasheet again. :) 18:08:56 everyone expects Forth to be hard, id try and disappoint them 18:09:38 Well that's a matter of wrapping this stuff in the proper vocabularies. 18:09:55 Some of this stuff will have very thin wrappers. Others will have very thick, layered wrappers. 18:10:09 The clock control stuff, for example, will have very thick, layered wrappers. 18:10:15 (Loads of room for getting things wrong there!) 18:10:23 USB will likely be the same. 18:10:23 aha 18:10:32 Timers, however, will have thin wrappers. 18:10:56 I may have to put a thick-ish wrapper around the interrupt system. 18:11:05 Because there's a bit of mind mangling there as well. 18:11:09 so many awesome peripherals 18:12:16 * tp has no idea what a 'wrapper' is, tp is a elctronics tech 18:12:37 but don't hold it against me, I can design your pcb :) 18:13:00 Well, Forth itself can be viewed as a "wrap", so to speak. 18:13:11 It gives you the ability to build high-level software components from low-level access. 18:13:30 yea 18:13:32 A "thin wrapper" would have a vocabulary that very closely matches the problem domain as specified in the reference manual and data sheet. 18:14:34 I can and have programmed in machine code, asm and C, plus Perl, and Python, all self taught and all very low level, it's a ongoing learning process for me 18:14:57 So it may have a word for the CRYP_CSGCMCCM0R register. 18:15:28 And it may have a word for manipulating the bit-pair for KEYSIZE in CRYP_CR and so on. 18:15:40 gees thats a hell of a reg name 18:15:57 The vocabulary is taken straight from the spec sheet/ref man and you're not shielded at all from having to worry about the constraints, etc. imposed by the hardware specs. 18:16:36 A higher level wrapper might let you select your AES key size and mode and do all the manipulations behind the scenes (with that lower-level vocabulary) guaranteeing consistent and correct final settings. 18:17:37 understand 18:18:05 at least Forth allows low level memory access 18:18:06 Obviously writing the low level interface is simple (albeit boring as all Hell). 18:18:11 Yep. :) 18:18:33 And AFAIC the Forth Way™ is to minimize the high level words until you have a clear need for them. 18:18:54 with my little USB Forth dongle, I write to the various registers for port init, then write the bits to the port for outputs etc 18:18:55 So basically anything that you can seriously fuck up your chip with (like clock settings) I'll give a high level wrapper to. 18:19:13 that seems like a safe way to do it 18:19:30 You'd still have the ability to fuck up your chip, but you'll be warned in docs. :) 18:20:55 I think as long as it comes preconfigured for something like 115kbaud, N,8,1 and you can get a "ok" from a enter command, thats the minumun one needs 18:21:28 after that, one tends to only screw with the things one understands 18:22:59 Oh, have you got the data sheets for the chip yet? 18:23:14 Well, datasheet and reference manual. 18:36:42 me ? 18:37:08 Yes. 18:37:28 we discussed so many chips, Im not sure which model you have chosen 18:37:47 sorry, I'm working and afk packing and testing WiFi orders 18:38:01 thats my normal mo 18:38:16 Yeah, fair enough. 18:38:29 STM32F415RG is the chip I'm looking at as the nicest one for the use case. 18:38:38 STM32F415RG 18:38:40 ahh 18:38:52 yes I have the specs from last night 18:39:26 I suspect I'm going to have some questions about the hardware I lack the expertise to answer. 18:40:14 of course 18:40:33 the camera interface is very handy to have btw 18:40:43 Not in the 415 it isn't. :) 18:40:57 That's 417 line only. 18:41:08 oh yeah, STM clump everything in the one datasheet 18:41:27 Pages 13 and 14 give the breakdown by model. 18:42:10 The RG hsa no FSMC, no Ethernet, no camera. 18:43:14 I think that ethernet is a waste below clock speeds of 1Ghz 18:43:16 It's got 51 GPIO pins, though. :) 18:43:37 camera would be handy, but no major loss 18:43:50 yep, thats a lot of pins to do stuff 18:43:57 Well, we've got to give the users SOMETHING they have to actually work for! :) 18:44:18 can do a lot with 512 pins 18:44:21 oops 18:44:24 51 pins 18:44:54 Make very large integer numbers, for example. 18:44:58 * ttmrichter eyeshifts. 18:45:37 I'm slogging through the USB stuff right now. 18:45:37 and it has jtag 18:45:40 Ouch. 18:45:52 jtag is very important until SWD is all sorted 18:46:13 I need to track down the USB specs, man. 18:46:18 The spiders are back. 18:46:36 The spiders from Mars. 18:46:47 oh oh 18:46:50 * ttmrichter fires up some Bowie. 18:47:06 Bowie will rescue you .... or make it worse 18:48:19 I guess the other important thing, is that a 180MHz clock would mean it could handle oploaded terminal programs without being too slow, like my PIC ? 18:48:41 otherwise a tether is a good idea 18:49:12 I think that at 180MHz it can take anything we can throw at it via USB. 18:49:45 * ttmrichter ponders the possibility of exposing the Flash as a file system. 18:49:46 hopefully 18:50:02 a block file system ? 18:50:16 just like 'proper' Forth ? 18:50:31 No, I mean as a USB file system. 18:50:37 So we can just transfer data directly into it. 18:50:45 have you played with Riscy Pygness yet, or read the docs ? 18:50:52 oh! 18:51:08 then youd need a dual mode usb .... ergh 18:51:19 The F4 has USB-OTG. 18:51:23 Is that what you're talking about? 18:51:26 one for the terminal, one for the file system .... it would be a monster 18:51:46 I'm not sure what OTG is 18:51:50 reading 18:52:05 It allows the device to be peripheral or host through the same port. 18:52:09 And yeah, I see what you mean. 18:52:15 Let's just stick with the terminal interface. 18:52:18 USB On-The-Go 18:52:32 The USB has baked-in 1.25KB FIFOs. 18:52:40 That will seriously offload the processor for transfers. 18:53:19 cool 18:53:23 what a chip! 18:53:44 the terminal interface has to be silky smooth 18:53:45 1.25KB FIFO queues + some really powerful DMA means the processor hardly ever needs to get involved. 18:54:02 one of the problems with FlashForth is terminal issues 18:54:12 wow 18:54:32 I know, right? That's a scary chip. 18:54:39 oh, the other think it needs is *good* documentation 18:55:13 Even though the core is "only" 180MHz, it has so much intelligence in its peripherals that core hardly ever gets touched for peripheral operations. 18:55:19 Oh, definitely. 18:55:20 typically Forth single chip implementationshave sucky docs 18:55:21 Documentation is a must. 18:55:33 You've seen my rants. I'm a bit of a frothing fanatic about documentation. 18:55:54 the designer wrote them and couldnt imagine that users wouldnt understand concepts he was intimately familiar with 18:55:59 cool 18:56:35 I like docs to remind ME WTF I was thinking. :) 18:56:38 good doc, a reliable cheap and packed with features dongle will simply be too hard to resist 18:57:07 Ah, finally I get to the register maps. 18:57:13 made in china, they will be cloned all over the place once manufacturers see they are selling 18:57:14 Here's where I find out about the USB IDs. 18:57:35 k 18:58:01 the usb ID's are very important 18:58:11 4 pages just to LIST the USB registers. 18:58:35 because OS's decide what the device is, and what they need to do to init and use it 18:58:41 from the id string 18:59:05 one usb device may be bulk storage for instance, while another is just a serial terminal 18:59:12 some are modems 18:59:21 they all have different drivers etc 18:59:27 Hmm... 18:59:43 All I've found so far is a general-purpose Unique Device ID Register. 18:59:46 if the usb string isnt recognised, the dongle does .... nothing 18:59:53 96 bits long, where one suggested use is USB string serial number. 18:59:56 Weird. 19:00:03 no thats not wierd 19:00:16 that's where you put your ID string 19:00:18 96 BITS for an ID string? 19:00:22 That's not much of an ID string. 19:00:34 It's an ID string? I thought it was two 16-bit numbers -- manufacturer and device 19:00:34 That's what? 12 characters? 19:00:48 ahh thats the serial, wonder if that is different to the ID ? 19:00:57 12 is about right 19:01:38 OK, enough eye-bleed for now. 19:01:56 I'm sure a CPU with this much in the way of USB support has some way to give up the ID. :) 19:02:14 SUBSYSTEMS=="usb", ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="002a", MODE="0666" 19:02:33 And I'm also sure that there's app notes for this stuff. 19:02:48 so a typical string is "15ba002a" 19:02:53 Oh wait! 19:03:02 I've got an F4 here, remember? 19:03:06 AND IT COMES WITH SAMPLE SOFTWARE! 19:03:09 Heh. 19:03:14 this is from this Linux system /etc/udev/rules 19:03:29 (Complete with giving me a USB mouse.) 19:03:45 I'll look at how they did it. 19:04:00 And I've got the related F3 here too. 19:04:09 It gives me, in its demo software, a USB joystick. 19:04:18 tathi: 8 Hex digits 19:04:25 (Using MEMS for "joystick" guidance.) 19:05:05 ttmrichter: thats a STM Discovery, with the accursed STMlink ? 19:06:15 tathi: so thats two 16 bit numbers as you said 19:06:18 Yeah, I have some old docs that says device drivers are found based preferentially on idVendor and idProduct, but if that fails it will fall back to device class. 19:06:43 tp: Yes, but the USB stuff is unrelated to the STLink. 19:06:59 I have separate USB ports on the F3/4 discovery cards. 19:07:02 in Linux the udev system acts according to the udev rules that specify the ID string 19:07:10 ttmrichter: k 19:07:49 tp: yeah, I'm just reading from the USB Common Class Spec (rev 1.0), which may not be how things actually work... 19:07:51 oh for the simple days of serial ports ... 19:08:09 tathi: From whence did you acquire the USB specs? 19:08:19 tathi: I suspect a person could have a career in just USB alone 19:08:35 tp: Indeed. 19:08:40 ttmrichter: Er...I picked things up here and there over the years... 19:08:42 It's hard to keep track of USB from the USER side of things. 19:08:54 hard ... impossible 19:08:57 I *so* need to track down the USB specs for my own edification. 19:12:19 hahah, theyre probably only available for a payment of $2000 19:12:31 to the USB design body 19:13:34 You'd be amazed at what kind of stuff leaks out there. 19:13:40 ttmrichter: it *may* be easier to use a separate USB serial chip as you get the ID string and drivers 19:13:58 That's definitely a possibility. 19:14:08 that way, you could also use the chip USB facility for bulk storage 19:14:11 And it opens the prospect of exposing USB on the other end of the dongle too. 19:14:17 or plan to do it at a later stage 19:14:45 it's no longer a 'dongle', you have added so much stuff, it's now a 'brick' ;-) 19:15:27 I've heard your first order will be from the US military for use in patriot Missiles 19:28:27 I've got some books in USB in the tech library here. 19:28:27 I might be able to work out a better understanding there. 19:28:27 It's not the spec, but better than nothing. 19:28:27 Damn. 19:28:27 This is Windows-specific on the driver matching side. 19:28:28 They appear to use the VendorID and ProductID. 19:28:32 Plus some generic things like HID, USBPRINT, USBSTOR, etc. 19:28:36 GOT IT! 19:28:38 You have HardwareID (vendor and product). 19:28:40 But you also have a list of CompatibleIDs. 19:28:42 And the subsystem will first look at your VendorID/ProductID and if it doesn't recognize it will check the CompatibleIDs. 19:28:45 So there we go. 19:28:47 We have our own V/PID and say we're compatible with the common USB→Serial bridges. 19:28:49 (Or we just use a USB→Serial bridge if that turns out to be cheaper.) 19:28:51 AFK. MNPI. 19:28:53 I mischanned all that. 19:29:43 :) 19:31:44 that sounds too easy ? 19:32:20 That's pretty much how I recall it working. 19:32:55 I messed with a chip a while back (FTDI maybe?) which had an 8051 + USB hardware, and you just set the IDs and the device class and off you went. 19:33:43 wow 19:33:59 yeah FTDI made it all pretty easy 19:35:05 --- quit: cfjdet (Ping timeout: 264 seconds) 19:38:06 --- join: cfjdet (~androirc@pD9E25E11.dip0.t-ipconnect.de) joined #forth 19:42:08 ttmrichter: if you have your own V/PID, then the user has to set up his own OS to handle that, or you have to write install scripts for every damn os 19:42:22 me, I think a FTDI chip is easier 19:42:33 Well, you missed the part with "CompatibleIDs". 19:42:51 If the OS doesn't recognize the HardwareID, it checks the CompatibleIDs list(s). 19:42:58 does it ? 19:43:07 Well *WINDOWS* does. 19:43:11 I don't know about Linux. 19:43:21 (The book I have is Windows-specific unfortunately.) 19:43:27 ok, so windows users will be able to use it .... 19:43:38 thats what ... 100 people ? 19:44:02 heh. 19:44:03 I'd have to test this under Linux. 19:44:05 making anything for windows only is a fatal mistake 19:44:15 Remember, I have hardware here and sample software. 19:44:18 I *can* test it. 19:44:33 especially as Google register 1.5 million new Android devices every day 19:44:39 yes :0 19:45:00 and I have a few Linux machines, Freebsd etc, so I can test as well 19:45:42 I've noted that the most 'popular' boards around all use a FTDI chip with the USB 19:45:52 OK, let me show you what happens in Linux. 19:46:35 k 19:46:55 http://pastebin.com/vXnm7VWJ 19:47:25 The Vendor is known, but the product code obviously isn't. 19:47:44 And yet, it uses the Mouse HID protocol for a joystick. 19:48:02 http://www.linux-usb.org/usb-ids.html 19:49:22 Not loading for me. 19:49:27 GFW check. 19:50:18 Apparently Linux USB IDs are a state secret. 19:50:25 * ttmrichter just shakes his head at the clowns in Beijing. 19:50:38 this is a debian 7 system, and I cant find a usb compatibility list in it 19:51:08 The compatibility list is in the device, not in the OS. 19:51:17 *oh!* 19:51:20 The system is supposed to query for it if it doesn't recognize the Hardware ID. 19:51:28 well, now I get it 19:51:32 thats definitely too easy 19:52:19 and the compat list is by device id ? ie you can just clone a FTDI usb->serial device ? 19:52:29 If I'm reading this correctly, yes. 19:52:35 I'll be experimenting with it, of course. 19:52:37 ahh, problem solved 19:52:58 I'm amazed that something could be that easy 19:53:02 * ttmrichter is an empiricist when it comes to this kind of stuff. 19:53:07 based on prior life experience 19:53:27 Actually I pretty much always have been. 19:53:37 I drove my parents nuts with trying things out just to see what would happen. 19:53:46 Like the time I gassed the house with chlorine gas. 19:54:12 id say that I'm similar in that regard 19:54:17 hahah 19:54:33 experience is the best teacher for me also 19:54:55 ok, so that problem looks to be resolved 19:55:04 pending some testing 19:55:31 I have some USB capable PIC chips here, and a heap of ARMS 19:55:42 so I also can test this 'theory' 19:56:25 FlashForth works on a PIC with USB, negating a serial USB chip requirement 19:56:37 and I have some of those chips here 19:56:53 Flash Forth has this to say :- 20:02:44 http://paste.portertech.org/show.php?id=1006 20:18:16 Terrys Debian 7 Olimex USB JTAG udev rule: http://paste.portertech.org/show.php?id=1007 20:29:38 --- quit: kumul (Quit: Leaving) 21:11:49 --- quit: RodgerTheGreat (Quit: RodgerTheGreat) 21:28:24 --- part: yunfan left #forth 21:29:05 --- join: Bahman (~Bahman@2.50.50.204) joined #forth 21:38:09 --- join: amca (~amca@CPE-121-208-80-15.cqzr1.cha.bigpond.net.au) joined #forth 22:35:21 --- join: protist (~protist@109.172.69.111.dynamic.snap.net.nz) joined #forth 22:42:51 --- quit: nighty- (Read error: Connection reset by peer) 22:43:05 --- join: nighty- (~nighty@TOROON12-1279662182.sdsl.bell.ca) joined #forth 22:43:21 --- quit: nighty- (Read error: Connection reset by peer) 22:47:59 --- join: nighty- (~nighty@static-68-179-124-161.ptr.terago.net) joined #forth 23:21:26 --- join: yunfan (~root@unaffiliated/yunfan) joined #forth 23:59:59 --- log: ended forth/13.06.22