Search This Blog

Wednesday, September 27, 2017

Hybrid Beowulf Computer cluster !

A Beowulf cluster consists normally of identical computers joined into a LAN using a network switch. My improvised cluster includes a Lenovo S10 notebook running Archlinux, a Raspberry Pi and an Orange Pi and they are linked using an old D-Link router i had laying around.
At a later point i removed the Orange Pi from the cluster to use in another project. So it can work with 2 computers/NODES.


To build such a cluster at least two computers/Raspberry's/etc with some Linux distribution installed are needed.The computers should be networked with IPs assigned (preferably static IPs). We call each computer a NODE and we create identical usernames (ex: bigboss) on all nodes with sudo access.

For a complete tutorial on building a cluster supercomputer CLICK HERE . The instructions are for building a Raspberry Pi cluster but they can be modified to build a hybrid cluster like the one i did.


Running a C program (example) that calculates PI on 2 nodes.

Sunday, September 10, 2017

حتى الفوضى يمكن التنبؤ بها

لدينا الآن معادلة لتفسير الفوضى الكمومية
حتى الفوضى يمكن التنبؤ بها

ديفيد نيلد 9 سبتمبر 2017
 ترجمة: Shadi Soundation

بعد أن تمكن الفيزيائيون من تكوين فهم حول نظرية الفوضى في العالم المجهري، لا تزال الفوضى في العالم الكمومي وفي كثير من النواحي، أكثر إرباكاً من نظيرتها في العالم المجهري.
هذا هو السبب وراء الضجة التي أحدثتها هذه المعادلة التي يمكن أن تتنبأ بسلوك الفوضى الكمومية.

هذه المعادلة تفسر بشكل فعال أنماط الفوضى الكمومية على المستوى الذري، ويمكن أن تسهم في فهمنا لكل شيء من جراحة الدماغ إلى نظرية الأوتار.
حتى الباحثين الذين جاءوا بهذه المعادلة فوجئوا بأنهم يستطيعون التنبؤ بسلوك الفوضى الكمومية بدقة.
يقول أحد الباحثين، فلاديمير أوسيبوف، من جامعة لوند في السويد:
 "نعم، لدينا الآن معادلة دقيقة".
"شخصيا، أنا مندهش فعلا أنه كان ممكنا!“.

لتطوير المعادلة، قام الباحثون بتحليل الخصائص الإحصائية لمستويات الطاقة المختلفة في حالة الفوضى الكمومية. ماذا يعني ذالك؟
للفهم علينا أن نأخذ خطوة إلى الوراء وأن نفكر في نظرية الفوضى العادية، والتي ربما يكمن أفضل مثال عليها في تأثير الفراشة - تغييرات صغيرة جدا في مدخلات نظام ما يمكن أن يكون لها تأثير كبير جدا، يؤدي إلى استعصاء التنبؤ بالعالم والطبيعة الناتجة.

الفوضى الكمومية تتبع نفس المبدأ، ولكنها تهدف إلى تفسير الغرابة التي تحدث داخل الذرة، حيث تتصرف البروتونات والنيوترونات مثل الموجات بدلا من الجسيمات.

وعلى نطاق أوسع يمكن أن ينطبق هذا أيضا على سلوك الموجات، مثل الحركات الغير منتظمة لكل من الإلكترونات والنوى، وكذلك أشياء مثل الموجات الصوتية في غرفة مفروشة، أو أشعة الضوء في الأجهزة البصرية. لذلك يضيف هذا التفسير مستوى آخر من التعقيد لنظرية الفوضى العادية.

يقول أوسيبوف: "في الأنظمة الكمومية الفوضوية، تعترض مستويات الطاقة بعضها البعض، وتؤثر على بعضها البعض حتى لو كانت متباعدة.

وقد حاول الباحثون منذ فترة طويلة التنبؤ بسلوك الفوضى الكمومية، رغم صعوبة الأمر، حيث أن أنظمة الفوضى حساسة جدا للأرقام الأولية المدخلة في العمليات الحسابية. حتى أن أجهزة الكمبيوتر تجد صعوبة في إيجاد أنماط موثوقة.
ومن أجل التوصل إلى قاعدة علمية موحدة يمكنها التنبؤ بالسلوك على المستوى الذري اعتمد الباحثون على حقيقة أن الذرات وعند اثارتها تصدر عنها مستويات طاقة يمكن قياسها.

يقولون إن المعادلة الجديدة - التي فيها من التعقيد ما يجعلنا نتجنب الخوض في الكثير من التفاصيل، ولكن يمكنك أن تقرأها بالكامل في Physical Review Letters - تقدم وسيلة شاملة وخالية من الأنماط للتنبؤ بسلوك النظام الفوضوي على المستوى الكمومي.

في هذه اللحظة يظل هذا العمل نظريا بحتا، ولكن المعادلة سيكون لها تطبيقات عملية. ويمكن تطبيقها لقياس وفهم حالات الفوضى المختلفة، كما هو الحال في الأسواق المالية، والدماغ البشري، وحتى على مفاهيم نظرية الأوتار.

"إن الذرة في ذاتها ليست فوضوية، ولكن إذا وضعتها في مجال ما، على سبيل المثال حقل مغناطيسي أو مجال كهربائي، فإن الحركة الكلاسيكية تصبح فوضى"، دانيال كليبنر من معهد ماساتشوستس للتكنولوجيا، الذي لم يشارك في البحث الجديد، صرح بهذا في العام 2014.

"السؤال : ما هو السلوك الكمومي لهذا النظام؟ إنه سؤال استفزازي".
الآن لدينا أخيرا معادلة لمساعدتنا في الإجابة على هذا السؤال.

تم نشر البحث في Physical Review Letters

Tuesday, August 15, 2017

Why on foot?


"ليش (ماشي) ع رجليك؟" اسم شارع صغير في مدينة بيرن مأخوذ عن اسم عمل فني لباول كلي (Paul Klee, 1879-1940)

Tuesday, May 16, 2017

Software PWM for the PIC16F84A (gitHub)

Finally got the time to re test the code and publish it to gitHub. Here is a simple implementation of PWM in software using C for PIC MCUs. The files make up MPLAB X project. Check out a previous post with another software implementation of UART functionality. Code here!



Thursday, April 27, 2017

Blynk WEMOS remote messaging & wake up call!

Interaction Design: storyboard -> digital prototype using Marvel

”I prefer drawing to talking. Drawing is faster and leaves less room
for lies.” – Le Corbusier

"Paper prototyping is a great way starting design work, but it's the 
wrong tool for testing. " – Jake Knapp of Google Ventures 

Marvel is ideal for creating fast, click-through prototypes for web and mobile apps. Prototypes can be easily shared through multiple channels, and teams can access and share projects with some of the upgraded plans.

Digital prototype Assignment: Prototyping Interaction by iversity.org

Saturday, April 8, 2017

Raspberry Pi Web server & static IP trick!


To set a Raspberry Pi web server we need to install the popular web server (Apache).
Apache can serve HTML pages over HTTP but needs additional modules to handle dynamic pages using PHP.


To install Apache on the Pi run the following command in the command line:

sudo apt-get install apache2 apache2-doc apache2-utils
For the additional modules run:
sudo apt-get install libapache2-mod-php5 php-pear php5-xcache
For mysql server /PHP support:
sudo apt-get install php5-mysql mysql-server mysql-client
To test the web server enter http://127.0.0.1 in web browser

To give our Pi a static IP address we need to modify /etc/network/interfaces
sudo nano /etc/network/interfaces
and add the static IP information as follows:

iface eth0 inet static
address 192.168.0.x
netmask 255.255.255.0
gateway 192.168.0.1

Now we need to force the dhcpcd daemon to get the IP address we just specified, for that we need to modify/etc/dhcpcd.conf by running the command: 
sudo nano /etc/dhcpcd.conf 

at end of file add the following 
#Static IP address 
interface eth0 
static ip_address = 192.168.0.x 
static routers = 192.168.0.1 
static domain_name_server = 192.168.0.1

Saturday, April 1, 2017

Product Design: The Delft Design Approach!

























here is my graphical thinking ... i hope it makes the idea more accessible !!

" ..7 modules  .. will take you through the Delft Design Approach. You will have the opportunity to learn about doing user research, defining a design challenge, idea generation, concept development and testing... 
 interesting course at courses.edx.org/

Friday, March 17, 2017

Low on tech. high on sound! Hard Drive speakers!



 Hard drive speaker connected to a bluetooth amplifier playing a synth sound from iPad.

Thursday, March 2, 2017

ESP8266, Youtube API and Subscriber count.


For this project you need an ESP8266 module with latest AT firmware CLICK HERE
Programming the ESP8266 will be done in the Arduino IDE so go ahead and set up your arduino to communicate with ESP8266 CLICK HERE 
We need the Youtube API arduino library DOWNLOAD FROM HERE
Download the JSON library for Arduino (From the Arduino IDE)
Get your Channel ID 
On your Channel, navigate to Settings -->  Advanced -->  Account Information 
THE API Key.
Go to google developers console  and create a new project ---  CLICK HERE



Go to the credentials section and create a new API key



Now in the Arduino IDE navigate to the Youtube API library and open the example 
ChannelStatistics and add your API and channel ID


In the API manager you can view statistics from your projects and  also can check if it all works as expected!




Friday, January 13, 2017

OCD Performance art/Theater, DMX and effects Project Documentation.

It was a great pleasure to be part of a performance/Theater project that took place in Bern last December.  More: derbund.ch/kultur/theater/

The Egyptian/Swiss performance director Omar Ghayatt (Studio Moroni) approached me with an interesting task; to build a machine that interacts with the solo performer to control light and sound.
I hope that the following sequence of photos, descriptions and video can give a glimpse of the project.


The machine/Generator consists of a pulley system ( 2 pulleys, 30cm & 14cm in diameter) made out of wood.

A single optical encoder to register number of rotations in a forward direction and then send it to the microcontroller.
Nails have been positioned on the inner circumference of the smaller pulley. These nails cross the optical encoder to trigger an interrupt.






A DMX Controller built around Arduino Nano and SN75176 differential bus transceiver .


A program embedded on the microcontroller translates the signal from the optical encoder to DMX and also to a tuned PWM signal to control the Audio cassette player .






The effect of this translation is a fine tuned dimming of the light spot and an audio effect similar to tape recorders slowly running out juce.


Monday, January 2, 2017

Hypocrisy!

Turkey is not France ..
and coffee is not wine ..
Let's sing Hypocrisy
before we dine
The verse is yours!
the bridge is mine!