Using Serial.read() with Arduino | Part 2
Programming Electronics Academy
@programmingelectronicsAbout
Want to build confidence programming your electronics project? You're in the right place! At Programming Electronics Academy we are all about teaching programming and electronics with Arduino and other popular tools for prototyping your awesome ideas. We understand you might be new to programming so we strive to keep our tutorials simple without watering them down. Here you'll find videos that cover Arduino programming, hardware, common questions, and detailed walk throughs. Subscribe now, and start mapping out your Arduino training today! We release new tutorial twice a month, and have a weekly live show that dives into Arduino programming every Friday at 10AM EST.
Latest Posts
Video Description
👇 Download the Arduino Q Bridge Code👇 https://bit.ly/448L6OH Want to learn more? Check out our courses! https://bit.ly/33qhxbY ***Get the code, transcript, challenges, etc for this lesson on our website*** https://bit.ly/3eo4iyB We designed this circuit board for beginners! Kit-On-A-Shield: https://amzn.to/3lfWClU SHOP OUR FAVORITE STUFF! (affiliate links) --------------------------------------------------- Get your Free Trial of Altium PCB design Software https://www.altium.com/yt/programmingelectronicsacademy We use Rev Captions for our subtitles https://bit.ly/39trLeB Arduino UNO R3: Amazon: https://amzn.to/37eP4ra Newegg: https://bit.ly/3fahas8 Budget Arduino Kits: Amazon:https://amzn.to/3C0VqsH Newegg:https://bit.ly/3j4tISX Multimeter Options: Amazon: https://amzn.to/3rRo3E0 Newegg: https://bit.ly/3rJoekA Helping Hands: Amazon: https://amzn.to/3C8IYXZ Newegg: https://bit.ly/3fb03X1 Soldering Stations: Amazon: https://amzn.to/2VawmP4 Newegg: https://bit.ly/3BZ6oio AFFILIATES & REFERRALS --------------------------------------------------- ►Audible Plus Free trial: https://amzn.to/3j5IGrV ►Join Honey- Save Money https://bit.ly/3xmj7rH ►Download Glasswire for Free:https://bit.ly/3iv1fql FOLLOW US ELSEWHERE --------------------------------------------------- Facebook: https://www.facebook.com/ProgrammingElectronicsAcademy/ Twitter: https://twitter.com/ProgElecAcademy Website: https://www.programmingelectronics.com/ Now let’s tackle the first step of our algorithm – we create a character array to hold the incoming message and a position variable to help us move through each element in the array. We’ll also create a constant to hold the max length of our message and use this to initialize the character array. const unsigned int MAX_MESSAGE_LENGTH = 12; Now we need to check if any bytes are available in the serial receive buffer and while there are we need to read in the bytes in and save them to a temporary variable. We can use a while loop, Serial.available, Serial.read() to make this happen. Now we need to check to see if the byte we read is a terminating character or not… We can use an if-else statement for that. If it’s not a terminating character we’ll do one thing, and if it is a terminating character we’ll do something else. Now if we do get the terminating character that means we have received our entire message and we can actually do something with the message or data we received. In this case we’ll print the message to the Serial Monitor window. We’ll also need to reset our character array to prepare for the next message. Before we can call this complete, we need to enforce the max message length in the protocol. This will prevent us from exceeding the space that we allotted in our character array. We can add this guard to our existing if statement. if ( inByte != '\n' && (message_pos - MAX_MESSAGE_LENGTH - 1) ) FULL SERIAL.READ() CODE Here is the complete code to use Serial.read() to read in the entire message: //Many thanks to Nick Gammon for the basis of this code //http://www.gammon.com.au/serial const unsigned int MAX_MESSAGE_LENGTH = 12; void setup() { Serial.begin(9600); } void loop() { //Check to see if anything is available in the serial receive buffer while (Serial.available() _ 0) { //Create a place to hold the incoming message static char message[MAX_MESSAGE_LENGTH]; static unsigned int message_pos = 0; //Read the next available byte in the serial receive buffer char inByte = Serial.read(); //Message coming in (check not terminating character) and guard for over message size if ( inByte != '\n' && (message_pos - MAX_MESSAGE_LENGTH - 1) ) { //Add the incoming byte to our message message[message_pos] = inByte; message_pos++; } //Full message received... else { //Add null character to string message[message_pos] = '\0'; //Print the message (or do other things) Serial.println(message); //Reset for the next message message_pos = 0; } } } OK. This feels like a ton – I know! CONTINUED… https://bit.ly/3eo4iyB
Upgrade Your Everyday
AI-recommended products based on this video

Kasa Smart Outdoor Smart Plug by TP-Link (KP400) - Smart WiFi Outlet with 2 Sockets, IP64 Waterproof, Works with Alexa and Google Home, 2.4GHz WiFi Required, No Hub Required, Sunset & Sunrise Offset

Wireless Earbuds, Sports Bluetooth Headphones, 80Hrs Playtime Ear Buds with LED Power Display, Noise Canceling Headset, IPX7 Waterproof Earphones for Workout/Running Z(Black)

Monster Wireless Earbuds, Bluetooth 5.4 in Ear Stereo Headphones, Built-in Mic for Crystal Clear Call, 32H Playtime, Comfortable Fit, Fast Charging, Waterproof Earphones for Sports, Black

Wireless Earbuds, Sports Bluetooth Headphones, 80Hrs Playtime Ear Buds with LED Power Display, Noise Canceling Headset, IPX7 Waterproof Earphones for Workout/Running Z(Black)

Monster N-Lite 217 Wireless Earbuds, Immersive Stereo Sound, Bluetooth 6.0 in-Ear Headphones, Built-in Smart Noise Cancelling Mic for Clear Calls, Comfortable Fit, 32H Playtime, IPX6 Waterproof, Black

Brita Stainless Steel Premium Filtering Water Bottle, BPA-Free, Reusable, Insulated, Replaces 300 Plastic Water Bottles, Filter Lasts 2 Months or 40 Gallons, Includes 1 Filter, Carbon - 20 oz.

Simple Modern Filtered Water Bottle | Insulated Stainless-Steel Carbon Filter Travel Water Bottles | Reusable for Clean Drinking Water On The Go | 24oz, Sea Glass Sage

FITVII Health & Fitness Tracker (Answer/Make Calls), Smart Watch with 24/7 Heart Rate and Blood Pressure, Sleep Tracking Monitor, 120+ Sport Mode Activity Tracker

AYATAHA AYATAHA Smart Watch for Kids, Smartwatch Fitness Tracker for Boys Girls, Children's Activity Watch 37 Sports Modes SMS Notification, HD Full Touchscreen IP67 Waterproof, Blue

Iaret Iaret Smart Watch for Women, 1.83" HD Fitness Tracker with 4 Bands, Answer/Make Calls, Heart Rate/Sleep/SpO2/Step Tracking, 100+ Sport Modes, Android/iPhone Compatible Gift (Rose Gold)

Smart Watch for Men Women 1.8" Fitness Tracker, Bluetooth Call, DIY Dial, Heart Rate Sleep Blood Oxygen Monitor, 100+ Sports Modes, IP68 Waterproof Smartwatch for Android iPhone, Alexa Built-in

Hand Warmers 2 Pack, 14000mAh Rechargeable Hand Warmers, Electric Hand Warmer Reusable, Portable Power Bank USB Hand Warmers 4 Levels 8 Heating, Gifts for Raynauds Ski Golf Camping

Hand Warmers Rechargeable, 10000mAh Electric Heated Gloves Power Bank Portable Graphene Handwarmers Pouch with 3 Levels & Double-Sided Heating for Hunting Camping Golf Xmas Gifts for Women Men Kids

2Pack Rechargeable Hand Warmer, 8000mAh Electric Hand Warmer Power Bank, Portable USB-C Hand Warmer for Pocket, Reusable Hand Warmer Up to 8 hrs Each, Warm Gift for Men Women, for Hunting, Camping

GTOCE Portable Charger,40000mAh Power Bank with 22.5W Fast Charging LED Digital Display Battery Pack with 6 Outputs 2 Inputs, Type C Powerbank Portable Charger for iPhone 16 pro Samsung AirPods,Black

Monster Sleep Ear200, Wireless in-Ear Headphones, Bluetooth 6.0 Sleep Headphones, with ANC Active Noise Cancellation Designed for Side Sleepers, 30 Hours of bass Stereo Sound.

Monster Sleep Ear100 Ear Buds, Sleep Earbuds with Stereo Sound, Design for Side Sleeper, 32H Playtime, Bluetooth 6.0, ENC Noise Cancelling, IPX6 Waterproof Mini Headphones, White

Monster Sleep Ear100 Ear Buds, Sleep Earbuds with Stereo Sound, Design for Side Sleeper, 32H Playtime, Bluetooth 6.0, ENC Noise Cancelling, IPX6 Waterproof Mini Headphones, Black

Monster Sleep Ear100 Ear Buds, Sleep Earbuds with Stereo Sound, Design for Side Sleeper, 32H Playtime, Bluetooth 6.0, ENC Noise Cancelling, IPX6 Waterproof Mini Headphones, Black

Hydroponics Growing System Indoor Garden - Herb Garden with Grow Light, 15 Pods Stainless Steel Indoor Garden Kit, Auto Timer, Gardening Gift for All Ages

Umbra Triflora Hanging Planter for Window, Indoor Herb Garden, Set of 5, White/Black

Large Hydroponics Growing System 14 Pods, Indoor Herb Garden with LED Grow Light, 5L Water Tank, Hydroponic Grow Kit with 3 Auto-Timers, Rotatable Light Panel and Child Lock for Home School Gardening

Hanging Planter Hanging Plant Holder, 6 Inch 4 Indoor Plant Pots, Wall/Window Plant Hanger Indoor Herb Garden

slopehill Multi Hair Stylers & Hair Straightener - 2 in 1 Wet to Dry Air Straightener and Hair Dryer Combo with High Speed Air + Rapid Heat-Up + Customizable Temperature(Pink)

Hi.FANCY Portable Laptop Stand with Dual Cooling Fans for 14-17inch Laptops, Grey, 23.5 x 25.9 x 0.95cm

Laptop Stand for Desk, Adjustable Laptop Riser ABS+Silicone Foldable Portable Laptop Holder, Ventilated Cooling Notebook Stand for 10-15.6” Laptops,Tablet-Black

JETech 5 in 1 Case for Samsung Galaxy S25 Ultra 5G with 2-Pack Each Tempered Glass Screen Protector and Camera Lens Protector, Non-Yellowing Shockproof Bumper Phone Cover (Clear)

TAURI for iPhone 17 Pro Max Case 6.9" with 1-Pack Screen Protector, Camera Lens Full Protection, Military-Grade Protection, Shockproof Transparent Back Bumper Phone Cover - Clear Global Recycled Standard

TAURI for iPhone 17 Pro Case 6.3" with 1-Pack Screen Protector, Camera Lens Full Protection, Military-Grade Protection, Shockproof Transparent Back Bumper Phone Cover - Clear Global Recycled Standard

JOINPAYA 1Set Rechargeable Hand Warmer Hand Heater for Winter Heating Levels Compact

Shakven Rechargeable Hand Warmer | Cute Comfortable Portable Hand Warmers,Ergonomic Adjustable Energy-Efficient Small Heater for Travel, Outdoor, Winter

OCOOPA IP45 Waterproof Hand Warmer Rechargeable, Up to 15hrs Heat,10000mAh Durable Quick Charge Electric Hand Heater, PD Compatible, 3 Levels for Outdoors, Heavy Duty, H01-PD PRO













