**** BEGIN LOGGING AT Fri Jan 24 02:59:58 2020 Jan 24 04:55:09 I suppose I should try using an SD card on the BBB like set was. Sigh. Jan 24 04:55:43 GenTooMan: Are you learning? Jan 24 04:56:28 Are you past your give or take 10000 writes? Jan 24 10:56:27 Hello people, i am a student of the Netherlands and i need to create my own event. I would like to bring developers of open source and closed source to gather so we can learn from each other and share our experiences to help and be helped in your processes. I am curios if someone is interested in this kind of event? Jan 24 10:56:55 PS: its a school project Jan 24 14:07:09 GenTooMan: you've burned out an eMMC ? Jan 24 14:14:27 *worn out Jan 24 15:22:29 m Jan 24 17:10:19 zmatt one of the B series BBB it was a "duh" because I had been going the lazy route. I was logging something and changing the firmware. Jan 24 17:11:09 related Tesla's suffering from updates https://www.eetimes.com/burned-out-flash-trips-up-older-teslas/ Jan 24 17:51:01 yeah you do need to be a bit careful Jan 24 17:51:50 we try to avoid unnecessary eMMC writes Jan 24 17:52:09 but accidents have happened (e.g. a little bug causing gigabytes of data to be written per hour) Jan 24 17:53:08 using SD card wouldn't help for us though, in fact it would be worse since afaik they wear out much faster (unless you get an industrial SLC card or something) Jan 24 17:54:03 plus SD card only has half the bandwidth of eMMC Jan 24 20:19:45 zmatt I understand as it's "junk" level technology using MLC nand flash. MLC is only 3000 to 10000 erase cycles "good". So the best way to improve life is increase size. So a 32G SD card is about the same as a 4G eMMC in terms of durability. Jan 24 20:47:33 Boo-Ya! Jan 24 20:47:35 I got it! Jan 24 20:47:37 OpenCV! Jan 24 20:48:24 set_ well now we know ... :D Jan 24 20:49:00 GenTooMan: I just ditched work b/c my head if bouncing off the walls. At least, my "sudo make install" command worked today. Jan 24 20:49:12 Phew. Jan 24 20:49:22 I feel better now. Odd! Jan 24 20:52:54 It seems pip3 has an install too. Oops. Jan 24 21:15:31 GenTooMan: modern SD cards are TLC, i.e. 3x the capacity of SLC but 1/100th the lifetime of SLC Jan 24 21:15:43 afaik Jan 24 21:15:57 perhaps improvements in error correction have made the numbers less dire Jan 24 21:27:30 some company did a test on 40 SanDisk 4GB μSD cards, continuous writes until failure or corruption was detected: https://s3.amazonaws.com/cdn.freshdesk.com/data/helpdesk/attachments/production/22003578753/original/TZOcKd_sgbMnwts3cqeP47cMKG5L975gxA.jpg Jan 24 21:28:44 so that seems to be 1500-3000 cycles Jan 24 21:45:54 Is compiling .hpp files needed for using a .cpp file with .hpp header files? Jan 24 21:46:59 https://pastebin.com/gbZQayvz is the source but I see a couple of issues. Jan 24 21:47:54 I have the .hpp file in my dir. but the source compilation still reads back, "cannot find core.hpp" file. Jan 24 21:49:03 if it can't the headers that either means they're not installed properly or you're missing some compiler flags Jan 24 21:49:09 *can't find the headers Jan 24 21:49:31 Oh. Jan 24 21:49:38 Okay. Flags. Got it. Jan 24 21:49:40 assuming you've installed opencv via apt, just make sure you install the relevant -dev package Jan 24 21:49:58 No. I used git, make, and sudo make install. Jan 24 21:50:01 why? Jan 24 21:50:19 B/c, I could not find an openCV to use on my 4.14.x kernel. Jan 24 21:50:32 I am still on Stretch on this board. Jan 24 21:50:35 I very much doubt opencv has any dependency on specific kernel version Jan 24 21:50:50 I tried w/ pip too. Jan 24 21:50:58 ??? pip? what? Jan 24 21:51:09 Well, pip install opencv-python. Jan 24 21:51:19 you probably first need to have opencv installed for that Jan 24 21:51:23 Oh. Jan 24 21:51:33 I have openCV installed. I had no errors. Jan 24 21:51:42 Not a one! Jan 24 21:51:43 so why didn't you just install the package? Jan 24 21:51:51 Which one? Jan 24 21:52:06 Which package are you referring to? Jan 24 21:52:10 apt-get install opencv? Jan 24 21:52:22 Oh. I was not aware that could be done. Jan 24 21:52:28 libopencv-dev probably, if you want the full set of packages Jan 24 21:52:35 Oh. Jan 24 21:52:37 Hmm. Jan 24 21:52:45 or libopencv-core-dev + any individual components you want to use Jan 24 21:53:03 Where are you finding that info, debian.org? Jan 24 21:53:13 apt-cache search opencv Jan 24 21:53:17 Oh. Jan 24 21:54:03 dang. You were right. Jan 24 21:54:09 well you learned how to build it at least. Jan 24 21:54:21 The debian apt has a lot of packages dedicated to openCV. Jan 24 21:54:22 to get just the list of development packages: apt-cache search -n 'opencv.*-dev' Jan 24 21:54:28 Okay. Jan 24 21:55:17 libopencv-dev is a metapackage that just pulls in all the other libopencv -dev packages Jan 24 21:56:35 oh Jan 24 21:56:36 actually Jan 24 21:56:44 they're installed by default on the current IoT image Jan 24 21:56:45 What? Jan 24 21:56:48 Aw! Jan 24 21:56:52 so you don't need to install anything Jan 24 21:56:56 Too late. Jan 24 21:57:18 Let me make sure I have the latest-greatest! Jan 24 21:57:40 Yep. Jan 24 21:58:06 How can I look up the opencv version I have on my BBGW? Jan 24 21:58:18 I tried --version or find but notta. Jan 24 21:58:40 pkg-config --modversion opencv Jan 24 21:58:44 for example Jan 24 21:58:50 Okay. Jan 24 21:59:34 or: dpkg --list libopencv-dev Jan 24 21:59:54 oh looks like that truncates the full package version Jan 24 21:59:58 https://pastebin.com/YcN6ksb2 is what I received. Jan 24 22:00:01 dpkg --status libopencv-dev | grep Version Jan 24 22:00:04 Okay. Jan 24 22:00:17 oh wait, BBGW, not BBAI Jan 24 22:00:24 Right. Jan 24 22:00:25 maybe it's not installed on the non-AI IoT image Jan 24 22:00:30 Oh. Jan 24 22:00:32 Okay. Jan 24 22:00:33 No issue. Jan 24 22:00:40 since using opencv on an am335x sounds awful Jan 24 22:01:09 but you can still install it if you somehow think it's a good idea Jan 24 22:01:32 and have enough free disk space Jan 24 22:02:11 At first, it was about ram space. I had some errors w/ ram on the BBGW. Jan 24 22:02:21 I can imagine that Jan 24 22:02:40 That is what I thought. Why? You know but that was the error while compiling on the board. Jan 24 22:02:42 native-compiling something like OpenCV on a beaglebone again sounds awful Jan 24 22:02:46 Ha. Jan 24 22:03:00 I went to bed and woke up. Done. Jan 24 22:03:05 Ha. Jan 24 22:03:14 I'd cross-compile from an x86 machine or at least use a beefier ARM board Jan 24 22:03:22 Yea. It took an extremely long time. Jan 24 22:03:23 or, you know, don't compile it but just install the package Jan 24 22:03:29 Right. Right. Jan 24 22:03:38 I am being silly for no reason whatsoever. Jan 24 22:04:09 I will try the package manager now APT! Jan 24 22:04:52 yeah and now you have stuff installed in places that apparently doesn't work but will require significant effort to remove Jan 24 22:05:03 Right! Jan 24 22:05:07 I know. Jan 24 22:05:13 But. it was worth the shot! Jan 24 22:05:17 maybe try Jan 24 22:05:21 Okay. Jan 24 22:05:31 set_ looks first leap when necessary? :D Jan 24 22:05:33 sudo find /usr/local -name '*opencv*' -exec rm -rf {} \+ Jan 24 22:05:35 Wait! Jan 24 22:05:41 err look even (long day) Jan 24 22:05:53 find needs sudo? Jan 24 22:05:56 no Jan 24 22:05:59 Oh. Jan 24 22:06:03 but removing stuff in /usr/local does Jan 24 22:06:08 Got it. Jan 24 22:06:14 That makes sense now. Jan 24 22:06:24 I am off to view /usr/local first. Jan 24 22:06:59 I have opencv4. Jan 24 22:07:02 That is the reason! Jan 24 22:07:25 That is the reason why I could not import. Jan 24 22:07:37 Forget what i am saying. Jan 24 22:10:25 oh yeah if you specifically need opencv 4 then you'd either need debian testing (bullseye) / unstable (sid) or compile manually I guess Jan 24 22:10:40 opencv 3 doesn't have what you need? Jan 24 22:10:56 I compiled b/c I could not find out how to get it on my board outside of that. Jan 24 22:11:02 looks like it's still being actively maintained Jan 24 22:11:07 Hmm. Jan 24 22:11:45 Get this. The opencv4 folder goes directly to opencv2 for some reason like this: /opencv4/opencv2/. Jan 24 22:11:47 Ha. Jan 24 22:12:09 yeah the first level is part of the prefix Jan 24 22:12:23 while the second level is part of the header location... that v2 appear to refer to the API version Jan 24 22:12:50 -rw-r--r-- 1 root staff 151612 Jan 23 17:19 core.hpp Jan 24 22:13:00 it seems odd though that it didn't install a pkg-config file Jan 24 22:13:26 ls there nothing opencv-related in /usr/local/lib/pkgconfig/ ? Jan 24 22:13:36 Well. Let me see. Jan 24 22:14:22 There is no pkgconfig dir. Jan 24 22:14:43 so no Jan 24 22:14:48 Oh. No. Jan 24 22:14:56 that's a shame Jan 24 22:14:59 Dang! Jan 24 22:15:07 Does that mean, recompile? Jan 24 22:15:12 no Jan 24 22:15:39 I have a bunch of libopencv.so files in usr/local/lib/ Jan 24 22:15:48 Just not in pkgconfig. Jan 24 22:15:49 it just means you can't use pkg-config to obtain the correct compiler flags, which sucks for portability Jan 24 22:15:56 Oh. Jan 24 22:15:59 Okay. Jan 24 22:16:03 Yep. That does suck. Jan 24 22:16:14 again, why do you need opencv 4 specifically? Jan 24 22:16:40 I do not. I just wanted to try to learn something new outside of just lEDs, hardware, and basics. Jan 24 22:16:58 and this requires opencv 4 rather than opencv 3 ? Jan 24 22:17:04 No. Jan 24 22:17:10 I could use 3 if needed. Jan 24 22:17:14 anyway, you have it compiled and installed so I guess you can try using it Jan 24 22:17:21 Right! Jan 24 22:17:33 you'll need to add suitable flags to your makefile Jan 24 22:17:37 Oh. Jan 24 22:17:42 .hpp stuff? Jan 24 22:17:43 e.g. CPPFLAGS += -I/usr/local/include/opencv4 Jan 24 22:17:52 Aw! Jan 24 22:18:07 that will probably allow it to compile but won't suffice for linking Jan 24 22:19:10 @zmatt: Does the flags go before or after the file being compiled? Jan 24 22:19:19 Aw. I will read on. Jan 24 22:19:45 doesn't really matter Jan 24 22:20:33 the correct linker flags will depend on which opencv components you use Jan 24 22:20:38 e.g. you'll probably at least need: Jan 24 22:20:44 LDLIBS += -lopencv_core Jan 24 22:20:56 g++ First1.cpp CPPFLAGS += -I/usr/local/include/opencv4 Jan 24 22:21:01 Oops. Jan 24 22:21:04 ehm, no Jan 24 22:21:25 You are the pro. Tell a brother something? Jan 24 22:21:52 Oh. It goes in the makefile? Jan 24 22:22:21 Or. the actual .hpp file? Jan 24 22:22:46 amazingly when I said "add ... to your makefile", I meant it goes in your makefile... Jan 24 22:22:53 rather than some random other file Jan 24 22:23:17 but, I'm still really not on the mood to give a tutorial on makefiles Jan 24 22:23:18 Right! Jan 24 22:23:25 Okay. No issue. Jan 24 22:23:50 Do not worry about it. I was going to try the command line instead but a Makefile makes more sense w/ all these additions. Jan 24 22:24:34 you can do either, but producing compiler invocations manually get tiresome pretty quickly Jan 24 22:24:57 I get that but it may be worth my time. It is just something else to learn to me. Jan 24 22:25:56 I found some ideas online. Jan 24 22:26:25 I could also put all those .h and .hpp files in /usr/local/include? Jan 24 22:27:26 no Jan 24 22:28:00 you can also save this as "common.mk": https://pastebin.com/JB09pYp0 Jan 24 22:28:07 and then this as Makefile: https://pastebin.com/NBmG0aPn Jan 24 22:28:21 change "your-program" to the name of your .cc file without the .cc Jan 24 22:28:28 Okay. Jan 24 22:29:35 .cc file? Let me look that up. Jan 24 22:29:48 or .cpp Jan 24 22:29:53 whatever suffix you use for your C++ source code Jan 24 22:30:05 (they're equivalent) Jan 24 22:30:25 Right. I just read about it. Jan 24 22:30:31 I always wondered (just now!). Jan 24 22:30:44 Believe or not, that was the first time for me. Jan 24 22:31:20 So, instead of MyFile.cc, it would be MyFile? Jan 24 22:31:25 Got it. Jan 24 22:31:49 .cc is typically used on linux, .cpp is typically used on Windows... so whether a project uses .cc or .cpp is usually indicative of what platform it was originally developed for Jan 24 22:32:10 Wowzers. That was something I probably would have not known for a long time. Jan 24 22:32:27 .cc linux and .cpp windows Jan 24 22:32:29 Got it. Jan 24 22:32:52 but it doesn't really matter, both work equivalently on linux, and presumably both work equivalently on windows Jan 24 22:33:38 Oh. Okay. Understood. Jan 24 22:34:08 another variant that's sometimes seen (albeit very rarely) is .C (uppercase) Jan 24 22:34:50 uppercase, Hmm. Jan 24 22:34:56 eh I hate that convention. I suppose it works. Jan 24 22:35:02 I was unaware of that too. Jan 24 22:35:11 yeah I don't like it either Jan 24 22:35:15 I use .cc exclusively Jan 24 22:37:06 So, there is a way to use gcc w/ compiling .cpp files? Jan 24 22:37:19 23:32 <@zmatt> but it doesn't really matter, both work equivalently on linux, Jan 24 22:37:35 23:29 <@zmatt> whatever suffix you use for your C++ source code Jan 24 22:37:35 23:30 <@zmatt> (they're equivalent) Jan 24 22:37:40 Oh. Jan 24 22:37:41 Okay. Jan 24 22:37:44 I got you. Jan 24 22:37:53 So, C/C++ are similar. Jan 24 22:38:00 no, that is not what I said Jan 24 22:38:02 Bold, I know! Jan 24 22:38:11 nor implied at any time Jan 24 22:38:39 nor is there any conceivable way to draw that conclusion from anything I said Jan 24 22:39:00 gcc main.cpp hello.cpp factorial.cpp -o hello? Jan 24 22:39:03 How is that right? Jan 24 22:40:42 ANyway. Do not fret. I will read your doc. on Makefiles and the tutorialsPoint Makefile for Unix systems tutorials. Jan 24 22:40:44 Thank you. Jan 24 22:53:34 Should I use the LDFLAGS preprocessor directive w/ /usr/local/lib? Jan 24 22:53:54 I can always use make clean. Do not worry about it. Jan 24 22:59:52 set_ I don't know if that would clear out /usr/local/lib of your build of opencv try make uninstall instead Jan 24 23:00:15 set_ some have the option to remove what was installed <-- handy in your case Jan 24 23:00:38 I will think about it. make uninstall Jan 24 23:02:52 permission denied. Jan 24 23:02:57 I think this is it. Jan 24 23:09:41 Oh well. I have undefined references. Jan 24 23:09:57 I must quit before you go loopy. Sorry for all the chat I create. Jan 25 00:03:48 llloooopy Jan 25 00:04:22 actually I was looking at angular accel using an RC servo for something. Jan 25 00:10:48 Oh. Jan 25 00:13:53 we as you know they specify those servos in terms of torq torq can be converted into angular accel if you know the moment of intertia of what you are rotating. It's funny using dynamics and statics after a all these years. Jan 25 00:19:03 Hmm. Jan 25 00:19:06 Okay. Jan 25 00:19:17 I know less of physics than anything else. Jan 25 00:20:12 GenTooMan: What are you going to do w/ your servos? Jan 25 00:20:46 raise and lower a water cannon what else? Jan 25 00:20:50 oh! Jan 25 00:20:57 Water Cannon! Jan 25 00:21:07 Neat. Do you work for the police? Jan 25 00:21:22 No it's a VERY small water cannon. Jan 25 00:21:30 Oh. Okay. Jan 25 00:21:45 That is neat too. I was looking for projects with boxes. Jan 25 00:21:57 I made a box but I do not know what to do w/ it yet. Jan 25 00:22:27 Jack in the box, maybe. But, I was thinking I should try another route. Jan 25 00:22:30 hmmm ok sort of like building a house but without having a need to live in it. Jan 25 00:22:35 Right. Jan 25 00:22:37 hahhaha. Jan 25 00:22:57 I come w/ 100% of no reasoning. Jan 25 00:23:36 GenTooMan: Have you ever made a box for any reason? Jan 25 00:23:48 sort of like singing Madona's old "material girl" song to "irrational world" lyrics. Jan 25 00:23:54 Ha. Jan 25 00:24:15 better than "like a surgeon" from weird al :D Jan 25 00:24:33 Right. I like that dude that smashes watermelons on stage. Jan 25 00:24:50 I think he died. "Do not play w/ your food." Jan 25 00:27:18 So, I can put in the BBGW w/ Motor Bridge Cape and a power supply into the box. Jan 25 00:27:36 I will leave the top ready for deployment. I could make a flying lid? Jan 25 00:29:01 GenTooMan: Do you want to view my box? Jan 25 00:29:22 "Just say no!" Jan 25 00:29:23 Ha. Jan 25 00:30:55 Anyway, outside of my box story, how is your servo biz coming along? Jan 25 00:38:08 mmm slow weird al is still alive as he's just over 60 has a star in holly weird too. he got it in 2018_0827 and received a grammy last year. Jan 25 00:38:33 Very Odd! "Just eat it!" Jan 25 00:39:40 You know...like Al's old song. Jan 25 00:40:09 I did not even know what UHF stood for until Al came out w/ the "symposium" of songs. Jan 25 00:41:15 he's got so many parodies it's hilarious .. read the wikipedia article on him some people refused parodies and ironically he had permission for one but the record label refused (heh) Jan 25 00:41:28 Heh? Ha! Jan 25 00:42:01 so he gave it away :D Jan 25 00:42:24 Nice! Record labels/Schmables. Jan 25 00:42:44 anyhow they guy does a lot of voices for animation apparently Jan 25 00:43:01 Hmm. I was unaware of that idea. Jan 25 00:43:51 If I was going to increment angleOne to angleFive, how would I go about it w/ python source for servos? Jan 25 00:44:19 I am asking b/c I am currently connected and trying. Jan 25 00:45:05 a = a1 >>> b = a5 >>> c = a to b. Would union work? Jan 25 00:46:26 I know in 3.8.x, unions exist now. Jan 25 00:46:31 set_ your servo can only update every 20ms so as an example if you wished to go from a1 to a5 (a1-a5) with a change every 20ms for a period of 1s that would me delt_a would be (a1-a5)/50 Jan 25 00:47:07 See...this is the issue. Jan 25 00:47:13 or (a1-a5)*0.02 (20ms) that would be your angle change rate Jan 25 00:47:25 Hmm. Okay. Jan 25 00:47:30 you need to change the angle every 20ms for smooth motion Jan 25 00:48:04 Oh. No wonder the revolution 0 - 180 is giving me issues. Jan 25 00:48:34 It works backwards okay but when it goes into a "revolution," it buzzes when it goes forward. Jan 25 00:49:38 But okay. I will try that idea out. Jan 25 00:51:08 your max angular velocity often is like 0.1s / 60 degrees which is 12 degrees per frame max delta_a Jan 25 00:54:15 Automation is more complicated than what I currently understand, obviously. Sheesh. Jan 25 00:54:57 Well here is how to think about it, what's the fastest speed the servo can move Jan 25 00:55:22 20 ms Jan 25 00:55:29 they give you that number often in terms of how fast it can move 60 degrees. Jan 25 00:55:50 Oh. So, you can move 60 degrees in 20ms. Jan 25 00:55:52 Okay. Jan 25 00:55:59 from 0.08 to 0.5 often Jan 25 00:56:08 So, we have 180 degrees. Jan 25 00:56:09 Oh. Jan 25 00:56:56 frames are 20ms each so that means 4 to 25 frames to move 60 degrees. Jan 25 00:57:05 Hmm. Jan 25 00:57:24 I am unfamiliar w/ pots. Jan 25 00:57:29 Weird. Jan 25 00:57:32 so you use the max servo speed to know how fast you can move per frame Jan 25 00:57:45 Datasheet! Jan 25 00:58:29 So, if it states, the datasheet states, 10 frames, what is the math for that? Jan 25 00:58:57 10 / 60? Jan 25 00:59:47 10 * 20ms is 0.2s / 60 degrees or 6 degrees per frame max rate Jan 25 01:00:00 Oh. Okay. Jan 25 01:00:38 you set that on initialization so you check your delta_a and if it exceeds that max value you set it to the max value instead Jan 25 01:01:07 so you don't do stupid things like try to move the servo faster than you can Jan 25 01:01:20 Right! Jan 25 01:01:23 But... Jan 25 01:01:33 What is delta_a exactly? Jan 25 01:02:03 Oh. delta_a = frame / 60 degrees? Jan 25 01:03:56 delta_a degree change per frame Jan 25 01:04:24 you start at say angle_1 and you add delta_a every 20ms / frame Jan 25 01:04:37 until you reach angle_5 Jan 25 01:04:39 Aw. Degree change per frame! Now, we are getting somewhere. So, I have a list of five angles already set up in my script. Jan 25 01:04:41 Okay. Jan 25 01:05:06 0, 45, 90, 135, 180 Jan 25 01:05:18 Should I stay away from 0 and 180? Jan 25 01:05:28 you have 5 angles.. what is the time between each angle? Jan 25 01:05:41 Please hold. Jan 25 01:06:02 * GenTooMan looks at the bag he's holding confused like. Jan 25 01:06:03 4 ms? Jan 25 01:06:10 What is this? Jan 25 01:06:14 Ha. Jan 25 01:06:41 ummm you want to change 45 degrees in 4ms? Jan 25 01:07:06 Yep. That is it. Please hold. I need to rack my brain. First things first. Jan 25 01:07:19 Give me a second or two. Jan 25 01:07:29 I need to go through your notes. Jan 25 01:07:37 Ha. Jan 25 01:07:56 * GenTooMan begins start a forest fire in the middle of the ocean. Jan 25 01:08:22 Molecules are growing in my Obdula Meligula! Jan 25 01:09:55 There are not five (I have five angles) frames in 180 degrees if each frame is 60 degrees. Jan 25 01:10:08 I am stumped. Please hold. Jan 25 01:12:30 servo as in RC servo or industrial servo? Jan 25 01:13:25 0.016 Jan 25 01:14:29 Come on teach, tell me the dang answer! Jan 25 01:19:11 I am still working on it. Jan 25 01:19:51 set_ 1 if the servo spec says 0.1s/60 and you have 180 degrees it will take 300ms to move 180 degrees. Jan 25 01:20:01 ds2 yes (heh) :D Jan 25 01:20:11 Okay. 300ms = 3 sec. right? Jan 25 01:20:12 Okay. Jan 25 01:20:23 set_ 300ms = 0.3sec Jan 25 01:20:30 Oh. Jan 25 01:20:46 0.3, Okay. Jan 25 01:20:50 set_ your frame rate is 50frames/sec or 20ms period Jan 25 01:21:43 set_ so the maximum number of frames to move for 0.3sec is 0.3/20ms or 0.3*50 Jan 25 01:21:45 So, if I move 5 angles, I have four free spaces in between each point, which is 4 * 20 ms = 80 ms or 0.08 sec. Jan 25 01:22:16 Oh. The datasheet will show me that info. Okay. I do not have my datasheet right here. I need to get it. Jan 25 01:23:21 might help... anyhow that's the fastest rate you can move at (and how many times you have to change the servo angle) exceeding that will just do nothing useful. Jan 25 01:23:43 Okay. I will miss my torque and power? Jan 25 01:26:10 https://www.servocity.com/s3003-servo is my servo. They are discontinued for some reason. Probably spline issues. Jan 25 01:27:18 set_ the servo can only move so fast, setting it to a position that is further than it can move per unit time is self defeating. Jan 25 01:28:11 Speed: 0.23 sec60 4.8V && 0.19 sec60 6V Jan 25 01:28:19 How is that? Jan 25 01:28:29 I found the info. w/out the datasheet. Jan 25 01:28:39 that's the answer you need. What voltage are you running at? Jan 25 01:28:52 For now. 3.3v. Jan 25 01:29:03 Well... Jan 25 01:29:05 Hmm. Jan 25 01:29:11 Let me check. Jan 25 01:29:20 check your servo power Jan 25 01:30:48 I have a Motor Bridge Cape w/ servo headers on it. I am plugged in via the USB cord from the BBGW. Jan 25 01:31:15 I would guess 5v for now. Jan 25 01:32:37 then 0.23s/60 Jan 25 01:32:51 set_ 5 is about 4.8V Jan 25 01:33:24 Yea. That makes sense. I have no way to test. I have to find some article about the Motor Bridge Cape real quickly to see if it runs on 5v or not. Jan 25 01:35:01 Yep. 5v Jan 25 01:35:03 so max rate is 60/(0.23*50) or 5.2 degrees per frame. Jan 25 01:36:53 So, I can move 5.2 degrees each movement or I run out of torque which makes my servo useless. Jan 25 01:37:14 you can change the angle 5.2 degrees every 20ms or frame Jan 25 01:38:23 So, before I go speeding into moving I need to account for frames and speed and time. Jan 25 01:39:38 right so each time you go 45 degrees it will take you int(45/5.2)+1 frames Jan 25 01:39:57 so, 60 = time in seconds? Jan 25 01:40:15 Oh. No. Jan 25 01:40:19 Sorry. Jan 25 01:40:49 basically 9 frames (180ms) for each 45 degree step. Jan 25 01:41:34 0.23 seconds is my time ratio; 60 is the degree of motion; What is the 50 in that equation? Jan 25 01:41:37 Voltage? Jan 25 01:42:38 Five movements * 10? Jan 25 01:43:08 50 frames per second Jan 25 01:43:43 Oh. Jan 25 01:43:47 I thought it was 60? Jan 25 01:44:05 that would be 16.6666666666666666666666666666666666666666666666666666666666666667ms per frame not 20ms Jan 25 01:44:21 Okay. Jan 25 01:44:30 60 degrees Jan 25 01:44:41 Please forgive me. That is how I came up w/ the answer of 0.016 earlier. Jan 25 01:44:54 Sorry. Jan 25 01:45:11 I need to read again. You are right and i am confused about the bag in my hand. Jan 25 01:45:50 right tossing units in 60degrees/(0.23sec*50frames/sec) comes out to 5.2degrees/frame Jan 25 01:46:52 can you follow now? Jan 25 01:47:18 Sorry. Yea. Spell it out, homey! Jan 25 01:47:23 Sheesh. Jan 25 01:47:33 Do not fret. I understand english. NO reason to be short. Jan 25 01:47:41 Okay. Jan 25 01:47:43 So... Jan 25 01:48:54 60 = degrees; 0.23 = seconds; 50 = frames a sec. Jan 25 01:48:56 Wait. Jan 25 01:49:20 so, it is actually frames divided by seconds? Jan 25 01:49:42 Or...is it just frames a second? Jan 25 01:50:46 it's just calculating how fast you can change the servo angle per 20ms frame period. Jan 25 01:51:13 if you just randomly set an angle and don't wait for the servo to move, it will go crazy Jan 25 01:51:56 So, 60 / (0.23 * 50) = 5.2? Jan 25 01:52:16 Okay. Jan 25 01:52:51 My servo at times buzzes. This means that I am moving the servo too quickly w/ the BBGW instead of making time available for the frames per second. Jan 25 01:54:01 and this, int(45/5.2) + 1 means what? Jan 25 01:54:23 I got the answer and my angles but what is the addition of 1 doing? Jan 25 01:54:53 I am missing that part I guess. Jan 25 01:55:15 right so you have to round up or you will have to few steps. Jan 25 01:55:29 Oh. Jan 25 01:55:35 Now, I understand. Jan 25 01:56:07 So, w/ floats and ints in python, the addition of one makes it round up? Jan 25 01:56:22 and technically it's int(45 degrees/5.2 degrees/frame)+1 Jan 25 01:57:04 forces it because you only have a integer number of frames unless you want to have frame fractions (complicated) Jan 25 01:57:27 Stop for a second: when you type out degrees/frame there, do you mean degrees divided by frame or degrees per frame? Jan 25 01:57:28 Right. Jan 25 01:57:39 I have not got into complex numbers that much in python. Jan 25 01:58:18 set_ KISS Keep It Simple Silly. Jan 25 01:59:06 Aw. Yea. Simplistic things are nice b/c of my lack of research abilities. Jan 25 01:59:08 set_ you've had your basic science classes right? You must balance out units in an equation. So degrees/frame is the max change in angle you can do every frame or every 20ms Jan 25 02:00:07 in this case 5.2degrees/frame (it does make sense) you angle change is 45 degrees so dividing by degrees per frame gives you frames for units. Jan 25 02:00:51 Consider me undereducated. For reasons that are already done, I am undereducated. Jan 25 02:01:13 Now, I did go to college and I did graduate but I missed H.S. totally. Jan 25 02:01:39 I made it to 9th grade and had to adopt to an odd life of walking. Jan 25 02:01:46 Sorry. My science edu. is lacking. Jan 25 02:02:58 Serious. So, when you discuss things, I may be unknowingly answering to something I do not understand just yet. Jan 25 02:03:40 So, 5.2 is degrees divided by frames. Jan 25 02:03:41 Okay. Jan 25 02:03:52 Ok let's break up the servo movement in terms of the smallest time unit Jan 25 02:03:59 Yes! Jan 25 02:04:12 ms? Jan 25 02:04:33 what is the smallest time unit you actually have? IE what is the fastest you can change your input to the servo? Jan 25 02:05:47 I have no clue. The coprocessor can flip around some electricity and make it hit the servo headers almost instantaneously. Jan 25 02:06:01 Oh. Jan 25 02:06:04 From the datasheet. Jan 25 02:06:12 0.23 seconds Jan 25 02:06:39 how often to pulses go to the servo to set it's position? Jan 25 02:07:31 50 frames Jan 25 02:07:48 I am guessing. I am not familiar w/ pulses yet. Jan 25 02:07:55 Let me look it up. Jan 25 02:08:40 5.2 Jan 25 02:09:08 5.2 frames a second Jan 25 02:10:01 Hey GenTooMan: I tried. You and your servo ideas need to have me read more before I can grip what you are understanding. Jan 25 02:10:16 wikipedia perhaps? Jan 25 02:10:46 Meaning. I do not completely read about servos that often but I view articles from time to time. I will get a site up real quickly. Jan 25 02:11:46 here https://en.wikipedia.org/wiki/Servo_control Jan 25 02:12:42 brb. I will check it out. Jan 25 02:25:16 sigh... w/o TIDL... 360 seconds per frame :( Jan 25 02:27:10 6 minutes is a bit extreme Jan 25 02:27:18 Sorry. Jan 25 02:27:29 I was reading a bunch of stuff and getting nowhere. Jan 25 02:27:36 talking to ds2 Jan 25 02:27:39 Too many clicks and oh. Jan 25 02:27:43 Okay. Jan 25 02:28:05 all you need was on that link Jan 25 02:32:48 I looked on that link. I will read it again. Jan 25 02:33:31 so what are you looking for set? start with that in mind Jan 25 02:33:58 try Pulse duration Jan 25 02:34:07 http://www.societyofrobots.com/actuators_servos.shtml Jan 25 02:35:11 https://en.wikipedia.org/wiki/Servo_control <-- here :) Jan 25 02:35:20 Okay. .Fine. Jan 25 02:35:42 try Pulse duration Jan 25 02:38:36 Is freq. actually frame rate? Jan 25 02:42:46 yes Jan 25 02:45:38 Oh. Jan 25 02:53:52 so how often can you update the servo? Jan 25 02:54:59 these things Jan 25 02:55:34 once every 20mS isn't it? Jan 25 02:56:41 Ever 0.0015 seconds! Jan 25 02:57:58 Oh wait. Jan 25 02:58:13 I have no clue. Jan 25 02:58:27 I just read too much. Sorry. Jan 25 02:58:59 frequency frame rate? Jan 25 02:59:28 Every so often. My brain is mush right now. Please forgive me. **** ENDING LOGGING AT Sat Jan 25 02:59:59 2020