I have 2 hp servers at home running esxi from an SD card, and it has been working fine for 2 years now.
I also tried proxmox for a few months, but encountered some stability issues and bugs.
Both solutions have pros and cons, but now I clearly prefer esxi.
Datastores and network are easier to manage and it is very easy to passtrought hardware to virtual machine. All the hard disks of my servers are managed by VM (Open Media Vault, Raid 5 software), without any problem.
I also use a Pfsense VM to manage all my networks, with different VLANs. It is very easy to manage VLAN under esxi with vSwitch.
In the next few weeks, I will be switching to OPNsense.
I chose this solution to mutualize the material resources, knowing that this solution can pose problems in certain cases.
Posts made by Ikes 72000
-
RE: Advisory: put IOT devices on a separate LAN/vLAN for better security
-
RE: [Answered] Any recommended load-and-go VM or Docker images for mysensors?
@NeverDie said in Any recommended load-and-go VM or Docker images for mysensors?:
@Puneit-Thukral I seem to have an addon store even though I simply loaded the VM and didn't do a supervised install:
Is what's pictured here the same as what you're referring to?Yes this is the addon store of HA.
-
RE: Best PC platform for running Esxi/Docker at home?
@monte said in Best PC platform for running Esxi/Docker at home?:
+1 for proxmox. Didn't have good experience with esxi. Proxmox is opensource, free and debian-based. Using it on HP microserver gen 8.
As for CPU choice I don't see how there would be any issue with Ryzen. All you need from processor is hardware virtualization, and I think all except the lowest level ones have it nowadays.I have two HP gen8 microserver running Esxi 6.7U3, working fine.
I tried Proxmox earlier, and encountered some issues.
Both HP run old cpu (core i3 and xeon e3-1265) and 7 or 8 VM each (OMV, pfsense, Nodered, Mosquitto, HA, Nextdom, seedbox, other).
Cpu are not used much, less than 25%.
So with recent cpu, you shoudn't have any issues. -
RE: Floor Cooling in my House
Hi,
@Strontvlieg, you can use Node-red for that, it's simple and work fine.
I use both Modbus and Mysensor at home, with Node-red.Modbus Node red
Mysensors Node redWith this solution, it will be easy to do what you need to achieve.
-
RE: 💬 EFEKTA Temp&Hum sensor(ver. nRF52 )+E-Ink display
@berkseo, thanks.
Finally, I found another solution with image2cpp, that allow direct conversion of svg files.So i can convert icons from [link text] (https://iconify.design/icon-sets/mdi/)
And for fonts, i use link text, it works fine with Gxepd2 library.
-
RE: 💬 nRF52832 ESP-LINK Shield for ESP8266 Wemos D1 Mini
@NeverDie, no, log is from arduino ide.
-
RE: 💬 nRF52832 ESP-LINK Shield for ESP8266 Wemos D1 Mini
@NeverDie, yes, but same, nothing in the console.
I will check my wiring.And what the signification of this in log ?
Temporary breakpoint 1 at 0x1370: file G:\Documents\Arduino\libraries\MySensors/hal/architecture/NRF5/MyMainNRF5.cpp, line 23. Starting program: C:\Users\Ikes\AppData\Local\Temp\arduino_build_693731\MyBoardNRF5.ino.elf Note: automatically using hardware breakpoints for read-only addresses. Temporary breakpoint 1, main () at G:\Documents\Arduino\libraries\MySensors/hal/architecture/NRF5/MyMainNRF5.cpp:23 23 {
-
RE: 💬 nRF52832 ESP-LINK Shield for ESP8266 Wemos D1 Mini
@NeverDie , thanks, but unfortunately this doesn't work.
Sketch i upload to nrf:
// Enable serial gateway #define MY_GATEWAY_SERIAL #include <nrf.h> #include <MySensors.h> void setup() { Serial.begin(460800); Serial.println(); Serial.println("Countdown 3..."); Serial.flush(); delay(100); Serial.println("Countdown 2..."); Serial.flush(); delay(100); Serial.println("Countdown 1..."); Serial.flush(); delay(100); Serial.println("Starting..."); Serial.flush(); delay(100); } uint32_t loopCounter=0; void loop() { Serial.println(loopCounter++); Serial.flush(); }
Log:
c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .bss by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .heap by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .stack_dummy by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .bss by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .heap by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .stack_dummy by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .bss by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .heap by 4 bytes c:/users/ikes/appdata/local/arduino15/packages/sandeepmistry/tools/gcc-arm-none-eabi/5_2-2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .stack_dummy by 4 bytes Le croquis utilise 22984 octets (4%) de l'espace de stockage de programmes. Le maximum est de 524288 octets. Target voltage: 3.73V Remote debugging using \\.\COM6 Available Targets: No. Att Driver 1 Nordic nRF52 M3/M4 2 Nordic nRF52 Access Port Attaching to Remote target 0x000009c4 in ?? () Reading symbols from MyBoardNRF5.ino.elf...done. Loading section .text, size 0x59c8 lma 0x0 Loading section .ARM.exidx, size 0x8 lma 0x59c8 Loading section .data, size 0xbc lma 0x59d0 Start address 0x1410, load size 23180 Transfer rate: 39 KB/sec, 891 bytes/write. Temporary breakpoint 1 at 0x1370: file G:\Documents\Arduino\libraries\MySensors/hal/architecture/NRF5/MyMainNRF5.cpp, line 23. Starting program: C:\Users\Ikes\AppData\Local\Temp\arduino_build_693731\MyBoardNRF5.ino.elf Note: automatically using hardware breakpoints for read-only addresses. Temporary breakpoint 1, main () at G:\Documents\Arduino\libraries\MySensors/hal/architecture/NRF5/MyMainNRF5.cpp:23 23 { Program complete!
Don't see anything in esp-link console.
-
RE: 💬 nRF52832 ESP-LINK Shield for ESP8266 Wemos D1 Mini
Hi,
I'm new to mysensors, and for tests purpose, i need this gateway.
Wemos works fine with esp-link.
For nrf52832, i use Plateformio ide, and mysensors serial gateway sketch.// Enable debug prints to serial monitor #define MY_DEBUG // Enable and select radio type attached //#define MY_RADIO_RF24 #define MY_RADIO_NRF5_ESB //#define MY_RADIO_RFM69 //#define MY_RADIO_RFM95 // Set LOW transmit power level as default, if you have an amplified NRF-module and // power your radio separately with a good regulator you can turn up PA level. //#define MY_RF24_PA_LEVEL RF24_PA_LOW // Enable serial gateway #define MY_GATEWAY_SERIAL // Define a lower baud rate for Arduinos running on 8 MHz (Arduino Pro Mini 3.3V & SenseBender) #if F_CPU == 8000000L #define MY_BAUD_RATE 38400 #endif // Enable inclusion mode #define MY_INCLUSION_MODE_FEATURE // Enable Inclusion mode button on gateway //#define MY_INCLUSION_BUTTON_FEATURE // Inverses behavior of inclusion button (if using external pullup) //#define MY_INCLUSION_BUTTON_EXTERNAL_PULLUP // Set inclusion mode duration (in seconds) #define MY_INCLUSION_MODE_DURATION 60 // Digital pin used for inclusion mode button //#define MY_INCLUSION_MODE_BUTTON_PIN 3 // Set blinking period #define MY_DEFAULT_LED_BLINK_PERIOD 300 // Inverses the behavior of leds //#define MY_WITH_LEDS_BLINKING_INVERSE // Flash leds on rx/tx/err // Uncomment to override default HW configurations //#define MY_DEFAULT_ERR_LED_PIN 4 // Error led pin //#define MY_DEFAULT_RX_LED_PIN 6 // Receive led pin //#define MY_DEFAULT_TX_LED_PIN 5 // the PCB, on board LED #include <MySensors.h> void setup() { // Setup locally attached sensors } void presentation() { // Present locally attached sensors } void loop() { // Send locally attached sensor data here }
As this, gateway don't work, esp-link don't receive anything.
I think i need to specify witch pins of NRF are used for rx tx, but how doing that ?Thanks
Ikes
-
RE: Compilation error nrf52_dk plateformio
@BearWithBeard, compilation works fine after remove time lib. Thanks.
Now I can play with mysensors.
-
RE: Compilation error nrf52_dk plateformio
I just tried this code and compilation fail.
#define MY_GATEWAY_SERIAL #include <MySensors.h> void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: }
Log:
Processing nrf52_dk (platform: nordicnrf52; board: nrf52_dk; framework: arduino) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Verbose mode can be enabled via `-v, --verbose` option CONFIGURATION: https://docs.platformio.org/page/boards/nordicnrf52/nrf52_dk.html PLATFORM: Nordic nRF52 4.4.0 > Nordic nRF52-DK HARDWARE: NRF52832 64MHz, 64KB RAM, 512KB Flash DEBUG: Current (jlink) On-board (cmsis-dap, jlink) External (blackmagic, stlink) PACKAGES: - framework-arduinonordicnrf5 1.600.190830 (6.0) - tool-sreccat 1.164.0 (1.64) - toolchain-gccarmnoneeabi 1.70201.0 (7.2.1) LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf LDF Modes: Finder ~ chain, Compatibility ~ soft LibraryManager: Installing id=548 Using cache: C:\Users\Ikes\.platformio\.cache\08\6b3d0755f5ced94725e5025051350d08 MySensors @ 2.3.2 has been successfully installed! Found 37 compatible libraries Scanning dependencies... Dependency Graph |-- <MySensors> 2.3.2 | |-- <Time> 1.6 | |-- <SPI> 1.0 | |-- <Wire> 1.0 Building in release mode Compiling .pio\build\nrf52_dk\src\main.cpp.o Compiling .pio\build\nrf52_dk\lib45d\Time_ID44\DateStrings.cpp.o Compiling .pio\build\nrf52_dk\FrameworkArduino\Stream.cpp.o Compiling .pio\build\nrf52_dk\FrameworkArduino\Uart.cpp.o In file included from C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/Arduino.h:17:0, from C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp:12: C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp: In function 'char* monthStr(uint8_t)': C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:105:49: error: 'const void*' is not a pointer-to-object type #define pgm_read_ptr(addr) (*(const void *)(addr)) ^ C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:63:45: note: in definition of macro 'strcpy_P' #define strcpy_P(dest, src) strcpy((dest), (src)) ^~~ C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp:72:29: note: in expansion of macro 'pgm_read_ptr' strcpy_P(buffer, (PGM_P)pgm_read_ptr(&(monthNames_P[month]))); ^~~~~~~~~~~~ C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp: In function 'char* dayStr(uint8_t)': C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:105:49: error: 'const void*' is not a pointer-to-object type #define pgm_read_ptr(addr) (*(const void *)(addr)) ^ C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:63:45: note: in definition of macro 'strcpy_P' #define strcpy_P(dest, src) strcpy((dest), (src)) ^~~ C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp:86:28: note: in expansion of macro 'pgm_read_ptr' strcpy_P(buffer, (PGM_P)pgm_read_ptr(&(dayNames_P[day]))); ^~~~~~~~~~~~ In file included from .pio\libdeps\nrf52_dk\MySensors/MySensors.h:74:0, from src\main.cpp:7: .pio\libdeps\nrf52_dk\MySensors/hal/architecture/NRF5/MyHwNRF5.cpp: In function 'uint16_t hwCPUVoltage()': .pio\libdeps\nrf52_dk\MySensors/hal/architecture/NRF5/MyHwNRF5.cpp:506:16: warning: 'sample' is used uninitialized in this function [-Wuninitialized] return (sample*3600)/255; ~~~~~~~^~~~~~ *** [.pio\build\nrf52_dk\lib45d\Time_ID44\DateStrings.cpp.o] Error 1 =========================================================================================== [FAILED] Took 5.57 seconds ===========================================================================================
-
Compilation error nrf52_dk plateformio
Hello,
I'm new to mysensors and trying to test some nrf52832 cards.
Currently I am able to communicate and load a basic program into the nrf52 card via a BMP.Basic code:
#include <Arduino.h> void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: }
Log:
Processing nrf52_dk (platform: nordicnrf52; board: nrf52_dk; framework: arduino) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Verbose mode can be enabled via `-v, --verbose` option CONFIGURATION: https://docs.platformio.org/page/boards/nordicnrf52/nrf52_dk.html PLATFORM: Nordic nRF52 4.4.0 > Nordic nRF52-DK HARDWARE: NRF52832 64MHz, 64KB RAM, 512KB Flash DEBUG: Current (jlink) On-board (cmsis-dap, jlink) External (blackmagic, stlink) PACKAGES: - framework-arduinonordicnrf5 1.600.190830 (6.0) - tool-bossac-nordicnrf52 1.10866.191129 (1.8.66) - tool-jlink 1.65200.0 (6.52.0) - tool-openocd 2.1000.190707 (10.0) - tool-sreccat 1.164.0 (1.64) - toolchain-gccarmnoneeabi 1.70201.0 (7.2.1) LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf LDF Modes: Finder ~ chain, Compatibility ~ soft LibraryManager: Installing id=548 Using cache: C:\Users\Ikes\.platformio\.cache\08\6b3d0755f5ced94725e5025051350d08 MySensors @ 2.3.2 has been successfully installed! Found 37 compatible libraries Scanning dependencies... No dependencies Building in release mode Checking size .pio\build\nrf52_dk\firmware.elf Advanced Memory Usage is available via "PlatformIO Home > Project Inspect" RAM: [ ] 0.2% (used 140 bytes from 65536 bytes) Flash: [ ] 0.4% (used 2256 bytes from 524288 bytes) Configuring upload protocol... AVAILABLE: blackmagic, cmsis-dap, jlink, mbed, nrfjprog, stlink CURRENT: upload_protocol = blackmagic Looking for BlackMagic port... Auto-detected: COM6 Uploading .pio\build\nrf52_dk\firmware.hex Target voltage: 3.02V Available Targets: No. Att Driver 1 Nordic nRF52 M3/M4 2 Nordic nRF52 Access Port 0x000006ee in main () Loading section .text, size 0x85c lma 0x0 Loading section .ARM.exidx, size 0x8 lma 0x85c Loading section .data, size 0x6c lma 0x864 Start address 0x4b8, load size 2256 Transfer rate: 31 KB/sec, 451 bytes/write. Section .text, range 0x0 -- 0x85c: matched. Section .ARM.exidx, range 0x85c -- 0x864: matched. Section .data, range 0x864 -- 0x8d0: matched. Kill the program being debugged? (y or n) [answered Y; input not from terminal] ========================================================================================== [SUCCESS] Took 4.02 seconds ==========================================================================================
When I try to download a sample sketch (pulse counter, mysensors library sample), I get compilation errors.
Log:
Compiling .pio\build\nrf52_dk\lib45d\Time_ID44\DateStrings.cpp.o In file included from src\main.cpp:2:0: .pio\libdeps\nrf52_dk\MySensors/MySensors.h:426:2: error: #error No forward link or gateway feature activated. This means nowhere to send messages! Pretty pointless. #error No forward link or gateway feature activated. This means nowhere to send messages! Pretty pointless. ^~~~~ In file included from C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/Arduino.h:17:0, from C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp:12: C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp: In function 'char* monthStr(uint8_t)': C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:105:49: error: 'const void*' is not a pointer-to-object type #define pgm_read_ptr(addr) (*(const void *)(addr)) ^ C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:63:45: note: in definition of macro 'strcpy_P' #define strcpy_P(dest, src) strcpy((dest), (src)) ^~~ C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp:72:29: note: in expansion of macro 'pgm_read_ptr' strcpy_P(buffer, (PGM_P)pgm_read_ptr(&(monthNames_P[month]))); ^~~~~~~~~~~~ C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp: In function 'char* dayStr(uint8_t)': C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:105:49: error: 'const void*' is not a pointer-to-object type #define pgm_read_ptr(addr) (*(const void *)(addr)) ^ C:\users\ikes\.platformio\packages\framework-arduinonordicnrf5\cores\nRF5/avr/pgmspace.h:63:45: note: in definition of macro 'strcpy_P' #define strcpy_P(dest, src) strcpy((dest), (src)) ^~~ C:\users\ikes\.platformio\lib\Time_ID44\DateStrings.cpp:86:28: note: in expansion of macro 'pgm_read_ptr' strcpy_P(buffer, (PGM_P)pgm_read_ptr(&(dayNames_P[day]))); ^~~~~~~~~~~~ *** [.pio\build\nrf52_dk\lib45d\Time_ID44\DateStrings.cpp.o] Error 1 *** [.pio\build\nrf52_dk\src\main.cpp.o] Error 1
Where can the problem come from?
Thanks.
Ikes
-
RE: GUIDE - NRF5 / NRF51 / NRF52 for beginners
@BearWithBeard said in GUIDE - NRF5 / NRF51 / NRF52 for beginners:
I just got my first NRF5 running. I'll note how I got it working in case any of you guys still have troubles:
Setup
- OS: Windows 10
- Programmer: STM32 Blue Pill with the Black Magic Probe firmware
- NRF5: EByte E73-TBB dev board with a E73-2G4M0S1B (NRF52832)
- Environment: PlatformIO
Instructions
Load the Black Magic Probe firmware with
stlink
as the probe host onto Blue Pill. You can follow this guide.Connect your new BMP to the NRF52 module:
BMP NRF52 Serial Port 3V3 3V3 GND GND A5 SWDCLK GDB Server B14 SWDIO GBD Server A2 TX UART A3 RX UART Note: A2 and A3 are not required for programming. This is how you'd wire up the BMP for "classic" serial debugging. You can use the BMP both for programming and serial communication - no need for a second FTDI module.
Using the GNU Arm Embedded Toolchain, run
arm-none-eabi-gdb
in a console and enter the following commands to unlock the NRF52:target extended-remote BMP_GDB_SERVER_PORT mon swdp_scan attach N // N = number of "Nordic nRF52 Access Port" if there are several mon erase_mass detach
From the two serial ports the BMP provides, you want to use the GDB Server for
BMP_GDB_SERVER_PORT
above. If Windows only provides generic names for both ("USB Serial Device" or something), the one with the lower number should (usually) be the right choice. If not, try the other one.Windows users also must prefix the port with
\\.\
if the number is double-digit, e.g.\\.\COM13
.Now you can start uploading sketches the usual way. Here's my minimal PlatformIO config:
[env:nrf52_dk] platform = nordicnrf52 board = nrf52_dk board_build.variant = generic framework = arduino upload_protocol = blackmagic lib_deps = 548 ; MySensors
And a minimal test sketch for MySensors:
#include <Arduino.h> #define LED 17 #define MY_RADIO_RF24 #define MY_RADIO_NRF5_ESB #define MY_NODE_ID 182 #define SKETCH_NAME "NRF52 Test" #define SKETCH_VERSION "0.1" #include <MySensors.h> #define CHILD_ID 1 MyMessage msg(CHILD_ID, V_VAR1); void presentation() { sendSketchInfo(SKETCH_NAME, SKETCH_VERSION); present(CHILD_ID, S_CUSTOM); } void setup() { pinMode(LED, OUTPUT); } void loop() { static uint8_t num; send(msg.set(num)); ++num; digitalWrite(LED, HIGH); wait(5000); digitalWrite(LED, LOW); wait(5000); }
Works like a charm so far! Now, if you please excuse me, I have a whole new microprocessor family to explore. Fun times!
@BearWithBeard just thanks, this method just work fine.
But just need to use the hightest port number of the BMP.