CROduino Nova serial port errors and pin mapping for sensors

Customer:

I have several follow-up questions about the CROduino Nova board I ordered.

When uploading Arduino code, I sometimes get the error "Error opening serial port ’ my port ’ ". I have selected the correct port and configured all settings according to the instructions. After a reset and several attempts, it suddenly works and the code uploads successfully. But then after some time it shows the same error again, and this happens intermittently. This works fine when testing at home, but I’m concerned it could happen during a presentation. Do you have experience with this issue and what’s the most effective way to fix it?

I also have several questions about analog and digital pins on the CROduino Nova board. Based on the PINOUT diagram, the analog pins are “A_e” and “A”, and the digital pins are D0-D5 and D12-D16. Since the KKM usually shows connection diagrams for CROduino Basic, when a digital pin is specified as input/output (for example, D7 on CROduino Basic for a sensor), can I use any digital pin instead on the CROduino Nova board? And if the KKM specifies an analog pin (usually A0), should I connect it to “A_e” or “A” on the CROduino Nova board?

Also regarding analog pin detection in the range 0-1023, particularly for gas detection sensors: is it possible to mathematically estimate or calculate the actual detected value (concentration) of a gas based on these readings? For example, if the MQ4 sensor datasheet (Soldered: Open-Source Electronics, Boards, Sensors & Modules – Soldered Electronics) states a detection range of 200-10000ppm CH4 natural gas, would a reading of 0 suggest the gas concentration is below the sensor’s detection threshold (200 ppm), a reading of 512 suggest it’s roughly in the middle of the sensor’s detectable range, and a reading of 1023 suggest the maximum concentration the sensor can detect (10000ppm or higher)? Can a linear mathematical operation like (analog pin reading / 1023) * 9800 + 200 give an approximately correct gas concentration, assuming the sensor is properly calibrated? I only need a rough value since this is for theoretical research and I won’t use it for actual measurements, so exact precision isn’t critical—just the approximate order of magnitude.

Original message (Croatian)

Vezano uz odabir Boarda ponekad mi kod uploada Arduino koda zna javiti grešku "Error opening serial port ’ moj port ’ ". Pravilan port je odabran i sve postavke sam podesio kao po uputama.. nakon reseta i nekoliko pokušaja odjednom “proradi” i uspješno uploada kod.. pa onda nakon nekog vremena ponovno javlja isti error i tako s vremena na vrijeme.. Kada kod kuće testiram to mi ne predstavlja problem, no prilikom prezentacije mi ne bi bilo zgodno da se tako nešto desi, pa me zanimalo imate li iskustva s tako nečim te kako to najefikasnije otkloniti ? Imam i nekoliko pitanja vezanih uz analogne i digitalne pinove na CROduino Nova pločici. Ako sam dobro protumačio PINOUT shemu CROduino Nova analogni pinovi su “A_e” i “A” pin, a digitalni pinovi su od D0-D5 i od D12-D16. Pošto su u KKM obično sheme za spajanje prikazane za CROduino Basic, kada je naveden neki digitalni pin kao input/output (npr. za jedan senzor to je D7 na CROduino Basicu) mogu koristiti bilo koji digitalni pit umjesto njega na CROduino Nova pločici ? A ako je u KKM naveden analogni pin (najčešće A0) onda da to spajam na “A_e” ili “A” na CROduino Nova pločici ? Također vezano uz analogni pin detect, naveden u rasponu 0-1023, ponajprije za senzore za detekciju plina me interesira, dali je moguće matematički na temelju tih očitanih vrijednosti okvirno procijeniti/izračunati stvarna očitana vrijednost(koncentracija) nekog plina ? Npr. ako u datasheetu za MQ4 senzor ( Soldered: Open-Source Electronics, Boards, Sensors & Modules – Soldered Electronics ) stoji da je raspon detekcije od 200 -10000ppm CH4 , natural gas, dali bi vrijednost 0 na očitanju s analognog pina sugerirala da je koncentracija plina ispod one razine koju senzor može očitati (200 ppm), vrijednost opr 512 da je taman u sredini vrijednosti koje senzor može očitati, a vrijednost 1023 da je očitana vrijednost maksimalna koju senzor može očitati (dakle da je koncentracija plina 10000ppm ili viša) ? Može li se tako linearnom matematičkom operacijom (vrijednost očitanja s analog pina / 1023) * 980 + 200 doći do otprilike točne koncentracije plina, naravno pod pretpostavkom da je senzor pravilno kalibriran i podešen [samo okvirna vrijednost mi je interesantna, pošto je istraživanje za teoretski rad i neću ga primjenjivati u stvarnim očitanjima nije bitno a bude pouzdana preciznost, već samo okvirno točan red veličina] ? Primjetio sam i telefonski kontakt na Vašem letku [phone removed] 44. Dali je taj broj dostupan za tehničku podršku, tj ukoliko mi je potrebna informacija u kratkom roku te nemam vremena čekati na odgovor putem e-maila ?

Originally submitted via email support on 30 January 2018. Migrated to the forum for community visibility.

Soldered Support:

The error when opening a serial port on Windows is usually related to Windows’ serial port management. One common cause is if the serial monitor remains open—some Arduino versions won’t allow uploading with the serial monitor still open. The most reliable workaround is to disconnect and reconnect the USB cable, after which it should work immediately.

The A and A_e pins are the same analog pin, but with different maximum voltages: the A pin has a maximum voltage of 1V, while A_e has a maximum voltage of 5V (there’s a voltage divider). Simply change the pin number in your code to whichever one you’re using on the Nova.

For gas sensors, unfortunately no. The output voltage is not linearly proportional to the number of particles in the air (ppm). These aren’t professional sensors, so you won’t be able to extract a precise ppm reading, but you can definitely get something approximate. Look at page 2 of the datasheet—the first graph shows the relationship between the two resistances inside the sensor relative to ppm: Soldered: Open-Source Electronics, Boards, Sensors & Modules – Soldered Electronics. Notice in the second graph that the whole thing depends on air humidity too. Here’s an example of how to calculate ppm: MQ 4 gas sensor · R2D2-2017/R2D2-2017 Wiki · GitHub

Original message (Croatian)

greška pri otvaranju serijskog porta na Windoswima većinom je vezana uz njihov managment serijskih portova koji nije baš najblistaviji.. :slight_smile: osim u slučaju kada serijski monitor ostane upaljen, neke verzije arduina ne dopuštaju upload s otvorenim serial monitorom. U svakom slučaju, ja to riješavam da samo iskopčam pa opet uključim USB kabel, nakon čega odmah proradi.

A i A_e pinovi su jedan te isti analogni pin, samo što je na A pinu max napon od 1V, dok je na A_e max napon od 5V(postoji voltage divider). Tako je, samo promjenite u programskom kodu broj pina na kojega ste spojili na NOVOj.

Za senzore plina, nažalost ne. Izlazni napon nije linearno proporcionalan sa brojem čestica u zraku(ppm). Ovo je nije profesionalni senzor tako da neko jako precizno očitanje u obliku ppm neće biti moguće izvući, ali nešto “otprilike” sigurno hoće. Možda i više od toga :slight_smile: Pogledajte na stranici 2 datasheeta prvi graf: Soldered: Open-Source Electronics, Boards, Sensors & Modules – Soldered Electronics
on pokazuje ovisnost između dva otpora unutar senzora s obzirom na ppm. Primjetite na drugom grafu da cijela stvar ovisi i o vlagi u zraku
ovo je primjer kako izračunati ppm: MQ 4 gas sensor · R2D2-2017/R2D2-2017 Wiki · GitHub

Nažalost, tehnička podrška preko kontakt broja nije dostupna(iako ćete, ako se javi netko od nas tko radi na tehničkoj podršci, vjerojatno dobiti odgovor ako je pitanje stvarno kratko).