Forum Replies Created
oh, yes, the full graphics LCD is what I have, sorry I wasn’t clear! I believe I have uncommented the correct LCD in configure.h:
// only uncomment one of these options
#define LCD_IS_128X64 // reprapdiscount Full Graphic Smart LCD Controller
//#define LCD_IS_SMART // reprapdiscount Smart LCD Controller (including XXL model)
wow, Dan, what a rollercoaster! but I am having fun 🙂
it seems that I had imported the u8glib files, without using the Arduino library manager, so they were tabs in the sketch. I’ve since deleted these and done as you said and now everything compiles nicely! However, at the very end it mentions that the memory is low… normal?
the next issue is the LCD screen is blank, I’ve double checked that configure.h identifies the correct LCD and tweaked the contrast pot any ideas?
thx, that was dead on, I found the sub-folder and pulled the file back out. now when I open the INO file I get all the tabs:)
however, when I attempted to compile I still had to feed in external version of u8glib.h and clib/u8g.h.
compiling with these got me all the way to the “linking everything together stage but then I received:
C:\Users\casey\AppData\Local\Temp\cc7Id92B.ltrans1.ltrans.o: In function `main’:
<artificial>:(.text.startup+0x198): undefined reference to `u8g_Begin’
I don’t know what “function ‘main'” is but I tracked down u8g_Begin and did not see any obvious syntax issues,
I’m assuming (probably wrongly) that my problem is with these .h files and tied to the fact that I’m having to import them. where are they normally found?
ok, that makes sense, but for me the INO file opens and there is only one tab.
this must be very tiring for you, I apologize 🙂
I believe I’m current with Arduino and the makelangelo versions, I’m very new to all of this so the answer is most likely a very simple step I’ve missed!
if this compiles nicely for you then it stands to reason I must be doing something wrong. this may happen in the beginning, I follow the steps in the README file but there are other steps I end up having to take that aren’t listed there, such as actively importing all the .h files in the sketch and having to download the U8glib.h file online in order to import it to the sketch. this is all stuff I’m assuming is normal but maybe its actually where the confusion begins? please advise
after starting over with the latest from GitHub and going through the extra steps above, I get stuck much earlier in the compiling than before:
In file included from C:\Users\casey\AppData\Local\Temp\arduino_build_949207\sketch\configure.h:208:0,
motor.h:34:17: error: ‘NUM_MOTORS’ was not declared in this scope
in motor.h there is no include for robot_zarplotter.h, so I figure it needs this for reference to the #define NUM_MOTORS contained within. I’ve added this include several places in motor.h with no luck, thoughts?
Dan, thanks for all the help here!
so far I’ve tackled a bunch of errors by correcting possible syntax issues, yet more keep popping up, hopefully I’m not just chasing my tail!
is it normal to have this many errors?
full circle and back again to printConfig. this is the one that stumps me currently:
Makelangelo-firmware:148:16: error: expected constructor, destructor, or type conversion before ‘;’ token
ok, silly me, I found printConfig in the makelangelo-firmware file, but this file already has eeprom.h included, what gives? I also don’t see loadVersion() within the prinConfig() function, is that strange?
hmm, I have searched all the files in the makelangelo-firmware folder and could not find a reference to printconfig(). any clues as to where I might look further?
thx, here is the first error I get:
C:\Users\casey\AppData\Local\Temp\ccUVN8Kl.ltrans0.ltrans.o: In function `printConfig()’:
<artificial>:(.text+0xf7e): undefined reference to `loadVersion()’
upon further research it seems that I can get extensions for RAMPS to run the motors I need, for now I am just trying to run the 4 required for the Zarplotter.
I found: char loadVersion();
its in eeprom.h, so what is the next step, is there information I need to place between the parenthesis?
I’ve taken your unspoken advice and abandoned the AM Shields in favor of a RAMPS board. this is now installed and powered up without smoking. I think have navigated the configure.h correctly and included all required libraries in my sketch but am getting hung up somewhere in the compiling. the code claims that I have an: undefined reference to `loadVersion()’, and then goes on to suggest many undefined references. I’m sure there is an easy answer to this yet its not obvious to me, can you point me in the right direction? how does one define ones loadversion?
thanks for your patience, how does one go about editing in a motor shield? maybe you could point me towards a tutorial or example? for my purposes the AMS speed is not an issue, and also the RAMPS board doesn’t seem to support enough (8) stepper motors.
if not, can you suggest a platform that drives 8 motors and also is supported by the firmware?
1. good, I’ve done that part (changing the machine style) its clearly described in the supporting text (thank you!). I guess I’m curious about turning off other items and lists. I want to make sure that the program is ignoring the appropriate lines. for instance the section about LCD screen: should I preclude these lines with a ‘//’ if I don’t have an LCD?
2.OK, thx, i see now that the RAMPS selection includes the MEGA by definition. does this mean that my stacked AMS V2.3 shields are not supported?
to be clear, this is an eight cable robot but for simplicity the upper cables will only act with counter weights whilst the lower four will be actively controlled for positioning and traction. in this way the machine will act just like a Zarplotter but it will be kept on plane through passive suspension. the idea is to keep the math simpler and reduce complexity/cost by reducing the number of controllers and drivers. if this still belongs in the skycam section I will happily move!
I’m confused when I begin to configure the firmware. I have currently two questions about the process:
1. basic coding question: when adjusting the commands in “configure.h” do I manually insert “//” before every line that does no apply? for example, would I preclude the list items below that are not zarplotter with a //?
2. the micro controller list, no Arduino mega there. but later in “// COMMUNICATION & BUFFERING” Arduino is specifically referenced. am I misunderstanding what a microcontroller is? can I use the hardware I have listed previously to complete this project?
sorry if these are no-brain questions, but there will be many more if you let me! I really appreciate your time 🙂
I am building a machine with Zarplotter attributes, however, instead of a flat surface the end effector is suspended by 4 upper cables. I currently have a 1×1 meter prototype built and am working on the hardware and electronics: 8 nema 17’s (12v, 1.7A), Arduino mega with 4 stacked shields (ams 2.3). I had this assembled before discovering the Makeleangelo and Zarplotter and I’m thinking the Zarplotter firmware might be a close fit for the project. Although I’m fairly robot illiterate I am learning and could use some advice. Is this the appropriate way to engage regarding Zarplotter setup and execution/ modification? should I begin a new thread? please advise,