Tag Archives: Programming

Serial Port Communication in C#

50e1ce8bce395fb62b000000

Maurizio tipped us with his latest article on how to use Serial Port in C#. The article does cover the basic code needed to achieve serial communication.

The serial port of the PC is a very important resource both in industrial environment and in home-made electronics, due to the wide popularity of the UART interface which is to be found on many microcontrollers or on many test and design instrumentation (programmable power supplies, multi-meters, oscilloscopes etc).

Serial Port Communication in C# – [Link]

Arduino 101 Fundamentals

FAQLWPGIK2V19Y4.MEDIUM

eliesalame @ instructables.com has written an introduction course to programming Arduino. It is focused on those who just starting now in the Arduino world.

It is meant to be a beginners guide that includes detailed explanation about the basic statements and functions. Most of the sketches I use are taken from the Arduino IDE for their simplicity. I wrote this guide when I first started working with Arduino as a way to help me code easier.

Arduino 101 Fundamentals – [Link]

Visuino – visual programming environment for Arduino

screenshot-01

Visuino is the latest software developed by Mitov Software which allows you to program your Arduino boards using a graphical interface. So far only the official boards are supported but more will come. Using Visuino you can easily create complex programs using drag and drop interface without the need to become expert in programming. Check it out on the link below.

Visuino – visual programming environment for Arduino – [Link]

Processing for Raspberry Pi

processing-screen-shot-500x344

Matt Richardson announced that Processing programming language is now supported by Rasbberry Pi. He writes:

I’m a long-time fan of Processing, a free open source programming language and development environment focused on teaching coding in the context of visual arts. It’s why I’m so excited that the latest version, Processing 3.0.1, now officially supports Raspberry Pi. Just as Sonic Pi lets you make your first sound in just one line of code, Processing lets you draw on screen with just one line of code. It’s that easy to get started. But don’t let that fool you, it’s a very powerful and flexible language and development environment.

Processing for Raspberry Pi – [Link]

The Art of Representing Floating-Point Numbers as Integers

fixedpointformat

Mário Ribeiro writes:

Have you been using float or double variables to perform mathematical operations on embedded systems without a Floating-Point Unit (FPU)? You are doing it wrong! That’s incredibly inefficient.

An FPU is an hardware block specially designed to carry on arithmetic operations on floating point numbers. Even though the C/C++ code may work without an FPU, it’s always much faster to use hardware designed for a specific purpose, like this one, instead of relying on a software implementation, something that the compiler will do for you, knowing the hardware restrictions you have but not in an efficient manner. Essentially, it will generate a lot of assembly code, greatly increasing the size of your program and the amount of time required to complete the operation. Thus, if you don’t have an FPU available and you still want to perform those arithmetic operations efficiently you’ll have to convert those numbers to fixed-point representation. Integers! But how? By scaling them. Let’s see how that scaling value may be determined.

The Art of Representing Floating-Point Numbers as Integers – [Link]

FlashProg – USB serial flash memory programmer

flashprog-prototype-small1-600x398

Dilshan Jayakody published a new project, the FlashProg – a USB serial flash memory programmer:

FlashProg is USB base flash memory programmer to work with 3.3V serial flash memory devices. This programmer is specifically design to read, program and configure 25x series, serial flash memory devices which are commonly used to store BIOS in PC mainboards.
Originally we design this project to read and program BIOS of Foxconn G31MXP mainboard. Our version of G31MXP contains Macronix MX25L8005 8M-Bit serial flash memory and we use this programmer to load some of our custom BIOS to this serial memory.

FlashProg – USB serial flash memory programmer – [Link]

Introducing Node-RED

Screen-Shot-2015-02-06-at-3.48.04-PM

Node-RED is a visual programming interface for the Internet of things. It doesn’t require coding experience, making it easy to connect your physical things to the cloud.

Node-RED is based on Node.js. The Node-RED application runs as a web server, and you customize and manipulate functional “flows” from any computer’s browser, local or remote. The server application can run on an inexpensive device like the Raspberry Pi.

Take Your Beans to the Cloud! LightBlue Bean Supports Node-RED, Brings Easy Creation of Internet-Connected DIY Projects Without Coding Experience

  • Provides Simple, Visually-Driven Project Development for Students, Hobbyists, Creatives, Prototypers
  • Interact with Low Cost Beans via Internet for Home Automation/Monitoring, Robotics, Class Projects, Art Installations, Point of Purchase Displays, More
  • Build Internet-Triggered Devices that Tweet, Post to Facebook

Introducing Node-RED – [Link]

Embrio: A visual programming environment for Arduino

embrio-screenshot-1-600x278Embrio

Embrio, create Arduino programs without writing code:

Easy To Use -Make programs by adding and connecting nodes. No coding necessary!

Real Time Connection -Work with a live connection to your Arduino, see how your program works as you build it!

Powerful -While easy to use, Embrio is a powerful development tool that you won’t outgrow as your skills develop.

Embrio: A visual programming environment for Arduino – [Link]

Windows Bean Loader Enables Wireless Arduino Programming from Surface Pro Tablets

win_bean_loader_1

SAN FRANCISCO and MINNEAPOLIS, January 26, 2015 — Punch Through Design, a hardware and software development firm that brings Bluetooth Low Energy hacking to the masses, has released the Windows Bean Loader, the first-ever wireless Arduino programming app for Windows users. Using the loader app, Windows-based developers and hobbyists can easily upload code to their LightBlue Bean and experience the power of Bluetooth Low Energy, without cables or a physical connection to the LightBlue Bean.

“The LightBlue Bean represents a new method of wirelessly interacting with prototypes and projects; says Colin Karpfinger, founder and CEO, Punch Through Design. Previously, only Mac OS X and iOS users could program their Beans, and now we are extending that functionality to Windows users.

The full-featured app, available from the Windows Store, fills a void for Windows-based developers and DIYers looking to create smartphone-controlled devices.

Windows Bean Loader Enables Wireless Arduino Programming from Surface Pro Tablets – [Link]

Flash several hundred of ATMegas using a CNC

IMG_2801

by pleasantsoftware.com:

For a project of mine, I need to flash several hundred of ATMegas.

I use a special programming connector, which sits on the SMD chip and connects directly to the ISP and power pins on the chip.

My first attempt to ease the flashing process was to mount the programming connector to a lever with some additional weight on it. That way, once the connector was in place, I didn’t need to hold down the connector manually during the flashing process.

The PCBs come in panels of 40 (10 x 4 PCBs per panel) with milled slots in between each PCB. So to make the positioning of the PCBs under the connector a little easier (and more repeatable), I put two metal pins (with the same diameter as the milled slots) on the base of the lever.

Flash several hundred of ATMegas using a CNC – [Link]