Friday, April 28, 2017

SeeedStudio's 4A Motor Shield

I recently have been playing a little bit with an Arduino UNO I have at home. I gotta admit that, even though I'm utterly bad at electronics, this microcontroller makes it really easy for people like to build simple prototypes.

One of my pet projects is building a robot car, yes I'm that original 😉. For this, I bought a motor shield[1] from SeeedStudio which makes the Pulse-Width Modulation, PWM, very simple: You connect three cables to the oulets in the shield, program your Arduino sketch (no more than 5 lines) and use the SeeedStudio's library[2] and you will get your motor working. Just that easy!

However, I faced one problem that I was able to manage. In the library, the specified pins are

  • Motor A: 8, 11, 9. Pin 9 is used as PWM.
  • Motor B: 12, 13, 10. Pin 10 is used as PWM.
But for this shield in particular, the pins are different. Based on the schematics[3], I noticed the correct order:
  • Motor A: 5, 6, 9. Pin 9 is used as PWM.
  • Motor B: 7, 8, 10. Pin 10 is used as PWM.
I decided to fork the library in GitHub and make my own modifications to make them available to anyone who's having the same problem as me.


If you have a different board, make sure you are using the correct pins and also make sure that the PWM pin number you're specifying in your Arduino sketch is in fact an enabled PWM pin. They differ from board to board. For instance, in the Edison the default PWM pins are 3, 5, 6 and 9 and if you need pins 10 or 11 you'll need to adjust your PWM swizzlers[4].

Are you as interested as me on these pet projects? Share yours and lets exchange ideas.

Happy reading!

References

[1] https://www.seeedstudio.com/4A-Motor-Shield-p-1954.html
[2] https://github.com/Seeed-Studio/SeeedMotorShieldV2
[3] http://wiki.seeedstudio.com/images/9/93/4A_MOTOR_Shield_v1.0.pdf
[4] http://www.instructables.com/id/PWMSwizzling-an-Edison-Arduino-Breakout-to-work-wi/

Thursday, April 27, 2017

Batch approaches and Java EE development on Cloud

I've written a blog post about how can you pursue different approaches to run batch executions using Mule. This is a proof of concept to demonstrate how a well-thought design is in many cases better than using the out-of-the-box features a platform provides.

Bring your thoughts with you and comment it. I'd like to start a conversation about this.

Find it in my company's blog: http://blog.ioconnectservices.com/2017/04/mule-batch-approaches-benchmark.html

On another idea, SDJournal magazine re-published an old article about Java EE development on the cloud using IBM PureApplication System (PureApp) and IBM Rational Application Developer (RAD). I have to point out that this is rather old but the principles still apply, even though RAD no longer supports PureApp since version 9.1, I think, but it provides a set of Eclipse plugins that can be installed on top of RAD the will allow to deploy and start Java applications on it (even though not in the same UI fashion it does allow using Eclipse-like procedures).

Have a glance here: https://sdjournal.org/developing-java-ee-applications-cloud/

Happy reading!

Thursday, April 20, 2017

Starting over my own blog

Over the past few years I've used different blog platforms just for the convenience that the companies I worked for already had them up and running. Of course this is a bad practice I've been doing and this is my plan to do things right: Starting my own blog.

First of all, I want to recapitulate my previous content here, so if you're interested in my past work this is the right starting point.

First, I started using IBM developerWorks when I was an IBM employee. I mainly blogged about IBM Rational Application Developer and technologies such as Node.js, Apache Cordova, Swift, API economy and many other things
https://www.ibm.com/developerworks/community/blogs/victorsh?lang=en

After IBM I decided to do something a little different. I switched to a company named Tacit Knowledge[1], a company focused on building e-commerce solutions. There I posted about IoT
https://blog.tacitlabs.io/controlling-devices-over-the-internet-of-things-part-1-1d5d6ec38f84

My stay there was really short so I decided to post my two-part blog elsewhere, this time in a forum more adequate for the IoT topic, so I chose Instructables
http://www.instructables.com/id/Controlling-Devices-Over-the-Internet-of-Things-Pa
http://www.instructables.com/id/Controlling-Devices-Over-the-Internet-of-Things-Pa-1

Anyway, like I said before, something that I've been doing wrong but want to correct now. I hope you enjoy reading this and also that you find the things I post useful. Do not hesitate to ask, I love having constructive conversations as I like to learn from other point of views.

To you, my dear reader, thank you for taking time to read me.

[1] http://www.tacitknowledge.com/

Enterprise Integration with AWS

Today I published a blog post at IO Connect Services blog where I describe my experience building a solution to achieve enterprise integrat...