Notifications
Clear all

Understanding IDE Libraries

43 Posts
4 Users
10 Likes
2,573 Views
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6984
 

@peterpoggi Are you Mac or Windows?

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
ReplyQuote
(@peterpoggi)
Member
Joined: 3 years ago
Posts: 24
Topic starter  

@ronalex4203 Hi, I'm Windows10, so it's going to be a bit different.Β Β 


   
ReplyQuote
Inst-Tech
(@inst-tech)
Member
Joined: 2 years ago
Posts: 554
 

@peterpoggiΒ  Happy that we both found out what and where the libraries are...lol

@ronelex4203 gave us a good lesson in what not to do, so, we are now better off than we were.. I had the file already in my C:\Users\Owner\Documents\Arduino folder as I always back up my files to another directory and store them on a flash drive or my 500 GB external drive.. so, once I figured out that the IDE preferences were pointing to the wrong library, ie: the Arduino program directory library folder, then all I had to do was change that preference to C:\Users\Owner\Documents\Arduino and everything is now good.

I found it by looking at the references setting on my windows 8 laptop, which I use out in my shop, when it's not too cold like is is today..lol

good luck, have fun, and be safe..

kind regards,

LouisR

LouisR


   
PeterPoggi reacted
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6984
 

@peterpoggi Yep. What I see is a system level library for the core and the builtin no duplicates possible so equal priority and the user source library that you populate from Manage Libraries, and Include Library. It is last priority and again no possible duplicates other than a sloppy github contribution that you are the unlucky individual to be the first user of.

I think in windows the core and builtin are in different directories but since there is no possible name duplication since arduino controls both libraries so the concatenation priority may indeed be core then builtin then user it is essentially the same as my one library core and builtin.

Isn't it odd that Windows has the tighter security, I have write access to both my libraries as the 'system' library is under my user dir. Yes I checked permissions.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
Inst-Tech reacted
ReplyQuote
(@peterpoggi)
Member
Joined: 3 years ago
Posts: 24
Topic starter  

@inst-tech Thanks Louis πŸ™‚ You as well.Β  Β Yes it's freezin ass cold here too


   
Inst-Tech reacted
ReplyQuote
(@peterpoggi)
Member
Joined: 3 years ago
Posts: 24
Topic starter  

@ronalex4203, Β @ronalex4203

Good morning gentlemen,Β 

Sorry for the delayed reply - life occasionally interrupts..Β  Meanwhile, i thought I would take a moment and illustrate what I have done with my current "portable" installation, running under Win10. You can see where any sample sketches that I modify are stored, generally with a prefix of "my".Β  The advantage is that ALL libraries are located in one place. However, if I understand correctly, everything from the /portable level and below is vulnerable to being overwritten & destroyed when the Arduino IDE promotes to a new release?Β 

Portable Directory.2

My "keypad" library and sketch tutorial installed and ran successfully.Β  Given I am just playing and not really vulnerable to data loss I will probably delete the entire works again and reinstall the IDE as @Ronalex4203 recommends, if for no other reason than to see where the various files and libraries reside.Β 


   
ReplyQuote
Inst-Tech
(@inst-tech)
Member
Joined: 2 years ago
Posts: 554
 

@peterpoggi, Oh, BTW... I forgot to mention that there is no such thing as obtuse when looking for answers to questions.. the only stupid question is the one not asked! In my former work life, I was also an instructor to guys that were often my age group, who had been techs for 25 , 30years, or even longer..and what I found was that many didn't want to let anyone know that they didn't know something for fear of them being considered obtuse..Well, as I always said, everyone doesn't know something about a particular subject, and what is obvious to one is not necessarily obvious to another. If you don't ask, then others just assume that you know and understand the subject matter at hand. It was fun to see the "light bulb" go off in their heads when I could find a way to explain it so the could understand the basic concept. I was always surprised to learn something new when a student asked a question that I had never thought about before, so we both ended up learning something new!..Β  The other thing I learned was not everyone can teach, no matter how versed they are in the subject matter.. believe me, it took a lot of "training the trainer" so I could deal with many of those ol' farts...lol

Β  Much success to you going further in to the abyss of electronics and computer science..Β  we are all learning as we go..

kind regards,

LouisR

LouisR


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6984
 

@peterpoggi I am unsure why you want this so called 'portable' setup and from the info you have provided I don't really get it but thats not important. What IS important is you are messing with the operating system files. Program Files should never be someplace you play in. I am shocked system security doesn't block you.

I have a super busy day today but at some point I will fire up a copy of windows and install arduino so I can see where everything goes.

CONCEPTUALLY as described in the Arduino documentation on-line I think I showed you it speaks of a priority to resolving library references. The core first followed by the builtin although on my Mac they appear to be in the same physical place. That is doable since the Arduino organization controls what goes there and so ensure naming uniqueness between core and built in. The other place is the libraries folder that is created automatically. It is located in the Preferences Sketchbook directory/folder along with every sketch you create. I too like to name my sketches so I know by the name they are mine, but there is absolutely no harm, danger to leaving the name alone for any of the examples. I just noticed, there is something to be learned from lookig at the compiler messages. Try dragging the tiny compiler msg pane to a larger size and look at what is there. Arduino 1 and 2 are slightly different as well I think but since I used two different examples maybe not. I did get with Arduino 1 a read only error when saving the sample sketch, IIRC I just followed the suggested prompts and a copy was installed in my sketchbook in the normal fashion placement and name wise. Try a sample, modify it, look in your sketchbook directory that you specified in Preferences. Maybe add a builtin libarary vie Tools>Manage library and see the result in sketchbook dir>libraries, try another using the include library method. Does any of that help? I am trying to lead you away from that portable setup, it has some problems.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6984
 

@inst-tech As a former teacher at IBM, invited lecturer by Stratus, fly tying group leader, and so on, I am still learning how to be a better teacher. If a student doesn't 'get it' I consider it MY failure. Agree 100% there are no 'dumb' questions. On course I always asked the most questions, that's both how I learned, and by asking a question I either did know or was irrelevant to me, I could make notes while the teacher babbled on. I kept that technique a secret for many years but now I am confessing. As someone 'on the spectrum', I sometimes do use impolite language and I am sorry I did that here. I will continue to work hard at reining in my emotions and frustrations but I am human and sometimes slip.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
Inst-Tech reacted
ReplyQuote
Inst-Tech
(@inst-tech)
Member
Joined: 2 years ago
Posts: 554
 

@ronalex4203, I believe that everyone has flaws that we all have to work on...I have my own set of them, But I clearly understand what you are saying, and really do appreciate your knowledge and willingness to help others and contribute. I'm quite sure that others feel the same..

I know how frustrating it can be when dealing with others, especially when they don't know each other, their capabilities, and knowledge base. I was the SME for control valve technology for my plant, and listed in the Corporate Reliability EngineeringΒ  (International Paper), as a consultant SME, a very high honor for a technician.Β  ( I believe I was the only tech. in the corporation with honor)Β 

Having to deal with people who were not technically acute to that particular subject matter was indeed frustrating at times, especially because I was dealing mostly with engineers and process controls people that wouldn't know a control valve from a pair of sneakers as they regarded control valves asΒ  just "Pig iron" in the piping system...lol

Just to let you know I'm not the least embarrassed to ask questions, no matter how obtuse they may seem at time...lolΒ  Just bare with us a little longer until the newness of the basic things wares off..

Thank you again for helping us out.. andΒ  don't give it another thought..

kind regards,

LouisR

LouisR


   
ReplyQuote
(@peterpoggi)
Member
Joined: 3 years ago
Posts: 24
Topic starter  
Posted by: @ronalex4203

@inst-tech As a former teacher at IBM, invited lecturer by Stratus, fly tying group leader, and so on, I am still learning how to be a better teacher. If a student doesn't 'get it' I consider it MY failure. Agree 100% there are no 'dumb' questions. On course I always asked the most questions, that's both how I learned, and by asking a question I either did know or was irrelevant to me, I could make notes while the teacher babbled on. I kept that technique a secret for many years but now I am confessing. As someone 'on the spectrum', I sometimes do use impolite language and I am sorry I did that here. I will continue to work hard at reining in my emotions and frustrations but I am human and sometimes slip.

Hey, We're all human, and we all slip up - no harm done and we're all still friends πŸ™‚

Ronalex you explanations have helped me tremendously.Β  I don't intend to keep the portable install. My purpose was and is just to gain a better understanding of what's going on under the covers.

I'm interested in your thoughts about installing the 2.0 version of IDE instead of diving deeper into the 1.9 environment.Β 


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6984
 

@peterpoggi The 2.0 IDE is more modern, you are probably already accustomed to some of it's features. It is close to ready for prime time, RC3 I think so ok to 'play' with but if you are doing mission critical stuff then I would hold off. Then of course there is PlatformIO, Bill has a video about that. For the little projects I am doing and thinking about 1.0 is just fine but I will switch to 2.0 very soon and then play with PlatformIO.

Β 

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
ReplyQuote
(@peterpoggi)
Member
Joined: 3 years ago
Posts: 24
Topic starter  

@ronalex4203 Thanks. Maybe I'll install the RC3 and run those same examples to get a feel.Β  I did see Bill's video on XOD, but I haven't checked out PlatofomIO yet.Β  Sounds like another good video for a cold day(today).Β Β 

My mission critical days are long over.Β  I see you were in IBM too. I was in IBM also - 33 years, retired in 2016. Last assigned in WW Enterprise Software Sales Group, writing code in VBA excel macros, of all things.Β  I'm pretty sure that group has since been dissolved.Β  IMany of the younger folks I run into have never heard of IBM, or for that matter they've never heard of code reviews, unit test plans, integration test plans, or even requirements docs. lol.Β  Β Interesting how things change.Β Β 

Completely different topic - I just received a call from one of the folks at my fire station requesting help in making sure our resident outdoor feral cat "colony" continues to be fed during the shifts that she's off. My first thought was an automatic cat feeder, but she made a good point - the local racoons, opossums, and rats would probably set up lounge chairs and umbrellas next to this magical bottomless food dispenser.. Sooooo... my wheels are beginning to spin... maybe an automated, solar powered, dry food feeder that could differentiate between cats and other wild creatures, and actuate a food dispenser door???Β  Β 

Β 


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6984
 

@peterpoggi I was there 66 to 81, did lot's of interesting things, started as a hardware CE, moved to software CE, then head office IS, many papers later I was staff level before leaving to go on my own. There is a video here I think on a camera and software to recognize things, a cat should be easy enough. Here is the link

Let us know how it goes.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6984
 

I think MotionEyeOS also does recognition but maybe only humans. Runs on RasPi and maybe some other boards like ESP32 but not sure.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
ReplyQuote
Page 2 / 3