Module 3.1: Programming Basic Functionality

Hi WildLoggers,

We're just about ready to share our next module with all of you! We have a little announcement regarding this module: Because there are so many videos in Module 3, we've decided to split it into two sections, each consisting of several sub-modules. 

Tomorrow, we'll be uploading the first sub-module for Module 3, and two more sub-modules will be released later this week.

This also means we'll be shifting our Office Hours focuses starting on December 22nd - that event will cover the first half of this module. This will give you more time to work through this material in-depth before we drop the second half. We'll let you know when the next batch of videos are live - but you can always subscribe to our Youtube to find out right away!

As always, use this thread to ask any questions to Akiba and Jacinta, work through the material together, and share your progress!

If you can't attend the first of our Module 3 Office Hours (register here if you'd like to join us!), we'll make sure Akiba and Jacinta answer it in the Q&A recording, or get back to you in this thread.

And of course, if you're not registered for the full course yet, make sure you sign up here to recieve all of our event invites and reminders when new modules go live.

See you in the lab!

-Ellie




Module 3 turned out to be the main part of the datalogger software implementation and teaching the concepts behind it was more massive than we originally expected. We tried to go beneath the surface of the technology so, for example, how an analog-to-digital converter works and the difference between 2-bit, 10-bit, and 16-bit analog to digital converters rather than just doing an analog to digital conversion.  Finally as we planned it out, we were getting close to 20 videos that needed to be made and thought it might be overwhelming, both for people following the course and for us. So we decided to split it into two parts. We think it's the best decision because it lets people absorb the material a bit more and also allows us to spend more time on the videos. 

And also please feel free to post questions, comments, or suggestions on how to improve the videos. 

Akiba

Hi everyone- another sub-module is now available on the Module page!

We'll share another sub-module next week, and keep you updated on how the overall schedule will shift after this entire third module is released.

If you haven't registered for Office Hours covering these three modules, you can do so here! (And if you're in a North/South/Central America timezone and want to attend our study group's office hours with Akiba, check this thread for updates.)

Happy building!

-Ellie

 

Awesome!

With the command line module, everything works for (setdate function etc), excpet the 'list' function. It doesn't print the the args passed, instead if I pass arg1 arg2 arg3, it prints 'arg4'. I've been looking through my code, but can't find where I go wrong.

Code:

#include <cmdArduino.h>

void setup() {
  // put your setup code here, to run once:
cmd.begin(57600);
Serial.println("Lab 1b - Command Line Argument List");

cmd.add("list", cmdList);
}

void loop() {
  // put your main code here, to run repeatedly:

  cmd.poll();

}

void cmdList(int argCnt, char **args)
{
  int i;
  for(i=0; i<argCnt; i++);
  {
    Serial.print("Arg ");
    Serial.print(i);
    Serial.print(": ");
    Serial.println(args[i]);
  }
}

Output in the serial monitor:

Lab 1b - Command Line Argument List

CMD: Command not recognized.

*************** CMD *******************
CMD >> list arg1 arg2 arg3
Arg 4:

*************** CMD *******************
CMD >>

Hello! Continuing to fail epically during this... in the first lab of submodule 1, after I've run the code and I open the serial monitor and press 'enter' like the video says to do, my monitor says "?H?J" or some variation of question marks (backward and forwards) and capital letters. I know this because I've tried multiple lines... I installed the library, I copied and pasted the code literally from the github page. I'm not seeing any sort of "command line" stuff that is showing up in the tutorial video. Also I'm pretty sure I either shocked myself or like invisibly sliced my finger somehow bc I touched something and now it's stinging..... I'm clearly thriving...ha. HELP