Pablo Rodríguez Rey

personal webpage

Welcome

Welcome to my personal webpage!

Here I'm leaving for memories some of my projects I've did, among some other things related to my interests, such as programming or electronics.

I hope you find the website interesting.

Best regards!


Projects

I'm always busy doing some new things. I like to search, innovate and start new projects.

Here you can see some of my more active projects now.

This section is under development, I hope I'll complete it with more projects soon.


ïnav

ïnav it's an own development application serie for CarPC distributed with the open source GPL license.

A CarPC (or carputer) it's an integrated vehicle computer, and this applications allows the integration of diverse media: music, video, phone, GPS navigator, web browser, etc. in a single application.

I have done mainly 3 versions. There was more, but those were so particular for their purpose they were not published.

Now I'm developing a new version, so the previous versions are frozen for now.




DisplayNC

Recently I had a motorcycle Honda NC700X, but lamentably oil temperature information does not be displayed in the screen, even though it has a sensor attached to the engine.

Decided then building a small auxiliar display to show this information and I took the opportunity to include additional information: external temperature and battery voltimeter.

This project is built with Arduino, I mainly tried two displays, one Nokia 3330 and one OLED 1.3", but I finally considered to use a transflective LCD graphical display, the DOGM 132x32 dots, visible at direct sunlight and tolerant to the temperature changes. The engine temperature sensor workings was obtained reverse engineering it, measuring with voltimeter and obtaining the temperature-voltage relation function of the sensor. The container box was designed with OpenSCAD and printed with the 3D printer Prusa i3 of my friend n0p.




CarPC

One of my funnier projects has been the Carputer, an embedded computer in my previous car.

The system is based in these components:

  • MicroITX Atom 330 2GB RAM HD 320GB
  • Touchscreen Lilliput 8" 4:3 889GL
  • Amplifier Vieta 4x45W RMS
  • Mute interface, relay system
  • Software: ïnav

By now, I'm thinking about preparing one for my new car, a 2011 Honda Accord, whenever time can allow it.



ADisplay

Honda Accord 2011 Display Improvement. It allows replace the original LCD with a 1280x800 IPS display governed with a Raspberry Pi 2 model B and a custom interface with an ATmega328.

In addition to the aesthetic improvements, additional data is displayed, it provides a General purpose HDMI input, and one input of analog video for cameras.

For this purpose, it was needed to:

  • Decode SPI protocol from HVAC.
  • Decode UART protocol from audio radio.
  • Implement software adisplay based on JSDL.



Programming

I love programming. I do every hour, in any place, at any time.

From eleven years I started to the world of computing, I have longed to learn to programming, perhaps motivated by a TV ad about fascicles of programming by IBM.

Over the years learned a lot of programming languages, in some of them I'd specialized for their versatility: C/C++, Java, x86/MIPS/ARM Assembler, Basic, HTML, JavaScript, PHP, CSS, C#, OpenGL, Scripting, Delphi, ActionScript, ...


C/C++

There are general-purpose languages created by antonomasia by the great scientist Dennis Ritchie and the Danish Bjarne Stroustrup respectively, allow to do almost every task of computing in a efficient way.

They are medium-high level programming languages, so it's compilations it's close to machine language, especially first one, giving them high speed and optimization, and making them candidates of big scope projects.

The main operative systems were programmed largely in these programming languages (Linux, MACOS, Windows, ...).

Although they are some of my favourite programming languages, their difficulty working with memory and their dependency at machine-level are some of their cons for using them daily. Anyway, nowadays they continue to occupying part of my work, I have a lot of applications I develop that need high performance and low resources consumption, e.g. smserver, ïnav5, ...

I worked also with: STL, SDL, OpenGL, V8 engine Threads, QT, ...



ASM

Assembly learning let me develop graphical interfaces for my old computer (Amstrad PC1512 8086 8MHz), and a graphical library to develop programs easily, thanks to the optimized routines in x86 assembler.

Some of the applications I've done with or ussing assembler:

  • AGENDA: Personal agenda
  • DOSX+: Graphical interface 640x200 2 colors
  • XSYSTEM: Graphical interface 320x200 256 colors
  • MODEL6: Base for my projects under DOS
  • ENCDEC: Fast lame file ciphering
  • ïSPIM: MIPS Compiler/Simulator
  • Miscelanea demos/tests in less than 256 bytes





PHP

This programming language with similar sintax to C allows to achieve record times in any web project of any scale, thanks to it's ease to use and it's huge library.

I worked with it more tan 16 years, now it's a reference language for web development, and it's third in global usage, (source May/2018: redmonk).

As contra, this versatility causes sometimes inexpert programmers make spaghetti code.

I've built dozens of web developments, both personal webs (e.g. this website), and complex professional web applications, some of them can be visited:




Basic

It was my first programming language I've started, and I developed with it until it's limits. Quick Basic and Visual Basic, both for DOS and Windows 16 and 32 bits.

Since then I've developed about a thousand applications, tools and tests in this so versatile programming language.

Nowadays it has fallen into disuse with the arrival of .NET and 64-bit systems, but it stills being a excellent programming language for fast and efficient application development for DOS and Windows, in fact, almost all applications developed in it stills being compatible width latest Windows versions.

Some interesting applications I have developed are:

  • ïnav3: CarPC media integrator application
  • MLPid: Id application for the MurciaLanParty.
  • Visual CyberGest: Cibercafé comprehensive management application
  • Kister Fighter (part 1 & 2): Fighting game presented for the Game contest in PC World magazine
  • ICARUM: Planimetry management application for the University of Murcia







Java

Java is one of the most versatile programming languages that exists now. It's multiplatform, and it has a comprehensive library for support almost every task in everyday development thanks to it's community support.

Some development I had done include the Spider of the Network Management Portal of the University of Murcia, it collects data making concurrent petitions via SNMP to the devices that integrate the UNIMURNET network, and other services for network tools.

Also I had done some sketches for Android: ArduDroid & WPAMagicKey



JavaScript

Nowadays all modern web browsers support JavaScript, an interpreted programming language running on client side and, recently, with proyects like node.js or Apache Cordova it started to extend to the server side.

Given my position as a web developer, I have made many generic JavaScript classes to lower the difficulty of creating sites and web applications, among which highlights those that belongs to the base classes, a set of PHP and JavaScript classes and functions whose purpose follows three points: standarize, simplify and stabilice.

This web page also has an JavaScript code, like image loading on demand, viewer for sections and it provides access to some links.

One of my most interesting projects is JSDL, a lightweight C++11 OpenSource V8 Engine powered JavaScript runner with integrated bindings (SDL 2, SDL Image 2, SDL TTF 2, Serial, File, System).

Electronics

Since childhood I love electronics. I always remember one of my preferred toys brought by the Biblical Magi, the Scatron.

In essence I well know the Atmel ATmega and Microchip PIC Microcontrollers, although I never rule out alternatives depending the project.

Also I worked with the ESP family (ESP32, ESP8266).

Projects

I'd built a lot of electronic circuits, many times were basic, but they perform its function. Some times I'd built:

  • GPDRL - Daytime Running Lights for Fiat Grande Punto, with 16 LEDs CREE Q5 and custom driver
  • GPbox - Relay box, USB mute control, regulated power supply for CarPC
  • Retrofits - Circuits for some headlight modifications on my cars
  • HomeD - Some Domotic Circuits based on ESP8266: Remote parking door opening, light control, LED decoration, solar panels control, ...




Arduino

Arduino is an open hardware platform based on the Atmel AVR microcontrolers series combined with an integrated development enviroment using the programming language Processing/Wiring.

It's practicity and ease to use had made a great community has emerged with Arduino and it have been converted into an excellent learning platform.

Some projects I had built with Arduino:

  • DisplayNC - Additional Display for Honda NC700X
  • xpCan - OBD interface for Honda Accord, close of doors from 30km/h
  • GPDRL - Daylight Running Lights control for Fiat Grande Punto




PIC

PIC family is also ones of the most used by its power and versatility. Specifically the PIC18F* usually are great allies for its power, port number and auxiliary support, like USB or CAN-BUS.

I'd built some projects con PIC:

  • CarPC Interface - Generic interface for Carputer
  • GPupdown - Headlight height adjuster simulator



Raspberry PI

Lately I'm very active with this platform, recently I'd done some optimizations in the boot of Raspbian to speedup boot process and supress needless files and services.

For video player, the bootup and start up lasts barely one second.

I used it in a pair of projects, an autonomous cyclic video player and an additional display.

Also, I had worked with GPIO for domotic interface.


Domotics

To automate some tasks at my home I have implemented a basic home automation system which I have installed several sensors and actuators connected to the home automation network managed with a LAMP and MQTT environment.

Front-end is simple and its custom-made using Home Assistant as a reference, as is one of the most used nowadays.

Some of the ofered functionality is:

  • Remote opening of garage door
  • Remote opening of entry door
  • Energy consumption control
  • Photovoltaic generation control
  • Refueling management for my car
  • View and control remote cameras
  • Alarm with sensor on doors, windows and motion
  • Monitoring of WiFi and BLE devices
  • Temperature and Humidity sensors
  • Weather Vane
  • RGB LED control
  • Light control
  • Fixed and Smart plugs control
  • Seasonal lights (christmas, ...)

Finally I did a very complete system, and as an advantaje is not connected to third parties thanks to device firmware replacement using Tasmota, EspHome and other opensource projects for IoT devices.








About me...

Hello!

I'm Technical Engineer in Computing Systems, currently I'm working at the University of Murcia and also I do some works as freelance in my enterprise inertinc industries, also I'm have a MSc on New Technologies in Computer Science, speciality in Networks and Telematics, but overall I'm an apassionated of computing and electronics. I have a lot of hobbies, but I cannot dedicate all the time I want, bit by bit.

You can download or view my currículum:

Currículum 61KB

You can contact with me here.

The Organic Law of Data Protection protects all the data that may appear both curriculum as the rest of this website, so there is no permissions of any kind to use this information beyond direct contact with the author for jobs, and it's specifically excluded all kind of advertising, uses in courses or inclusion in lists.


Contact

If you want, you can send me a message using this form:

Security image: Refresh
Name:
E-Mail:
Message:

The usage of this form to bulk mailing and/or advertising is explicity disallowed.

404 :-(

The content you are looking for is not found or has been moved!

Click any section of the website, I'm sure you will find what you are looking for.