ZeroMQ Pre-FOSDEM Hackaton (Thu 2 + Fri 3 Feb 2017)
When?
Thu 2 and Fri 3 February 2016, from 9am to late in the night :-)
Where?
Hackerspace Brussels (HSBXL)
Rue de manchester 21 / Manchesterstraat 21
1080 Molenbeek
Brussels
Belgium
Web: http://www.hsbxl.be
GSM: +32 484 566109 (zoobab)
Drinks and food
HSBXL has a decent bar (beers, tea, soft drinks, etc…).
For the food, bring your own, and we will order suchis, pizzas, etc… when needed.
Agenda
- libzmq on ESP8266
- malamute on openwrt and memory limitations tests
- p2p openssh replacement
- rsyslog zeromq improvements
- zproto client/server native python support
- port glar150 to the raspberry pi | let in blink :) https://github.com/CodeJockey/glar150
- add zmq encryption support to zyre (and other projects?) to enable encryption and/or auth, so the PoCs like cluster-ssh via zmq can proceed to practical management of healthily paranoid systems
- zproject installation/snippet model
- docker logs via malamute
- craft an example project for zeromq repo that allows a newcomer to easily clone one repo, build the Z-ecosystem (pulled via submodules) and an example well-commented project - this helps both validate new platforms and get started with / wrap the head around the different bits and terms like libzmq, czmq, malamute, zyre, agents, protocols, gsl, zproject etc. The git+Make part is easy (port the ready solution from another project), but a coherent example project is the hard part :)
- your topic here
Attendees
Please do add your name to ensure a seat:
- NAME surname (github user optionally)
- HENRION Benjamin (zoobab)
- SAPPER Kevin (sappo)
- LUCA Boccassi (bluca)
- KNOX Brian (taotetek)
- LOONSTRA Arnaud (sphaero)
- HERTER Hugo
- Michal Vyskocil (vyskocilm)
- Evgeny Klimov (jimklimov)
- Barbora Stepankova (bstepankova)
- Karol Hrdina (karolhrdina)
- HOOVER Tom
Costs
There are some costs for the heating system (we might need to rent one), so participants will be invited to make a small donation to cover those.
ESP8266
First, you have to install and build the esp-open-sdk:
$ git clone —recursive https://github.com/pfalcon/esp-open-sdk.git
Then:
$ cd esp-open-sdk
$ make
And go for a coffee, it takes around 30 mins.
Then try to build:
$ git clone https://github.com/jeelabs/esp-link
You need to have 2 directories:
$ ls -1
esp-link/
esp-open-sdk/
You might need to adapt the Makefile of esp-link to point to the sdk directory, or run:
$ SDK_BASE=`pwd`/../esp-open-sdk/sdk/ make
And reflash with:
$ SDK_BASE=`pwd`/../esp-open-sdk/sdk/ make flash
Conclusion
ESP-8266 is running FreeRTOS, which is posix incompatible operating system. Most notably syscalls
close, send, recv are missing and FreeRTOS applications does need to use callbacks.
Example from mqtt: how recv does work on FreeRTOS
/**
* @brief Client received callback function.
* @param arg: contain the ip link information
* @param pdata: received data
* @param len: the length of received data
* @retval None
*/
static void ICACHE_FLASH_ATTR
mqtt_tcpclient_recv(void* arg, char* pdata, unsigned short len);
BTW: just found out there's a group developing posix-layer for FreeRTOS
https://interactive.freertos.org/hc/en-us/community/posts/210029046-POSIX-Wrapper-for-FreeRTOS
Contiki-zmtp
ContikiOS is different system for small embeded boards, however does not and will not support ESP-8266
https://github.com/contiki-os/contiki/issues/1248
The programming model for contiki-os is incompatible with FreeRTOS, thus this port can't be used on ESP-8266@FreeRTOS
MQTT
MQTT[1] (MQ Telemetry Transport) is an ISO standard (ISO/IEC PRF 20922)[2] publish-subscribe-based "lightweight" messaging protocol for use on top of the TCP/IP protocol.
Usefull links:
* https://mosquitto.org/download/
* http://test.mosquitto.org/
First task
1. Download and build mosquitto (mkdir build; cd build; cmake ../; ./src/mosquitto)
2. Connect some clients using pure MQTT
3. Design first PoC of MQQT->Malamute thinkg
4. see https://github.com/ZMQers/zmosq
See also
There is gonna be some "Pieter Hintjens in Memoriam" speeches during FOSDEM:
- SAT @ 10:30AM Internet of Things Opening: https://fosdem.org/2017/schedule/event/iot_opening/
- SAT @ 06:00PM Pieter Hintjens in Memoriam: https://fosdem.org/2017/schedule/event/pieter_hintjens/
Number 21, big grey door (it's open), walk into the parking lot and in the opposite corner climb up 4 steps of stairs and you will see a big blue door, a cargo elevator. It's floor 4.