主要内容

搜索

Greetings!

So, I'm working on a project that needs to send collected data using a SIM808 over GPRS to ThingSpeak to multiple fields. The upload interval is 2 minutes with samples taken every 10 seconds and each batch of samples includes 19 bytes of data (12 sets of 19 bytes equal 228B for each bulk data pack that has to be sent and the memory can be flushed). It's worth mentioning that I'm using an Arduino Pro Mini (ATmega328P).

I've looked at the bulk data upload example, and I'm having some trouble adapting it to the SIM808. I am also not sure how to send multiple fields using the bulk method. Unfortunately, I don't have much time to tinker with the code as the whole project had to be done in 2 days and I've only got one day to finish. I'd appreciate any help regarding this as I'm on a very tight schedule.

Thanks in advance!

App Designer
34%
GUIDE
12%
Built in funcs (inputdlg, uigetdir)
6%
Low level functions (uibutton,etc)
7%
Excel, Visual Basic, Python, etc.
4%
I don't build or use GUIs
38%
1170 个投票
A bunch of quick, simple problems
16%
A structured, educational set
15%
Brain-teasers
16%
Random miscellany
3%
Something else
2%
What are Problem Groups?
49%
1777 个投票

We've started a new video series on how and why to use ThingSpeak. IoT from Data to Action . Most of you pros here at the forum probably already know this stuff, but there's some great overview material in these videos if you are interested. Two of four planned movies are posted, Ill let you know again when the others come out too. -Christopher

In Week 2, the contest entered a new phase – the voting started! As of today, 6000+ votes have been cast on almost 1000 entries in the GALLERY! As a result, YOU raised $5000+ for Direct Relief in addition to the $2400 raised via the Treasure Hunt contest! We encourage you to continue sharing the contest to inspire others to participate by either voting or creating new entries so we can donate even more!

MATLAB Mini Hack Winners - Week 2

I won’t say judging is getting easier in Week 2 - amazing entries keep coming in every day. Congratulations to the winners! Each of you has won a special edition T-shirt.

Bonus Prize Winners - Week 2

We are giving out additional giveaways to participants of both the Treasure Hunt and the MATLAB Mini Hack . Congratulations to our 5 winners. Each of you has also won a special edition T-shirt.

  • Simon Thor
  • Eric Ogier
  • David Hill
  • Lyes Demri
  • Highphi

What’s new in Week 3?

In Week 3, we will add several new categories in which we hope to see more creative entries:

  • Holidays
  • Album covers
  • Food & Drinks
  • MathWorks logo
  • Fractals

Categorical navigation is now available in MATLAB Answers.

  • Categories empower you to find, watch, and answer questions by topic and product, rather than product alone.
  • Individual answers have been categorized using an AI model written by MathWorks developers. Read more about our method here.

FAQ

1. What if I've bookmarked or subscribed to a product?

The links will continue to work but use a different filter mechanism.  We encourage you to try the new category filter, to find more questions in your topic of interest.

2. Can I still select a product on the question?

Yes - and product and tags are factored into the text analytics algorithm.  Correcting those fields should improve the nightly categorization. 

Categories are also shown in the Help Center.

Check out your favorite topic of interest and let us know how we're doing in the comments below!

Hi Distance Learning Community members, if you are looking for content in Descriptive Statistics and Probability Distributions for teaching in a course or just brushing up on the concepts yourself, check out these Live Scripts developed by Dr. Ward Nickle from Humboldt State University. If you are interested, this material is also available in Japanese . Enjoy and looking forward to hearing your thoughts!!

Hello! I have been working on an app for viewing thingspeak numerical data as graphs and I'm planning to publish it on playstore soon. If anybody is interested to test the beta version I would appreciate it. Here is the link https://play.google.com/apps/testing/com.mlundell.theThingV

ThankYou !

Magnus

I have both of my account profile and channel export time zones set to "(GMT+8000)Beijing". The datetime from the exported feeds.csv looks like:

'2021-09-06 11:16:28 CST'

I want to import data, but MATLAB do not directly understand its datetime format. I assume "CST" to be "China Standard Time", but when I try to convert it to datetime, MATLAB throws an error:

 >> datetime(s,'InputFormat',"yyyy-MM-dd HH:mm:ss z","TimeZone","Asia/Shanghai","Locale","zh_CN")
 Error using datetime (line 651)
 Unable to convert '2021-09-06 11:16:28 JST' to datetime using the format 'yyyy-MM-dd HH:mm:ss z' and locale 'zh_CN'.

However if I change the "Locale" to US instead:

>>datetime(s,'InputFormat',"yyyy-MM-dd HH:mm:ss z","TimeZone","Asia/Shanghai","Locale","en_US")
ans = 
    datetime
07-Sep-2021 01:16:28

There is no error, but the time is wrong and is 14 hours ahead. So I guess that MATLAB sees this "CST" as "Central Standard Time".

My point is:

  1. It's pretty strange that the datetime exported by ThingSpeak could not be directly understood by MATLAB. MATLAB is supposed to work with ThingSpeak data seamlessly, but now I have to find a detour to import ThingSpeak data to MATLAB.
  2. It seems that the datetime function needs improvement to understand this "CST" timezone, or that ThingSpeak could improve its datetime output format.

In just one week, 500+ amazing entries were created. Math rocks and you rock!

Help us show the world the beauty of mathematics by sharing your work with your friends, classmates, or colleagues. You can also help fight the global pandemic by voting. For each vote, MathWorks will donate $1 to Direct Relief. See the Voting FAQs below for details.

MATLAB Mini Hack Winners - Week 1

Let’s start by saying: your awesome work made our judging VERY HARD! We came up with several categories with one winner each. Congratulations to the winners! Each of you won a special edition T-shirt:

Bonus Prize Winners - Week 1

As we announced last week, we are giving additional giveaways to participants of both the Treasure Hunt contest and the MATLAB Mini Hack contest . Congratulations to our 5 winners. Each of you also won a special edition T-shirt

  • Jan Orwat
  • warnerchang
  • Davide OLIVIERI
  • Daniel Niblett
  • KARUPPASAMYPANDIYAN M

Voting FAQs:

Q1: Who can vote?

Anyone with a MathWorks account can vote.

Q2: How many times can I vote?

There here is no limit to the number of votes you can cast. Vote for as many entries as you like (one vote per entry).

Q3: How do my votes increase MathWorks’ charity donation?

For every vote an entry gets, we will donate $1 to Direct Relief with a maximum amount of $20 donated per entry. MathWorks will donate up to a maximum of $20,000 based on the combined totals raised by task participation in the Treasure Hunt and voting in the MATLAB Mini Hack .

Q4. How do I win?

At the end of the contest, the top 10 participants on the leaderboard will each get an Amazon gift card and the top 3 will earn special badges. The 10 highest voted entries will win 5 customized T-shirts. See the full contest details.

Every week, we will also award surprise prizes for more fun.

Note that MathWorks staff are NOT eligible for prizes.

Q5: How do votes on my entries determine my rank on the leaderboard?

The total number of votes on ALL of your entries determines your rank on the leaderboard.

Q6: Do votes on remixed entries add votes to the original entry?

No. We count only direct votes on an entry.

Q7: Is the code (also) automatically compared to earlier submissions to determine the remix tree?

No. You have to remix an entry.

What amazing images can be created with no more than 280 characters of MATLAB code? Check out the GALLERY of 700+ entries from the MATLAB Mini Hack contest.

VOTE on your favorite images and help fight the global pandemic! For every vote an entry gets, MathWorks will donate $1 to Direct Relief *.

How can I vote?

1) You need to log in with your MathWorks Account. If you do not have a MathWorks Account, you can create one at MathWorks sign in .

2) You can vote for an entry by clicking on the heart icon on an entry card or the vote button on the entry detail page.

*Maximum amount of $20 donated per entry; maximum of $20,000 donated based on the combined totals raised from the Treasure Hunt contest and the MATLAB Mini Hack contest.

Just in 2 days since the contest started, we already have 200+ awesome entries in the MATLAB Mini Hack contests. We are excited to see so many talented and creative community members enjoying the contest and learning from each other.

If you haven’t created your entry, try remixing an entry you like. Make some SMALL changes and see what it would look like. Remix is highly encouraged in this contest.

If you haven’t entered the Treasure Hunt contest, give it a try. Your participation will not only win you a prize but also bump up MathWorks’ donation to a charity organization that fights the global pandemic.

Reminder:

  • Voting will start next Monday.
  • Weekly surprise giveaways will also be announced next Monday. Still time left to create your entries, original or remixed!

I'm not a programmer but I'm loving Thingspeak!

by way of background: i have been having mysterious PM 2.5 spikes on my PurpleAir several times a day (usually from ~12 ug/m3 to 100 ug/m3!!). i recently figured out what is causing it: i live by a charcoal burger place that sends smoke throughout my neighborhood when they relight their grill at peak hours. it is what it is unfortunately, until these restaurants get properly regulated.

that being said, i like to work in my yard, and id love to be able to just put on an N95 when a charcoal smoke event is happening. so i'm trying to use thingspeak to build a little notification system for me.

the PurpleAir Thingspeak channels are private (by default I believe), so I'm using a Matlab analysis to copy the raw data from the PurpleAir Thingspeak channel over to a channel I can administer.

next i set up TimeControls to run the data update Matlab analysis at 5 minute intervals, and staggered them apart from each other (the channel seems to be updating just about every minute now).

next i set up a React that, upon data insertion of a PM 2.5 value above 35 mg/um3, triggers a ThingHTTP which sends a request to Pushover's API --> so I get text messages and Chrome notifications when there are air events.

this seems to be working great so far -- the air in LA right now is pretty good, so it just captures the transient charcoal smoke events and notifies me of them.

but my concern is --> the air in LA can often get worse for extended periods. Some days, the average will be 40 ug/m3. so when those days inevitably come, will my system just be constantly chirping at me all day about the air values?

if so, is there anything i can do about this? is there a way to tell react to notify me, but then only retest again after an hour, for instance?

thanks for your help, thingspeak community!

Hi everyone,

I need your help. As of 10-4-2021 the option of &headers=false stopped working?

It worked beautifully for about 2 years (circa early 2020) and suddenly on 10-4 the headers are being returned despite this option in the URL (no testing with Chrome isn't a credible test, it internally suppresses them regardless)

Need your help, if there's a way to suppress headers and just return the value of interest as it worked prior to Monday 10-4-2021

Thank you Boyan

How do I code my arduino sketch in order to get the HTTP response from an arduino post?

Hello,

I am working on a project which measures the water level in a well and the temperature of the water. Currently, we have a few of these units deployed in the field and they are working well, but our environmental engineer does not like the water level graphs because they are not "intuitive" enough. The water levels displayed on our graphs are simply the distance between the surface of the water and our distance sensor, so when the water in the well rises, the y-axis value drops, which bothers the environmental guy. Is there a way to flip the y-axis without driving back out to these rural locations and flashing revised code to the mcu? I have been looking around the channel and graph settings and I do not see anything. Google has taken me to some matlab forum links which suggest changing values in objects, which I do not think is any help right now.

Any help is appreciated.

As part of MATLAB Central’s 20 year anniversary celebration, we created the MATLAB Mini Hack . The contest starts today on Oct. 4th!

What to do?

Generate an interesting image using up to 280 characters of MATLAB code.

Who can play?

Participants across all skill levels are welcome. Create original entries of your own code, remix others’ entries and make them your own, or simply vote on ENTRIES you love!

How to win prizes?

Those at the top of the leaderboard at the end of the contest will win up to $300 Amazon gift cards, 5 customized T-shirts, or special badges. Visit the prizes section on the contest page for more information.

To add more fun, we will award RANDOM PRIZES that every participant has a chance to win.

  • Each week, we will pick 5 players who participate in both the Treasure Hunt and MATLAB Mini Hack .
  • Each week, we will have different surprise giveaways.

Important Notes

  • The first week (Oct. 4th, 2021 ~ Oct. 10th 2021) is for creating entries only. Voting starts on Week 2.
  • Make sure you follow the contests (click the ‘follow the contests’ button on the top) to get notified when prizes are awarded and of other important announcements. We hope you are the winner!

Hi,

my first time to use thingspeak. I have a graph where from time to time there is a peak with 4000, ussualy the data ist arround 50. When I insert the "hampel(my_variable)" I get a message that the toolbox is requierd.

Is there a different way to get rid of these spikes?

greetings

As part of MATLAB Central’s 20 year anniversary celebration, we created the MATLAB Mini Hack . The contest starts today on Oct. 4th!

What to do?

Generate an interesting image using up to 280 characters of MATLAB code.

Who can play?

Participants across all skill levels are welcome. Create original entries of your own code, remix others’ entries and make them your own, or simply vote on ENTRIES you love!

How to win prizes?

Those at the top of the leaderboard at the end of the contest will win up to $300 Amazon gift cards, 5 customized T-shirts, or special badges. Visit the prizes section on the contest page for more information.

To add more fun, we will award RANDOM PRIZES that every participant has a chance to win.

  • Each week, we will pick 5 players who participate in both the Treasure Hunt and MATLAB Mini Hack .
  • Each week, we will have different surprise giveaways.

Important Notes

  • The first week (Oct. 4th, 2021 ~ Oct. 10th 2021) is for creating entries only. Voting starts on Week 2.
  • Make sure you follow the contests (click the ‘follow the contests’ button on the top) to get notified when prizes are awarded and of other important announcements.

We hope you are the winner!

Title pretty much explains it. I can control a TMC2209 Stepper Motor controller or a BMP280 Barometric Pressure device, but when I hook both up to one MEGA if fails. Help would be greatly appreciated. The goal is to sample the barometric pressure, run a vacuum pump to bring the pressure down inside a vessel, then bring the pressure back to the sampled value and then run stepper motors with the TMC2209.

#include "SparkFunBME280.h"

//Stepper driver pin definitions #define PIN_STEP_ENABLE 14 #define PIN_STEP1_DIRECTION 13 #define PIN_STEP1_STEP 12

BME280 mySensorA; //Uses default I2C address 0x77 BME280 mySensorB; //Uses I2C address 0x76 (jumper closed)

void setup() { //Configuer stepper driver pins as OUTPUTs pinMode(PIN_STEP1_DIRECTION, OUTPUT); pinMode(PIN_STEP1_STEP, OUTPUT); pinMode(PIN_STEP_ENABLE, OUTPUT);

//ENABLE pin has to be pulled LOW for TMC2209 digitalWrite(PIN_STEP_ENABLE, LOW);

//Serial.begin(115200);

//Wire.begin();

mySensorA.setI2CAddress(0x76); //The default for the SparkFun Environmental Combo board is 0x77 (jumper open). //If you close the jumper it is 0x76 //The I2C address must be set before .begin() otherwise the cal values will fail to load.

if(mySensorA.beginI2C() == false) Serial.println("Sensor A connect failed"); //if I remark out his line and the line //like it for SensorB ( 2 lines down ) the stepper will run but I get no pressure readings, I stopped getting pressure //readings as soon as I added the code to operate the TMC2209

mySensorB.setI2CAddress(0x76); //Connect to a second sensor if(mySensorB.beginI2C() == false) Serial.println("Sensor B connect failed");

Wire.begin(); Serial.begin(115200);

}

void loop() { //determine starting direction of Stepper digitalWrite(PIN_STEP1_DIRECTION,HIGH);

// Makes 200 pulses for making one full cycle rotation for(int x = 0; x < 2000; x++) { Serial.println(" Forword "); digitalWrite(PIN_STEP1_STEP,HIGH); delayMicroseconds(50); digitalWrite(PIN_STEP1_STEP,LOW); delayMicroseconds(50); } delay(1000); // One second delay

digitalWrite(PIN_STEP1_DIRECTION,LOW); //Changes the rotations direction // Makes 400 pulses for making two full cycle rotation for(int x = 0; x < 2000; x++) { Serial.println(" Reverse "); digitalWrite(PIN_STEP1_STEP,HIGH); delayMicroseconds(50); digitalWrite(PIN_STEP1_STEP,LOW); delayMicroseconds(50); } delay(1000);

Serial.print(" PressureA: "); Serial.println(mySensorA.readFloatPressure(), 0);

//Serial.print(" PressureB: "); //Serial.println(mySensorB.readFloatPressure(), 0);

Serial.println();

delay(500); }